Pre-UAL VFP mnemonics

Where UAL mnemonics use .F32 to specify single-precision data, pre-UAL mnemonics use S appended to the instruction mnemonic. For example, VABS.F32 was FABSS.

Where UAL mnemonics use .F64 to specify double-precision data, pre-UAL mnemonics use D appended to the instruction mnemonic. For example, VCMPE.F64 was FCMPED.

Table 40 shows the pre-UAL mnemonics of those instructions that are affected by VFP vector mode. All other VFP instructions are always scalar regardless of the settings of LEN and STRIDE.

Table 40. Pre-UAL VFP mnemonics

UAL mnemonicEquivalent pre-UAL mnemonic
VABSFABS
VADDFADD
VDIVFDIV
VMLAFMAC
VMLSFNMAC
VMOV (immediate)FCONST [a]
VMOV (register)FCPY
VMULFMUL
VNEGFNEG
VNMLAFNMSC
VNMLSFMSC
VNMULFNMUL
VSQRTFSQRT
VSUBFSUB

[a] The immediate in VMOV (immediate) is the floating-point number you want to load. The immediate in FCONST is the number encoded in the instruction to produce the floating-point number you want to load. See Immediate values in FCONST for details.


Show/hideImmediate values in FCONST

Table 41 shows the floating-point values you can load using FCONST. Trailing zeroes are omitted for clarity. The immediate value you must put in the FCONST instruction is the decimal representation of the binary number abcdefgh, where:

a

is 0 for positive numbers, or 1 for negative numbers

bcd

is shown in the column headings

efgh

is shown in the row headings.

Alternatively, you can use 0x followed by the hexadecimal representation.

Table 41. Floating-point values for use with FCONST

 bcd000001010011100101110111
efgh         
0000 2.04.08.016.00.1250.250.51.0
0001 2.1254.258.517.00.13281250.2656250.531251.0625
0010 2.254.59.018.00.1406250.281250.56251.125
0011 2.3754.759.519.00.14843750.2968750.593751.1875
0100 2.55.010.020.00.156250.31250.6251.25
0101 2.6255.2510.521.00.16406250.3281250.656251.3125
0110 2.755.511.022.00.1718750.343750.68751.375
0111 2.8755.7511.523.00.17968750.3593750.718751.4375
1000 3.06.012.024.00.18750.3750.751.5
1001 3.1256.2512.525.00.19531250.3906250.781251.5625
1010 3.256.513.026.00.2031250.406250.81251.625
1011 3.3756.7513.527.00.21093750.4218750.843751.6875
1100 3.57.014.028.00.218750.43750.8751.75
1101 3.6257.2514.529.00.22656250.4531250.906251.8125
1110 3.757.515.030.00.2343750.468750.93751.875
1111 3.8757.7515.531.00.24218750.4843750.968751.9375

Copyright © 2010-2011 ARM. All rights reserved.ARM DUI 0473C
Non-ConfidentialID080411