Home | History | Annotate | Download | only in ARM
      1 @ RUN: llvm-mc -mcpu=cortex-a8 -triple armv7-apple-darwin -show-encoding < %s | FileCheck %s
      2 
      3         vadd.f64  d16, d17, d16
      4         vadd.f32  s0, s1, s0
      5 @ CHECK: vadd.f64 d16, d17, d16      @ encoding: [0xa0,0x0b,0x71,0xee]
      6 @ CHECK: vadd.f32 s0, s1, s0         @ encoding: [0x80,0x0a,0x30,0xee]
      7 
      8         vsub.f64  d16, d17, d16
      9         vsub.f32  s0, s1, s0
     10 @ CHECK: vsub.f64 d16, d17, d16      @ encoding: [0xe0,0x0b,0x71,0xee]
     11 @ CHECK: vsub.f32 s0, s1, s0         @ encoding: [0xc0,0x0a,0x30,0xee]
     12 
     13         vdiv.f64  d16, d17, d16
     14         vdiv.f32  s0, s1, s0
     15         vdiv.f32 s5, s7
     16         vdiv.f64 d5, d7
     17 
     18 @ CHECK: vdiv.f64 d16, d17, d16         @ encoding: [0xa0,0x0b,0xc1,0xee]
     19 @ CHECK: vdiv.f32 s0, s1, s0            @ encoding: [0x80,0x0a,0x80,0xee]
     20 @ CHECK: vdiv.f32	s5, s5, s7      @ encoding: [0xa3,0x2a,0xc2,0xee]
     21 @ CHECK: vdiv.f64	d5, d5, d7      @ encoding: [0x07,0x5b,0x85,0xee]
     22 
     23 
     24         vmul.f64  d16, d17, d16
     25 	vmul.f64  d20, d17
     26         vmul.f32  s0, s1, s0
     27 	vmul.f32  s11, s21
     28 
     29 
     30 @ CHECK: vmul.f64 d16, d17, d16      @ encoding: [0xa0,0x0b,0x61,0xee]
     31 @ CHECK: vmul.f64 d20, d20, d17      @ encoding: [0xa1,0x4b,0x64,0xee]
     32 @ CHECK: vmul.f32 s0, s1, s0         @ encoding: [0x80,0x0a,0x20,0xee]
     33 @ CHECK: vmul.f32 s11, s11, s21      @ encoding: [0xaa,0x5a,0x65,0xee]
     34 
     35         vnmul.f64       d16, d17, d16
     36         vnmul.f32       s0, s1, s0
     37 
     38 @ CHECK: vnmul.f64 d16, d17, d16     @ encoding: [0xe0,0x0b,0x61,0xee]
     39 @ CHECK: vnmul.f32 s0, s1, s0        @ encoding: [0xc0,0x0a,0x20,0xee]
     40 
     41         vcmpe.f64       d17, d16
     42         vcmpe.f32       s1, s0
     43 
     44 @ CHECK: vcmpe.f64 d17, d16          @ encoding: [0xe0,0x1b,0xf4,0xee]
     45 @ CHECK: vcmpe.f32 s1, s0            @ encoding: [0xc0,0x0a,0xf4,0xee]
     46 
     47         vcmpe.f64       d16, #0
     48         vcmpe.f32       s0, #0
     49 
     50 @ CHECK: vcmpe.f64 d16, #0           @ encoding: [0xc0,0x0b,0xf5,0xee]
     51 @ CHECK: vcmpe.f32 s0, #0            @ encoding: [0xc0,0x0a,0xb5,0xee]
     52 
     53         vabs.f64        d16, d16
     54         vabs.f32        s0, s0
     55 
     56 @ CHECK: vabs.f64 d16, d16           @ encoding: [0xe0,0x0b,0xf0,0xee]
     57 @ CHECK: vabs.f32 s0, s0             @ encoding: [0xc0,0x0a,0xb0,0xee]
     58 
     59         vcvt.f32.f64    s0, d16
     60         vcvt.f64.f32    d16, s0
     61 
     62 @ CHECK: vcvt.f32.f64 s0, d16        @ encoding: [0xe0,0x0b,0xb7,0xee]
     63 @ CHECK: vcvt.f64.f32 d16, s0        @ encoding: [0xc0,0x0a,0xf7,0xee]
     64 
     65         vneg.f64        d16, d16
     66         vneg.f32        s0, s0
     67 
     68 @ CHECK: vneg.f64 d16, d16           @ encoding: [0x60,0x0b,0xf1,0xee]
     69 @ CHECK: vneg.f32 s0, s0             @ encoding: [0x40,0x0a,0xb1,0xee]
     70 
     71         vsqrt.f64       d16, d16
     72         vsqrt.f32       s0, s0
     73 
     74 @ CHECK: vsqrt.f64 d16, d16          @ encoding: [0xe0,0x0b,0xf1,0xee]
     75 @ CHECK: vsqrt.f32 s0, s0            @ encoding: [0xc0,0x0a,0xb1,0xee]
     76 
     77         vcvt.f64.s32    d16, s0
     78         vcvt.f32.s32    s0, s0
     79         vcvt.f64.u32    d16, s0
     80         vcvt.f32.u32    s0, s0
     81         vcvt.s32.f64    s0, d16
     82         vcvt.s32.f32    s0, s0
     83         vcvt.u32.f64    s0, d16
     84         vcvt.u32.f32    s0, s0
     85 
     86 @ CHECK: vcvt.f64.s32 d16, s0        @ encoding: [0xc0,0x0b,0xf8,0xee]
     87 @ CHECK: vcvt.f32.s32 s0, s0         @ encoding: [0xc0,0x0a,0xb8,0xee]
     88 @ CHECK: vcvt.f64.u32 d16, s0        @ encoding: [0x40,0x0b,0xf8,0xee]
     89 @ CHECK: vcvt.f32.u32 s0, s0         @ encoding: [0x40,0x0a,0xb8,0xee]
     90 @ CHECK: vcvt.s32.f64 s0, d16        @ encoding: [0xe0,0x0b,0xbd,0xee]
     91 @ CHECK: vcvt.s32.f32 s0, s0         @ encoding: [0xc0,0x0a,0xbd,0xee]
     92 @ CHECK: vcvt.u32.f64 s0, d16        @ encoding: [0xe0,0x0b,0xbc,0xee]
     93 @ CHECK: vcvt.u32.f32 s0, s0         @ encoding: [0xc0,0x0a,0xbc,0xee]
     94 
     95 
     96         vmla.f64        d16, d18, d17
     97         vmla.f32        s1, s2, s0
     98 
     99 @ CHECK: vmla.f64 d16, d18, d17      @ encoding: [0xa1,0x0b,0x42,0xee]
    100 @ CHECK: vmla.f32 s1, s2, s0         @ encoding: [0x00,0x0a,0x41,0xee]
    101 
    102         vmls.f64        d16, d18, d17
    103         vmls.f32        s1, s2, s0
    104 
    105 @ CHECK: vmls.f64 d16, d18, d17      @ encoding: [0xe1,0x0b,0x42,0xee]
    106 @ CHECK: vmls.f32 s1, s2, s0         @ encoding: [0x40,0x0a,0x41,0xee]
    107 
    108         vnmla.f64       d16, d18, d17
    109         vnmla.f32       s1, s2, s0
    110 
    111 @ CHECK: vnmla.f64 d16, d18, d17     @ encoding: [0xe1,0x0b,0x52,0xee]
    112 @ CHECK: vnmla.f32 s1, s2, s0        @ encoding: [0x40,0x0a,0x51,0xee]
    113 
    114         vnmls.f64       d16, d18, d17
    115         vnmls.f32       s1, s2, s0
    116 
    117 @ CHECK: vnmls.f64 d16, d18, d17     @ encoding: [0xa1,0x0b,0x52,0xee]
    118 @ CHECK: vnmls.f32 s1, s2, s0        @ encoding: [0x00,0x0a,0x51,0xee]
    119 
    120         vmrs    APSR_nzcv, fpscr
    121         vmrs    apsr_nzcv, fpscr
    122         fmstat
    123         vmrs    r2, fpsid
    124         vmrs    r3, FPSID
    125         vmrs    r4, mvfr0
    126         vmrs    r5, MVFR1
    127 
    128 @ CHECK: vmrs APSR_nzcv, fpscr       @ encoding: [0x10,0xfa,0xf1,0xee]
    129 @ CHECK: vmrs APSR_nzcv, fpscr       @ encoding: [0x10,0xfa,0xf1,0xee]
    130 @ CHECK: vmrs APSR_nzcv, fpscr       @ encoding: [0x10,0xfa,0xf1,0xee]
    131 @ CHECK: vmrs r2, fpsid              @ encoding: [0x10,0x2a,0xf0,0xee]
    132 @ CHECK: vmrs r3, fpsid              @ encoding: [0x10,0x3a,0xf0,0xee]
    133 @ CHECK: vmrs r4, mvfr0              @ encoding: [0x10,0x4a,0xf7,0xee]
    134 @ CHECK: vmrs r5, mvfr1              @ encoding: [0x10,0x5a,0xf6,0xee]
    135 
    136 @ CHECK: vnegne.f64 d16, d16         @ encoding: [0x60,0x0b,0xf1,0x1e]
    137         vnegne.f64      d16, d16
    138 
    139 @ CHECK: vmovne s0, r0               @ encoding: [0x10,0x0a,0x00,0x1e]
    140 @ CHECK: vmoveq s0, r1               @ encoding: [0x10,0x1a,0x00,0x0e]
    141         vmovne  s0, r0
    142         vmoveq  s0, r1
    143 
    144         vmov.f32 r1, s2
    145         vmov.f32 s4, r3
    146         vmov.f64 r1, r5, d2
    147         vmov.f64 d4, r3, r9
    148 
    149 @ CHECK: vmov	r1, s2                  @ encoding: [0x10,0x1a,0x11,0xee]
    150 @ CHECK: vmov	s4, r3                  @ encoding: [0x10,0x3a,0x02,0xee]
    151 @ CHECK: vmov	r1, r5, d2              @ encoding: [0x12,0x1b,0x55,0xec]
    152 @ CHECK: vmov	d4, r3, r9              @ encoding: [0x14,0x3b,0x49,0xec]
    153 
    154 @ CHECK: vmrs r0, fpscr              @ encoding: [0x10,0x0a,0xf1,0xee]
    155         vmrs    r0, fpscr
    156 @ CHECK: vmrs  r0, fpexc             @ encoding: [0x10,0x0a,0xf8,0xee]
    157         vmrs  r0, fpexc
    158 @ CHECK: vmrs  r0, fpsid             @ encoding: [0x10,0x0a,0xf0,0xee]
    159         vmrs  r0, fpsid
    160 
    161 @ CHECK: vmsr fpscr, r0              @ encoding: [0x10,0x0a,0xe1,0xee]
    162         vmsr    fpscr, r0
    163 @ CHECK: vmsr  fpexc, r0             @ encoding: [0x10,0x0a,0xe8,0xee]
    164         vmsr  fpexc, r0
    165 @ CHECK: vmsr  fpsid, r0             @ encoding: [0x10,0x0a,0xe0,0xee]
    166         vmsr  fpsid, r0
    167 
    168         vmov.f64        d16, #3.000000e+00
    169         vmov.f32        s0, #3.000000e+00
    170         vmov.f64        d16, #-3.000000e+00
    171         vmov.f32        s0, #-3.000000e+00
    172 
    173 @ CHECK: vmov.f64 d16, #3.000000e+00 @ encoding: [0x08,0x0b,0xf0,0xee]
    174 @ CHECK: vmov.f32 s0, #3.000000e+00  @ encoding: [0x08,0x0a,0xb0,0xee]
    175 @ CHECK: vmov.f64 d16, #-3.000000e+00 @ encoding: [0x08,0x0b,0xf8,0xee]
    176 @ CHECK: vmov.f32 s0, #-3.000000e+00  @ encoding: [0x08,0x0a,0xb8,0xee]
    177 
    178 @ CHECK: vmov s0, r0                 @ encoding: [0x10,0x0a,0x00,0xee]
    179 @ CHECK: vmov s1, r1                 @ encoding: [0x90,0x1a,0x00,0xee]
    180 @ CHECK: vmov s2, r2                 @ encoding: [0x10,0x2a,0x01,0xee]
    181 @ CHECK: vmov s3, r3                 @ encoding: [0x90,0x3a,0x01,0xee]
    182         vmov    s0, r0
    183         vmov    s1, r1
    184         vmov    s2, r2
    185         vmov    s3, r3
    186 
    187 @ CHECK: vmov r0, s0                 @ encoding: [0x10,0x0a,0x10,0xee]
    188 @ CHECK: vmov r1, s1                 @ encoding: [0x90,0x1a,0x10,0xee]
    189 @ CHECK: vmov r2, s2                 @ encoding: [0x10,0x2a,0x11,0xee]
    190 @ CHECK: vmov r3, s3                 @ encoding: [0x90,0x3a,0x11,0xee]
    191         vmov    r0, s0
    192         vmov    r1, s1
    193         vmov    r2, s2
    194         vmov    r3, s3
    195 
    196 @ CHECK: vmov r0, r1, d16            @ encoding: [0x30,0x0b,0x51,0xec]
    197         vmov    r0, r1, d16
    198 
    199 @ Between two single precision registers and two core registers
    200         vmov s3, s4, r1, r2
    201         vmov s2, s3, r1, r2
    202         vmov r1, r2, s3, s4
    203         vmov r1, r2, s2, s3
    204 @ CHECK: vmov s3, s4, r1, r2      @ encoding: [0x31,0x1a,0x42,0xec]
    205 @ CHECK: vmov s2, s3, r1, r2      @ encoding: [0x11,0x1a,0x42,0xec]
    206 @ CHECK: vmov r1, r2, s3, s4      @ encoding: [0x31,0x1a,0x52,0xec]
    207 @ CHECK: vmov r1, r2, s2, s3      @ encoding: [0x11,0x1a,0x52,0xec]
    208 
    209 @ Between one double precision register and two core registers
    210         vmov d15, r1, r2
    211         vmov d16, r1, r2
    212         vmov r1, r2, d15
    213         vmov r1, r2, d16
    214 @ CHECK: vmov d15, r1, r2         @ encoding: [0x1f,0x1b,0x42,0xec]
    215 @ CHECK: vmov d16, r1, r2         @ encoding: [0x30,0x1b,0x42,0xec]
    216 @ CHECK: vmov r1, r2, d15         @ encoding: [0x1f,0x1b,0x52,0xec]
    217 @ CHECK: vmov r1, r2, d16         @ encoding: [0x30,0x1b,0x52,0xec]
    218 
    219 
    220 @ CHECK: vldr d17, [r0]           @ encoding: [0x00,0x1b,0xd0,0xed]
    221 @ CHECK: vldr s0, [lr]            @ encoding: [0x00,0x0a,0x9e,0xed]
    222 @ CHECK: vldr d0, [lr]            @ encoding: [0x00,0x0b,0x9e,0xed]
    223 
    224         vldr.64	d17, [r0]
    225 	vldr.i32 s0, [lr]
    226 	vldr.d d0, [lr]
    227 
    228 @ CHECK: vldr d1, [r2, #32]       @ encoding: [0x08,0x1b,0x92,0xed]
    229 @ CHECK: vldr d1, [r2, #-32]      @ encoding: [0x08,0x1b,0x12,0xed]
    230         vldr.64	d1, [r2, #32]
    231         vldr.f64	d1, [r2, #-32]
    232 
    233 @ CHECK: vldr d2, [r3]            @ encoding: [0x00,0x2b,0x93,0xed]
    234         vldr.64 d2, [r3]
    235 
    236 @ CHECK: vldr d3, [pc]            @ encoding: [0x00,0x3b,0x9f,0xed]
    237 @ CHECK: vldr d3, [pc]            @ encoding: [0x00,0x3b,0x9f,0xed]
    238 @ CHECK: vldr d3, [pc, #-0]            @ encoding: [0x00,0x3b,0x1f,0xed]
    239         vldr.64 d3, [pc]
    240         vldr.64 d3, [pc,#0]
    241         vldr.64 d3, [pc,#-0]
    242 
    243 @ CHECK: vldr s13, [r0]           @ encoding: [0x00,0x6a,0xd0,0xed]
    244         vldr.32	s13, [r0]
    245 
    246 @ CHECK: vldr s1, [r2, #32]       @ encoding: [0x08,0x0a,0xd2,0xed]
    247 @ CHECK: vldr s1, [r2, #-32]      @ encoding: [0x08,0x0a,0x52,0xed]
    248         vldr.32	s1, [r2, #32]
    249         vldr.32	s1, [r2, #-32]
    250 
    251 @ CHECK: vldr s2, [r3]            @ encoding: [0x00,0x1a,0x93,0xed]
    252         vldr.32 s2, [r3]
    253 
    254 @ CHECK: vldr s5, [pc]            @ encoding: [0x00,0x2a,0xdf,0xed]
    255 @ CHECK: vldr s5, [pc]            @ encoding: [0x00,0x2a,0xdf,0xed]
    256 @ CHECK: vldr s5, [pc, #-0]            @ encoding: [0x00,0x2a,0x5f,0xed]
    257         vldr.32 s5, [pc]
    258         vldr.32 s5, [pc,#0]
    259         vldr.32 s5, [pc,#-0]
    260 
    261 @ CHECK: vstr d4, [r1]            @ encoding: [0x00,0x4b,0x81,0xed]
    262 @ CHECK: vstr d4, [r1, #24]       @ encoding: [0x06,0x4b,0x81,0xed]
    263 @ CHECK: vstr d4, [r1, #-24]      @ encoding: [0x06,0x4b,0x01,0xed]
    264 @ CHECK: vstr s0, [lr]            @ encoding: [0x00,0x0a,0x8e,0xed]
    265 @ CHECK: vstr d0, [lr]            @ encoding: [0x00,0x0b,0x8e,0xed]
    266 
    267         vstr.64 d4, [r1]
    268         vstr.64 d4, [r1, #24]
    269         vstr.64 d4, [r1, #-24]
    270 	vstr s0, [lr]
    271 	vstr d0, [lr]
    272 
    273 @ CHECK: vstr s4, [r1]            @ encoding: [0x00,0x2a,0x81,0xed]
    274 @ CHECK: vstr s4, [r1, #24]       @ encoding: [0x06,0x2a,0x81,0xed]
    275 @ CHECK: vstr s4, [r1, #-24]      @ encoding: [0x06,0x2a,0x01,0xed]
    276         vstr.32 s4, [r1]
    277         vstr.32 s4, [r1, #24]
    278         vstr.32 s4, [r1, #-24]
    279 
    280 @ CHECK: vldmia r1, {d2, d3, d4, d5, d6, d7} @ encoding: [0x0c,0x2b,0x91,0xec]
    281 @ CHECK: vldmia r1, {s2, s3, s4, s5, s6, s7} @ encoding: [0x06,0x1a,0x91,0xec]
    282         vldmia  r1, {d2,d3-d6,d7}
    283         vldmia  r1, {s2,s3-s6,s7}
    284 
    285 @ CHECK: vstmia r1, {d2, d3, d4, d5, d6, d7} @ encoding: [0x0c,0x2b,0x81,0xec]
    286 @ CHECK: vstmia	r1, {s2, s3, s4, s5, s6, s7} @ encoding: [0x06,0x1a,0x81,0xec]
    287 @ CHECK: vpush	{d8, d9, d10, d11, d12, d13, d14, d15} @ encoding: [0x10,0x8b,0x2d,0xed]
    288         vstmia  r1, {d2,d3-d6,d7}
    289         vstmia  r1, {s2,s3-s6,s7}
    290         vstmdb sp!, {q4-q7}
    291 
    292 @ CHECK: vcvtr.s32.f64  s0, d0 @ encoding: [0x40,0x0b,0xbd,0xee]
    293 @ CHECK: vcvtr.s32.f32  s0, s1 @ encoding: [0x60,0x0a,0xbd,0xee]
    294 @ CHECK: vcvtr.u32.f64  s0, d0 @ encoding: [0x40,0x0b,0xbc,0xee]
    295 @ CHECK: vcvtr.u32.f32  s0, s1 @ encoding: [0x60,0x0a,0xbc,0xee]
    296         vcvtr.s32.f64  s0, d0
    297         vcvtr.s32.f32  s0, s1
    298         vcvtr.u32.f64  s0, d0
    299         vcvtr.u32.f32  s0, s1
    300 
    301 @ CHECK: vmovne	s25, s26, r2, r5
    302         vmovne	s25, s26, r2, r5        @ encoding: [0x39,0x2a,0x45,0x1c]
    303 
    304 @ VMOV w/ optional data type suffix.
    305 	vmov.32 s1, r8
    306         vmov.s16 s2, r4
    307         vmov.16 s3, r6
    308         vmov.u32 s4, r1
    309         vmov.p8 s5, r2
    310         vmov.8 s6, r3
    311 
    312         vmov.32 r1, s8
    313         vmov.s16 r2, s4
    314         vmov.16 r3, s6
    315         vmov.u32 r4, s1
    316         vmov.p8 r5, s2
    317         vmov.8 r6, s3
    318 
    319 @ CHECK: vmov	s1, r8                  @ encoding: [0x90,0x8a,0x00,0xee]
    320 @ CHECK: vmov	s2, r4                  @ encoding: [0x10,0x4a,0x01,0xee]
    321 @ CHECK: vmov	s3, r6                  @ encoding: [0x90,0x6a,0x01,0xee]
    322 @ CHECK: vmov	s4, r1                  @ encoding: [0x10,0x1a,0x02,0xee]
    323 @ CHECK: vmov	s5, r2                  @ encoding: [0x90,0x2a,0x02,0xee]
    324 @ CHECK: vmov	s6, r3                  @ encoding: [0x10,0x3a,0x03,0xee]
    325 @ CHECK: vmov	r1, s8                  @ encoding: [0x10,0x1a,0x14,0xee]
    326 @ CHECK: vmov	r2, s4                  @ encoding: [0x10,0x2a,0x12,0xee]
    327 @ CHECK: vmov	r3, s6                  @ encoding: [0x10,0x3a,0x13,0xee]
    328 @ CHECK: vmov	r4, s1                  @ encoding: [0x90,0x4a,0x10,0xee]
    329 @ CHECK: vmov	r5, s2                  @ encoding: [0x10,0x5a,0x11,0xee]
    330 @ CHECK: vmov	r6, s3                  @ encoding: [0x90,0x6a,0x11,0xee]
    331 
    332 
    333 @ VCVT (between floating-point and fixed-point)
    334         vcvt.f32.u32 s0, s0, #20
    335         vcvt.f64.s32 d0, d0, #32
    336         vcvt.f32.u16 s0, s0, #1
    337         vcvt.f64.s16 d0, d0, #16
    338         vcvt.f32.s32 s1, s1, #20
    339         vcvt.f64.u32 d20, d20, #32
    340         vcvt.f32.s16 s17, s17, #1
    341         vcvt.f64.u16 d23, d23, #16
    342         vcvt.u32.f32 s12, s12, #20
    343         vcvt.s32.f64 d2, d2, #32
    344         vcvt.u16.f32 s28, s28, #1
    345         vcvt.s16.f64 d15, d15, #16
    346         vcvt.s32.f32 s1, s1, #20
    347         vcvt.u32.f64 d20, d20, #32
    348         vcvt.s16.f32 s17, s17, #1
    349         vcvt.u16.f64 d23, d23, #16
    350 
    351 @ CHECK: vcvt.f32.u32	s0, s0, #20     @ encoding: [0xc6,0x0a,0xbb,0xee]
    352 @ CHECK: vcvt.f64.s32	d0, d0, #32     @ encoding: [0xc0,0x0b,0xba,0xee]
    353 @ CHECK: vcvt.f32.u16	s0, s0, #1      @ encoding: [0x67,0x0a,0xbb,0xee]
    354 @ CHECK: vcvt.f64.s16	d0, d0, #16     @ encoding: [0x40,0x0b,0xba,0xee]
    355 @ CHECK: vcvt.f32.s32	s1, s1, #20     @ encoding: [0xc6,0x0a,0xfa,0xee]
    356 @ CHECK: vcvt.f64.u32	d20, d20, #32   @ encoding: [0xc0,0x4b,0xfb,0xee]
    357 @ CHECK: vcvt.f32.s16	s17, s17, #1    @ encoding: [0x67,0x8a,0xfa,0xee]
    358 @ CHECK: vcvt.f64.u16	d23, d23, #16   @ encoding: [0x40,0x7b,0xfb,0xee]
    359 
    360 @ CHECK: vcvt.u32.f32	s12, s12, #20   @ encoding: [0xc6,0x6a,0xbf,0xee]
    361 @ CHECK: vcvt.s32.f64	d2, d2, #32     @ encoding: [0xc0,0x2b,0xbe,0xee]
    362 @ CHECK: vcvt.u16.f32	s28, s28, #1    @ encoding: [0x67,0xea,0xbf,0xee]
    363 @ CHECK: vcvt.s16.f64	d15, d15, #16   @ encoding: [0x40,0xfb,0xbe,0xee]
    364 @ CHECK: vcvt.s32.f32	s1, s1, #20     @ encoding: [0xc6,0x0a,0xfe,0xee]
    365 @ CHECK: vcvt.u32.f64	d20, d20, #32   @ encoding: [0xc0,0x4b,0xff,0xee]
    366 @ CHECK: vcvt.s16.f32	s17, s17, #1    @ encoding: [0x67,0x8a,0xfe,0xee]
    367 @ CHECK: vcvt.u16.f64	d23, d23, #16   @ encoding: [0x40,0x7b,0xff,0xee]
    368 
    369 
    370 @ Use NEON to load some f32 immediates that don't fit the f8 representation.
    371         vmov.f32 d4, #0.0
    372         vmov.f32 d4, #32.0
    373 
    374 @ CHECK: vmov.i32	d4, #0x0        @ encoding: [0x10,0x40,0x80,0xf2]
    375 @ CHECK: vmov.i32	d4, #0x42000000 @ encoding: [0x12,0x46,0x84,0xf2]
    376