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

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

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

Assembler syntax<br />

VRECPE. , Encoded as Q = 1<br />

VRECPE. , Encoded as Q = 0<br />

where:<br />

Instruction Details<br />

See St<strong>and</strong>ard assembler syntax fields on page A8-7. An <strong>ARM</strong> VRECPE instruction must be<br />

unconditional.<br />

The data types for the elements of the vectors. It must be one of:<br />

U32 encoded as F = 0, size = 0b10<br />

F32 encoded as F = 1, size = 0b10.<br />

, The destination vector <strong>and</strong> the oper<strong>and</strong> vector, for a quadword operation.<br />

, The destination vector <strong>and</strong> the oper<strong>and</strong> vector, for a doubleword operation.<br />

Operation<br />

if ConditionPassed() then<br />

EncodingSpecificOperations(); CheckAdvSIMDEnabled();<br />

for r = 0 to regs-1<br />

for e = 0 to elements-1<br />

if floating_point then<br />

Elem[D[d+r],e,esize] = FPRecipEstimate(Elem[D[m+r],e,esize]);<br />

else<br />

Elem[D[d+r],e,esize] = UnsignedRecipEstimate(Elem[D[m+r],e,esize]);<br />

Exceptions<br />

Undefined Instruction.<br />

Floating-point exceptions: Input Denormal, Invalid Operation, Underflow, <strong>and</strong> Division by Zero.<br />

Newton-Raphson iteration<br />

For details of the operation performed <strong>and</strong> how it can be used in a Newton-Raphson iteration to calculate<br />

the reciprocal of a number, see Reciprocal estimate <strong>and</strong> step on page A2-58.<br />

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

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

Saved successfully!

Ooh no, something went wrong!