Page 316 - ARM 64 Bit Assembly Language
P. 316
Floating point 305
Name Effect Description
fcvt Dd ← double(Hn) Convert half precision number in Hn
to double precision and store in Dd.
fcvt Hd ← half (Sn) Convert single precision number in Sn
to half precision and store in Hd.
fcvt Dd ← double(Sn) Convert single precision number in Sn
to double precision and store in Dd.
fcvt Hd ← half (Dn) Convert double precision number in
Dn to half precision and store in Hd.
fcvt Sd ← single(Dn) Convert double precision number in
Dn to single precision and store in Sd.
9.6.1.3 Examples
1 fcvt s0,d0 // Convert from half precision to single precision
2 fcvt d1,s1 // Convert from single to half precision
9.6.2 Convert between floating point and integer
These instructions are used to convert integers to single or double precision floating point, or
for converting single or double precision to integer:
fcvtas Convert Float to Signed Integer, Round Away From Zero.
fcvtau Convert Float to Unsigned Integer, Round Away From Zero.
fcvtms Convert Float to Signed Integer, Round Towards −∞.
fcvtmu Convert Float to Unsigned Integer, Round Towards −∞.
fcvtns Convert Float to Signed Integer, Round To Even
fcvtnu Convert Float to Unsigned Integer, Round To Even.
fcvtps Convert Float to Signed Integer, Round Towards +∞.
fcvtpu Convert Float to Unsigned Integer, Round Towards +∞.
fcvtzs Convert Float to Signed Integer, Round Towards Zero.
fcvtzu Convert Float to Unsigned Integer, Round Towards Zero.
scvtf Convert Signed Integer to Float Using FPCR Rounding Mode.
ucvtf Convert Unsigned Integer to Float Using FPCR rounding mode.
9.6.2.1 Syntax
fcvt<mode><u|s> Rd, Fn
<u|s>cvtf Fd, Rn