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

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

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

Floating Negative Multiply-Add [Single]<br />

A-form<br />

fnmadd FRT,FRA,FRC,FRB (Rc=0)<br />

fnmadd. FRT,FRA,FRC,FRB (Rc=1)<br />

63 FRT FRA FRB FRC 31 Rc<br />

0 6 11 16 21 26 31<br />

fnmadds FRT,FRA,FRC,FRB (Rc=0)<br />

fnmadds. FRT,FRA,FRC,FRB (Rc=1)<br />

59 FRT FRA FRB FRC 31 Rc<br />

0 6 11 16 21 26 31<br />

The operation<br />

FRT - ( [(FRA)×(FRC)] + (FRB) )<br />

is performed.<br />

The floating-point operand in register FRA is multiplied<br />

by the floating-point operand in register FRC. The<br />

floating-point operand in register FRB is added to this<br />

intermediate result.<br />

If the most significant bit of the resultant significand is<br />

not 1, the result is normalized. The result is rounded to<br />

the target precision under control of the Floating-Point<br />

Rounding Control field RN of the FPSCR, then negated<br />

and placed into register FRT.<br />

This instruction produces the same result as would be<br />

obtained by using the Floating Multiply-Add instruction<br />

and then negating the result, with the following exceptions.<br />

QNaNs propagate with no effect on their “sign” bit.<br />

QNaNs that are generated as the result of a disabled<br />

Invalid Operation Exception have a “sign” bit<br />

of 0.<br />

SNaNs that are converted to QNaNs as the result<br />

of a disabled Invalid Operation Exception retain<br />

the “sign” bit of the SNaN.<br />

FPSCR FPRF is set to the class and sign of the result,<br />

except for Invalid Operation Exceptions when<br />

FPSCR VE =1.<br />

Special Registers Altered:<br />

FPRF FR FI<br />

FX OX UX XX<br />

VXSNAN VXISI VXIMZ<br />

CR1<br />

(if Rc=1)<br />

Floating Negative Multiply-Subtract<br />

[Single]<br />

A-form<br />

fnmsub FRT,FRA,FRC,FRB (Rc=0)<br />

fnmsub. FRT,FRA,FRC,FRB (Rc=1)<br />

63 FRT FRA FRB FRC 30 Rc<br />

0 6 11 16 21 26 31<br />

fnmsubs FRT,FRA,FRC,FRB (Rc=0)<br />

fnmsubs. FRT,FRA,FRC,FRB (Rc=1)<br />

59 FRT FRA FRB FRC 30 Rc<br />

0 6 11 16 21 26 31<br />

The operation<br />

FRT - ( [(FRA)×(FRC)] - (FRB) )<br />

is performed.<br />

The floating-point operand in register FRA is multiplied<br />

by the floating-point operand in register FRC. The<br />

floating-point operand in register FRB is subtracted<br />

from this intermediate result.<br />

If the most significant bit of the resultant significand is<br />

not 1, the result is normalized. The result is rounded to<br />

the target precision under control of the Floating-Point<br />

Rounding Control field RN of the FPSCR, then negated<br />

and placed into register FRT.<br />

This instruction produces the same result as would be<br />

obtained by using the Floating Multiply-Subtract<br />

instruction and then negating the result, with the following<br />

exceptions.<br />

QNaNs propagate with no effect on their “sign” bit.<br />

QNaNs that are generated as the result of a disabled<br />

Invalid Operation Exception have a “sign” bit<br />

of 0.<br />

SNaNs that are converted to QNaNs as the result<br />

of a disabled Invalid Operation Exception retain<br />

the “sign” bit of the SNaN.<br />

FPSCR FPRF is set to the class and sign of the result,<br />

except for Invalid Operation Exceptions when<br />

FPSCR VE =1.<br />

Special Registers Altered:<br />

FPRF FR FI<br />

FX OX UX XX<br />

VXSNAN VXISI VXIMZ<br />

CR1<br />

(if Rc=1)<br />

Chapter 4. Floating-Point Processor [Category: Floating-Point]<br />

119

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

Saved successfully!

Ooh no, something went wrong!