13.07.2015 Views

Cortex-A8 R2P2.pdf - ARM Information Center

Cortex-A8 R2P2.pdf - ARM Information Center

Cortex-A8 R2P2.pdf - ARM Information Center

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.

NEON and VFP Programmer’s ModelAny SNaN passed as input to an operation causes an Invalid Operation exception andsets the IOC flag, FPSCR[0], to 1. A default QNaN is written to the destination register.The rules for cases involving multiple NaN operands are in the <strong>ARM</strong> ArchitectureReference Manual.Processing of input NaNs for <strong>ARM</strong> floating-point coprocessors and libraries is definedas follows:• In full-compliance mode, NaNs are handled according to the <strong>ARM</strong> ArchitectureReference Manual. The hardware processes the NaNs directly for arithmetic CDPinstructions. For data transfer operations, NaNs are transferred without raising theInvalid Operation exception. For the non-arithmetic CDP instructions, FABS, FNEG,and FCPY, NaNs are copied, with a change of sign if specified in the instructions,without causing the Invalid Operation exception.• In default NaN mode, NaNs are handled completely within the hardware. SNaNsin an arithmetic CDP operation set the IOC flag, FPSCR[0], to 1. NaN handlingby data transfer and non-arithmetic CDP instructions is the same as infull-compliance mode. Arithmetic CDP instructions involving NaN operandsreturn the default NaN regardless of the fractions of any NaN operands.Table 13-14 summarizes the effects of NaN operands on instruction execution.Table 13-14 QNaN and SNaN handlingInstructiontypeDefaultNaNmode With QNaN operand With SNaN operandArithmetic CDPOffThe QNaN or one of the QNaN operands, ifthere is more than one, is returnedaccording to the rules given in the <strong>ARM</strong>Architecture Reference Manual.IOC a set to 1. The SNaN is quieted and theresult NaN is determined by the rules givenin the <strong>ARM</strong> Architecture ReferenceManual.On Default NaN returns. IOC b set to 1. Default NaN returns.Non-arithmeticCDPOffOnNaN passes to destination with sign changed as appropriate.FCMP(Z) - Unordered compare. IOC set to 1. Unordered compare.FCMPE(Z) - IOC set to 1. Unordered compare. IOC set to 1. Unordered compare.Load/storeOffOnAll NaNs transferred.a. IOC is the Invalid Operation exception flag, FPSCR[0].13-24 Copyright © 2006-2008 <strong>ARM</strong> Limited. All rights reserved. <strong>ARM</strong> DDI 0344E

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

Saved successfully!

Ooh no, something went wrong!