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.

Instruction Details<br />

A8.6.299 VCVT (between half-precision <strong>and</strong> single-precision, Advanced SIMD)<br />

This instruction converts each element in a vector from single-precision to half-precision floating-point or<br />

from half-precision to single-precision, <strong>and</strong> places the results in a second vector.<br />

The vector elements must be 32-bit floating-point numbers, or 16-bit floating-point numbers.<br />

Encoding T1 / A1 Advanced SIMD with half-precision extensions (UNDEFINED in integer-only variant)<br />

VCVT.F32.F16 , <br />

VCVT.F16.F32 , <br />

15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0<br />

1 1 1 1 1 1 1 1 1 D 1 1 size 1 0 Vd 0 1 1 op 0 0 M 0 Vm<br />

31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0<br />

1 1 1 1 0 0 1 1 1 D 1 1 size 1 0 Vd 0 1 1 op 0 0 M 0 Vm<br />

half_to_single = (op == ‘1’);<br />

if size != ‘01’ then UNDEFINED;<br />

if half_to_single && Vd == ‘1’ then UNDEFINED;<br />

if !half_to_single && Vm == ‘1’ then UNDEFINED;<br />

esize = 16; elements = 4;<br />

m = UInt(M:Vm); d = UInt(D:Vd);<br />

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

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

Saved successfully!

Ooh no, something went wrong!