14.06.2015 Views

Power ISA™ Version 2.03 - Power.org

Power ISA™ Version 2.03 - Power.org

Power ISA™ Version 2.03 - Power.org

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>Version</strong> <strong>2.03</strong><br />

Floating-Point Double-Precision Compare<br />

Greater Than<br />

EVX-Form<br />

Floating-Point Double-Precision Compare<br />

Less Than<br />

EVX-Form<br />

efdcmpgt<br />

BF,RA,RB<br />

efdcmplt<br />

BF,RA,RB<br />

4 BF // RA RB 748<br />

0 6 9 11 16 21 31<br />

4 BF // RA RB 749<br />

0 6 9 11 16 21 31<br />

al (RA) 0:63<br />

bl (RB) 0:63<br />

if (al > bl) then cl 1<br />

else cl 0<br />

CR 4×BF:4×BF+3 undefined || cl || undefined || undefined<br />

RA is compared against RB. If RA is greater than RB,<br />

bit 1 of CR field BF is set to 1, otherwise it is set to 0.<br />

Bits 0, 2, and 3 of CR field BF are undefined. Comparison<br />

ignores the sign of 0 (+0 = -0).<br />

If an input error occurs and default results are generated,<br />

NaNs, Infinities, and Denorms are treated as normalized<br />

numbers, using their values of ‘e’ and ‘f’<br />

directly.<br />

Special Registers Altered:<br />

FINV FINVS<br />

FG FX<br />

CR field BF<br />

al 1 (RA) 0:63<br />

bl 1 (RB) 0:63<br />

if (al < bl) then cl 1 1<br />

else cl 1 0<br />

CR 4×BF:4×BF+3 1 undefined || cl || undefined || undefined<br />

RA is compared against RB. If RA is less than RB, bit 1<br />

of CR field BF is set to 1, otherwise it is set to 0. Bits 0,<br />

2, and 3 of CR field BF are undefined. Comparison<br />

ignores the sign of 0 (+0 = -0).<br />

If an input error occurs and default results are generated,<br />

NaNs, Infinities, and Denorms are treated as normalized<br />

numbers, using their values of ‘e’ and ‘f’<br />

directly.<br />

Special Registers Altered:<br />

FINV FINVS<br />

FG FX<br />

CR field BF<br />

Floating-Point Double-Precision Compare<br />

Equal<br />

EVX-Form<br />

Floating-Point Double-Precision Test<br />

Greater Than<br />

EVX-Form<br />

efdcmpeq<br />

BF,RA,RB<br />

efdtstgt<br />

BF,RA,RB<br />

4 BF // RA RB 750<br />

0 6 9 11 16 21 31<br />

4 BF // RA RB 764<br />

0 6 9 11 16 21 31<br />

al 1 (RA) 0:63<br />

bl 1 (RB) 0:63<br />

if (al = bl) then cl 1 1<br />

else cl 1 0<br />

CR 4×BF:4×BF+3 1 undefined || cl || undefined || undefined<br />

RA is compared against RB. If RA is equal to RB, bit 1<br />

of CR field BF is set to 1, otherwise it is set to 0. Bits 0,<br />

2, and 3 of CR field BF are undefined. Comparison<br />

ignores the sign of 0 (+0 = -0).<br />

If an input error occurs and default results are generated,<br />

NaNs, Infinities, and Denorms are treated as normalized<br />

numbers, using their values of ‘e’ and ‘f’<br />

directly.<br />

Special Registers Altered:<br />

FINV FINVS<br />

FG FX<br />

CR field BF<br />

al 1 (RA) 0:63<br />

bl 1 (RB) 0:63<br />

if (al > bl) then cl 1 1<br />

else cl 1 0<br />

CR 4×BF:4×BF+3 1 undefined || cl || undefined || undefined<br />

RA is compared against RB. If RA is greater than RB,<br />

bit 1 of CR field BF is set to 1, otherwise it is set to 0.<br />

Bits 0, 2, and 3 of CR field BF are undefined. Comparison<br />

ignores the sign of 0 (+0 = -0). The comparison<br />

proceeds after treating NaNs, Infinities, and Denorms<br />

as normalized numbers, using their values of ‘e’ and ‘f’<br />

directly.<br />

No exceptions are generated during the execution of<br />

efdtstgt.<br />

Special Registers Altered:<br />

CR field BF<br />

Programming Note<br />

In an implementation, the execution of efdtstgt is<br />

likely to be faster than the execution of efdcmpgt;<br />

however, if strict IEEE 754 compliance is required,<br />

the program should use efdcmpgt.<br />

270<br />

<strong>Power</strong> ISA -- Book I

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!