05.02.2013 Views

ARM Architecture Reference Manual ARMv7-A and ARMv7-R edition

ARM Architecture Reference Manual ARMv7-A and ARMv7-R edition

ARM Architecture Reference Manual ARMv7-A and ARMv7-R edition

SHOW MORE
SHOW LESS

Create successful ePaper yourself

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

FPInfinity()<br />

// ============<br />

Application Level Programmers’ Model<br />

bits(N) FPInfinity(bit sign, integer N)<br />

assert N == 16 || N == 32 || N == 64;<br />

if N == 16 then<br />

return sign : ‘11111 0000000000’;<br />

elsif N == 32 then<br />

return sign : ‘11111111 00000000000000000000000’;<br />

else<br />

return sign : ‘11111111111 0000000000000000000000000000000000000000000000000000’;<br />

// FPDefaultNaN()<br />

// ==============<br />

bits(N) FPDefaultNaN(integer N)<br />

assert N == 16 || N == 32 || N == 64;<br />

if N == 16 then<br />

return ‘0 11111 1000000000’;<br />

elsif N == 32 then<br />

return ‘0 11111111 10000000000000000000000’;<br />

else<br />

return ‘0 11111111111 1000000000000000000000000000000000000000000000000000’;<br />

Note<br />

This definition of FPDefaultNaN() applies to VFPv3 <strong>and</strong> VFPv3U. For VFPv2, the sign bit of the result is a<br />

single-bit UNKNOWN value, instead of 0.<br />

Negation <strong>and</strong> absolute value<br />

The floating-point negation <strong>and</strong> absolute value operations only affect the sign bit. They do not treat NaN<br />

oper<strong>and</strong>s specially, nor denormalized number oper<strong>and</strong>s when flush-to-zero is selected.<br />

// FPNeg()<br />

// =======<br />

bits(N) FPNeg(bits(N) oper<strong>and</strong>)<br />

assert N == 32 || N == 64;<br />

return NOT(oper<strong>and</strong>) : oper<strong>and</strong>;<br />

// FPAbs()<br />

// =======<br />

bits(N) FPAbs(bits(N) oper<strong>and</strong>)<br />

assert N == 32 || N == 64;<br />

return ‘0’ : oper<strong>and</strong>;<br />

<strong>ARM</strong> DDI 0406B Copyright © 1996-1998, 2000, 2004-2008 <strong>ARM</strong> Limited. All rights reserved. A2-47

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

Saved successfully!

Ooh no, something went wrong!