1933b314c761f3338ebc59aa089983681274054bdBill Wendling@ RUN: llvm-mc -mcpu=cortex-a8 -triple armv7-apple-darwin -show-encoding < %s | FileCheck %s
252925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling
3bfb3c5a50c0c01073658ec9d3504532c6eeb2115Jim Grosbach        vadd.f64  d16, d17, d16
4bfb3c5a50c0c01073658ec9d3504532c6eeb2115Jim Grosbach        vadd.f32  s0, s1, s0
5933b314c761f3338ebc59aa089983681274054bdBill Wendling@ CHECK: vadd.f64 d16, d17, d16      @ encoding: [0xa0,0x0b,0x71,0xee]
6933b314c761f3338ebc59aa089983681274054bdBill Wendling@ CHECK: vadd.f32 s0, s1, s0         @ encoding: [0x80,0x0a,0x30,0xee]
752925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling
8bfb3c5a50c0c01073658ec9d3504532c6eeb2115Jim Grosbach        vsub.f64  d16, d17, d16
9bfb3c5a50c0c01073658ec9d3504532c6eeb2115Jim Grosbach        vsub.f32  s0, s1, s0
10933b314c761f3338ebc59aa089983681274054bdBill Wendling@ CHECK: vsub.f64 d16, d17, d16      @ encoding: [0xe0,0x0b,0x71,0xee]
11933b314c761f3338ebc59aa089983681274054bdBill Wendling@ CHECK: vsub.f32 s0, s1, s0         @ encoding: [0xc0,0x0a,0x30,0xee]
1252925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling
13bfb3c5a50c0c01073658ec9d3504532c6eeb2115Jim Grosbach        vdiv.f64  d16, d17, d16
14bfb3c5a50c0c01073658ec9d3504532c6eeb2115Jim Grosbach        vdiv.f32  s0, s1, s0
15181b14797518e714e1b6112db849ca53192b8f23Jim Grosbach        vdiv.f32 s5, s7
16181b14797518e714e1b6112db849ca53192b8f23Jim Grosbach        vdiv.f64 d5, d7
17181b14797518e714e1b6112db849ca53192b8f23Jim Grosbach
18181b14797518e714e1b6112db849ca53192b8f23Jim Grosbach@ CHECK: vdiv.f64 d16, d17, d16         @ encoding: [0xa0,0x0b,0xc1,0xee]
19181b14797518e714e1b6112db849ca53192b8f23Jim Grosbach@ CHECK: vdiv.f32 s0, s1, s0            @ encoding: [0x80,0x0a,0x80,0xee]
20181b14797518e714e1b6112db849ca53192b8f23Jim Grosbach@ CHECK: vdiv.f32	s5, s5, s7      @ encoding: [0xa3,0x2a,0xc2,0xee]
21181b14797518e714e1b6112db849ca53192b8f23Jim Grosbach@ CHECK: vdiv.f64	d5, d5, d7      @ encoding: [0x07,0x5b,0x85,0xee]
2252925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling
2352925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling
24bfb3c5a50c0c01073658ec9d3504532c6eeb2115Jim Grosbach        vmul.f64  d16, d17, d16
25bfb0a1717bb140c418e070042e852f925e92de01Jim Grosbach	vmul.f64  d20, d17
26bfb3c5a50c0c01073658ec9d3504532c6eeb2115Jim Grosbach        vmul.f32  s0, s1, s0
27bfb3c5a50c0c01073658ec9d3504532c6eeb2115Jim Grosbach	vmul.f32  s11, s21
28bfb0a1717bb140c418e070042e852f925e92de01Jim Grosbach
2952925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling
30bfb3c5a50c0c01073658ec9d3504532c6eeb2115Jim Grosbach@ CHECK: vmul.f64 d16, d17, d16      @ encoding: [0xa0,0x0b,0x61,0xee]
31bfb3c5a50c0c01073658ec9d3504532c6eeb2115Jim Grosbach@ CHECK: vmul.f64 d20, d20, d17      @ encoding: [0xa1,0x4b,0x64,0xee]
32bfb3c5a50c0c01073658ec9d3504532c6eeb2115Jim Grosbach@ CHECK: vmul.f32 s0, s1, s0         @ encoding: [0x80,0x0a,0x20,0xee]
33bfb3c5a50c0c01073658ec9d3504532c6eeb2115Jim Grosbach@ CHECK: vmul.f32 s11, s11, s21      @ encoding: [0xaa,0x5a,0x65,0xee]
34bfb0a1717bb140c418e070042e852f925e92de01Jim Grosbach
3552925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling        vnmul.f64       d16, d17, d16
36bfb3c5a50c0c01073658ec9d3504532c6eeb2115Jim Grosbach        vnmul.f32       s0, s1, s0
3752925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling
38bfb3c5a50c0c01073658ec9d3504532c6eeb2115Jim Grosbach@ CHECK: vnmul.f64 d16, d17, d16     @ encoding: [0xe0,0x0b,0x61,0xee]
39933b314c761f3338ebc59aa089983681274054bdBill Wendling@ CHECK: vnmul.f32 s0, s1, s0        @ encoding: [0xc0,0x0a,0x20,0xee]
4052925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling
4152925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling        vcmpe.f64       d17, d16
42bfb3c5a50c0c01073658ec9d3504532c6eeb2115Jim Grosbach        vcmpe.f32       s1, s0
4352925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling
44bfb3c5a50c0c01073658ec9d3504532c6eeb2115Jim Grosbach@ CHECK: vcmpe.f64 d17, d16          @ encoding: [0xe0,0x1b,0xf4,0xee]
45933b314c761f3338ebc59aa089983681274054bdBill Wendling@ CHECK: vcmpe.f32 s1, s0            @ encoding: [0xc0,0x0a,0xf4,0xee]
4652925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling
4768259145d9ac1f8d4e2cc9fc73626254fcc5cf08Jim Grosbach        vcmpe.f64       d16, #0
48bfb3c5a50c0c01073658ec9d3504532c6eeb2115Jim Grosbach        vcmpe.f32       s0, #0
4952925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling
50bfb3c5a50c0c01073658ec9d3504532c6eeb2115Jim Grosbach@ CHECK: vcmpe.f64 d16, #0           @ encoding: [0xc0,0x0b,0xf5,0xee]
5168259145d9ac1f8d4e2cc9fc73626254fcc5cf08Jim Grosbach@ CHECK: vcmpe.f32 s0, #0            @ encoding: [0xc0,0x0a,0xb5,0xee]
5252925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling
5352925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling        vabs.f64        d16, d16
54bfb3c5a50c0c01073658ec9d3504532c6eeb2115Jim Grosbach        vabs.f32        s0, s0
5552925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling
56bfb3c5a50c0c01073658ec9d3504532c6eeb2115Jim Grosbach@ CHECK: vabs.f64 d16, d16           @ encoding: [0xe0,0x0b,0xf0,0xee]
57933b314c761f3338ebc59aa089983681274054bdBill Wendling@ CHECK: vabs.f32 s0, s0             @ encoding: [0xc0,0x0a,0xb0,0xee]
580da10cf44d0f22111dae728bb535ade2283d976bOwen Anderson
5952925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling        vcvt.f32.f64    s0, d16
60bfb3c5a50c0c01073658ec9d3504532c6eeb2115Jim Grosbach        vcvt.f64.f32    d16, s0
6152925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling
62bfb3c5a50c0c01073658ec9d3504532c6eeb2115Jim Grosbach@ CHECK: vcvt.f32.f64 s0, d16        @ encoding: [0xe0,0x0b,0xb7,0xee]
63933b314c761f3338ebc59aa089983681274054bdBill Wendling@ CHECK: vcvt.f64.f32 d16, s0        @ encoding: [0xc0,0x0a,0xf7,0xee]
6452925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling
6552925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling        vneg.f64        d16, d16
66bfb3c5a50c0c01073658ec9d3504532c6eeb2115Jim Grosbach        vneg.f32        s0, s0
6752925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling
68bfb3c5a50c0c01073658ec9d3504532c6eeb2115Jim Grosbach@ CHECK: vneg.f64 d16, d16           @ encoding: [0x60,0x0b,0xf1,0xee]
69933b314c761f3338ebc59aa089983681274054bdBill Wendling@ CHECK: vneg.f32 s0, s0             @ encoding: [0x40,0x0a,0xb1,0xee]
7052925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling
7152925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling        vsqrt.f64       d16, d16
72bfb3c5a50c0c01073658ec9d3504532c6eeb2115Jim Grosbach        vsqrt.f32       s0, s0
7352925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling
74bfb3c5a50c0c01073658ec9d3504532c6eeb2115Jim Grosbach@ CHECK: vsqrt.f64 d16, d16          @ encoding: [0xe0,0x0b,0xf1,0xee]
75933b314c761f3338ebc59aa089983681274054bdBill Wendling@ CHECK: vsqrt.f32 s0, s0            @ encoding: [0xc0,0x0a,0xb1,0xee]
7652925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling
7752925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling        vcvt.f64.s32    d16, s0
7852925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling        vcvt.f32.s32    s0, s0
7952925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling        vcvt.f64.u32    d16, s0
8052925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling        vcvt.f32.u32    s0, s0
8152925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling        vcvt.s32.f64    s0, d16
8252925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling        vcvt.s32.f32    s0, s0
8352925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling        vcvt.u32.f64    s0, d16
84bfb3c5a50c0c01073658ec9d3504532c6eeb2115Jim Grosbach        vcvt.u32.f32    s0, s0
8552925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling
86bfb3c5a50c0c01073658ec9d3504532c6eeb2115Jim Grosbach@ CHECK: vcvt.f64.s32 d16, s0        @ encoding: [0xc0,0x0b,0xf8,0xee]
87bfb3c5a50c0c01073658ec9d3504532c6eeb2115Jim Grosbach@ CHECK: vcvt.f32.s32 s0, s0         @ encoding: [0xc0,0x0a,0xb8,0xee]
88bfb3c5a50c0c01073658ec9d3504532c6eeb2115Jim Grosbach@ CHECK: vcvt.f64.u32 d16, s0        @ encoding: [0x40,0x0b,0xf8,0xee]
89bfb3c5a50c0c01073658ec9d3504532c6eeb2115Jim Grosbach@ CHECK: vcvt.f32.u32 s0, s0         @ encoding: [0x40,0x0a,0xb8,0xee]
90bfb3c5a50c0c01073658ec9d3504532c6eeb2115Jim Grosbach@ CHECK: vcvt.s32.f64 s0, d16        @ encoding: [0xe0,0x0b,0xbd,0xee]
91bfb3c5a50c0c01073658ec9d3504532c6eeb2115Jim Grosbach@ CHECK: vcvt.s32.f32 s0, s0         @ encoding: [0xc0,0x0a,0xbd,0xee]
92bfb3c5a50c0c01073658ec9d3504532c6eeb2115Jim Grosbach@ CHECK: vcvt.u32.f64 s0, d16        @ encoding: [0xe0,0x0b,0xbc,0xee]
93933b314c761f3338ebc59aa089983681274054bdBill Wendling@ CHECK: vcvt.u32.f32 s0, s0         @ encoding: [0xc0,0x0a,0xbc,0xee]
9452925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling
95bfb3c5a50c0c01073658ec9d3504532c6eeb2115Jim Grosbach
9652925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling        vmla.f64        d16, d18, d17
97bfb3c5a50c0c01073658ec9d3504532c6eeb2115Jim Grosbach        vmla.f32        s1, s2, s0
9852925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling
99bfb3c5a50c0c01073658ec9d3504532c6eeb2115Jim Grosbach@ CHECK: vmla.f64 d16, d18, d17      @ encoding: [0xa1,0x0b,0x42,0xee]
100933b314c761f3338ebc59aa089983681274054bdBill Wendling@ CHECK: vmla.f32 s1, s2, s0         @ encoding: [0x00,0x0a,0x41,0xee]
10152925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling
10252925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling        vmls.f64        d16, d18, d17
103bfb3c5a50c0c01073658ec9d3504532c6eeb2115Jim Grosbach        vmls.f32        s1, s2, s0
10452925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling
105bfb3c5a50c0c01073658ec9d3504532c6eeb2115Jim Grosbach@ CHECK: vmls.f64 d16, d18, d17      @ encoding: [0xe1,0x0b,0x42,0xee]
106933b314c761f3338ebc59aa089983681274054bdBill Wendling@ CHECK: vmls.f32 s1, s2, s0         @ encoding: [0x40,0x0a,0x41,0xee]
10752925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling
10852925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling        vnmla.f64       d16, d18, d17
109bfb3c5a50c0c01073658ec9d3504532c6eeb2115Jim Grosbach        vnmla.f32       s1, s2, s0
11052925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling
111bfb3c5a50c0c01073658ec9d3504532c6eeb2115Jim Grosbach@ CHECK: vnmla.f64 d16, d18, d17     @ encoding: [0xe1,0x0b,0x52,0xee]
112933b314c761f3338ebc59aa089983681274054bdBill Wendling@ CHECK: vnmla.f32 s1, s2, s0        @ encoding: [0x40,0x0a,0x51,0xee]
11352925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling
11452925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling        vnmls.f64       d16, d18, d17
115bfb3c5a50c0c01073658ec9d3504532c6eeb2115Jim Grosbach        vnmls.f32       s1, s2, s0
11652925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling
117bfb3c5a50c0c01073658ec9d3504532c6eeb2115Jim Grosbach@ CHECK: vnmls.f64 d16, d18, d17     @ encoding: [0xa1,0x0b,0x52,0xee]
118933b314c761f3338ebc59aa089983681274054bdBill Wendling@ CHECK: vnmls.f32 s1, s2, s0        @ encoding: [0x00,0x0a,0x51,0xee]
11952925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling
120b84ad4aa7dacfba5337520740d47770f2200201cJim Grosbach        vmrs    APSR_nzcv, fpscr
1215cd5ac6ad455880395e34ac647f1e962a83763a0Jim Grosbach        vmrs    apsr_nzcv, fpscr
1225cd5ac6ad455880395e34ac647f1e962a83763a0Jim Grosbach        fmstat
1239426ac7b575de9e1297a01f27307d858343ac4edJim Grosbach        vmrs    r2, fpsid
1249426ac7b575de9e1297a01f27307d858343ac4edJim Grosbach        vmrs    r3, FPSID
1259426ac7b575de9e1297a01f27307d858343ac4edJim Grosbach        vmrs    r4, mvfr0
1269426ac7b575de9e1297a01f27307d858343ac4edJim Grosbach        vmrs    r5, MVFR1
1279426ac7b575de9e1297a01f27307d858343ac4edJim Grosbach
1289426ac7b575de9e1297a01f27307d858343ac4edJim Grosbach@ CHECK: vmrs APSR_nzcv, fpscr       @ encoding: [0x10,0xfa,0xf1,0xee]
1299426ac7b575de9e1297a01f27307d858343ac4edJim Grosbach@ CHECK: vmrs APSR_nzcv, fpscr       @ encoding: [0x10,0xfa,0xf1,0xee]
1309426ac7b575de9e1297a01f27307d858343ac4edJim Grosbach@ CHECK: vmrs APSR_nzcv, fpscr       @ encoding: [0x10,0xfa,0xf1,0xee]
1319426ac7b575de9e1297a01f27307d858343ac4edJim Grosbach@ CHECK: vmrs r2, fpsid              @ encoding: [0x10,0x2a,0xf0,0xee]
1329426ac7b575de9e1297a01f27307d858343ac4edJim Grosbach@ CHECK: vmrs r3, fpsid              @ encoding: [0x10,0x3a,0xf0,0xee]
1339426ac7b575de9e1297a01f27307d858343ac4edJim Grosbach@ CHECK: vmrs r4, mvfr0              @ encoding: [0x10,0x4a,0xf7,0xee]
1349426ac7b575de9e1297a01f27307d858343ac4edJim Grosbach@ CHECK: vmrs r5, mvfr1              @ encoding: [0x10,0x5a,0xf6,0xee]
1350da10cf44d0f22111dae728bb535ade2283d976bOwen Anderson
136933b314c761f3338ebc59aa089983681274054bdBill Wendling@ CHECK: vnegne.f64 d16, d16         @ encoding: [0x60,0x0b,0xf1,0x1e]
13752925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling        vnegne.f64      d16, d16
13852925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling
139933b314c761f3338ebc59aa089983681274054bdBill Wendling@ CHECK: vmovne s0, r0               @ encoding: [0x10,0x0a,0x00,0x1e]
140933b314c761f3338ebc59aa089983681274054bdBill Wendling@ CHECK: vmoveq s0, r1               @ encoding: [0x10,0x1a,0x00,0x0e]
14152925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling        vmovne  s0, r0
14252925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling        vmoveq  s0, r1
14352925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling
144a68e90c36e6a53fb1889b608f44d6244a36b3e97Jim Grosbach        vmov.f32 r1, s2
145a68e90c36e6a53fb1889b608f44d6244a36b3e97Jim Grosbach        vmov.f32 s4, r3
146a68e90c36e6a53fb1889b608f44d6244a36b3e97Jim Grosbach        vmov.f64 r1, r5, d2
147a68e90c36e6a53fb1889b608f44d6244a36b3e97Jim Grosbach        vmov.f64 d4, r3, r9
148a68e90c36e6a53fb1889b608f44d6244a36b3e97Jim Grosbach
149a68e90c36e6a53fb1889b608f44d6244a36b3e97Jim Grosbach@ CHECK: vmov	r1, s2                  @ encoding: [0x10,0x1a,0x11,0xee]
150a68e90c36e6a53fb1889b608f44d6244a36b3e97Jim Grosbach@ CHECK: vmov	s4, r3                  @ encoding: [0x10,0x3a,0x02,0xee]
151a68e90c36e6a53fb1889b608f44d6244a36b3e97Jim Grosbach@ CHECK: vmov	r1, r5, d2              @ encoding: [0x12,0x1b,0x55,0xec]
152a68e90c36e6a53fb1889b608f44d6244a36b3e97Jim Grosbach@ CHECK: vmov	d4, r3, r9              @ encoding: [0x14,0x3b,0x49,0xec]
153a68e90c36e6a53fb1889b608f44d6244a36b3e97Jim Grosbach
154933b314c761f3338ebc59aa089983681274054bdBill Wendling@ CHECK: vmrs r0, fpscr              @ encoding: [0x10,0x0a,0xf1,0xee]
15552925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling        vmrs    r0, fpscr
15661505907f54d4e7df2f9d90b1ed3a4caa0469d26Bruno Cardoso Lopes@ CHECK: vmrs  r0, fpexc             @ encoding: [0x10,0x0a,0xf8,0xee]
15761505907f54d4e7df2f9d90b1ed3a4caa0469d26Bruno Cardoso Lopes        vmrs  r0, fpexc
15861505907f54d4e7df2f9d90b1ed3a4caa0469d26Bruno Cardoso Lopes@ CHECK: vmrs  r0, fpsid             @ encoding: [0x10,0x0a,0xf0,0xee]
15961505907f54d4e7df2f9d90b1ed3a4caa0469d26Bruno Cardoso Lopes        vmrs  r0, fpsid
16052925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling
161933b314c761f3338ebc59aa089983681274054bdBill Wendling@ CHECK: vmsr fpscr, r0              @ encoding: [0x10,0x0a,0xe1,0xee]
16252925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling        vmsr    fpscr, r0
16361505907f54d4e7df2f9d90b1ed3a4caa0469d26Bruno Cardoso Lopes@ CHECK: vmsr  fpexc, r0             @ encoding: [0x10,0x0a,0xe8,0xee]
16461505907f54d4e7df2f9d90b1ed3a4caa0469d26Bruno Cardoso Lopes        vmsr  fpexc, r0
16561505907f54d4e7df2f9d90b1ed3a4caa0469d26Bruno Cardoso Lopes@ CHECK: vmsr  fpsid, r0             @ encoding: [0x10,0x0a,0xe0,0xee]
16661505907f54d4e7df2f9d90b1ed3a4caa0469d26Bruno Cardoso Lopes        vmsr  fpsid, r0
16752925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling
1689d39036f62674606565217a10db28171b9594bc7Jim Grosbach        vmov.f64        d16, #3.000000e+00
1699d39036f62674606565217a10db28171b9594bc7Jim Grosbach        vmov.f32        s0, #3.000000e+00
1709d39036f62674606565217a10db28171b9594bc7Jim Grosbach        vmov.f64        d16, #-3.000000e+00
1719d39036f62674606565217a10db28171b9594bc7Jim Grosbach        vmov.f32        s0, #-3.000000e+00
1729d39036f62674606565217a10db28171b9594bc7Jim Grosbach
1739d39036f62674606565217a10db28171b9594bc7Jim Grosbach@ CHECK: vmov.f64 d16, #3.000000e+00 @ encoding: [0x08,0x0b,0xf0,0xee]
1749d39036f62674606565217a10db28171b9594bc7Jim Grosbach@ CHECK: vmov.f32 s0, #3.000000e+00  @ encoding: [0x08,0x0a,0xb0,0xee]
1759d39036f62674606565217a10db28171b9594bc7Jim Grosbach@ CHECK: vmov.f64 d16, #-3.000000e+00 @ encoding: [0x08,0x0b,0xf8,0xee]
1769d39036f62674606565217a10db28171b9594bc7Jim Grosbach@ CHECK: vmov.f32 s0, #-3.000000e+00  @ encoding: [0x08,0x0a,0xb8,0xee]
17752925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling
178933b314c761f3338ebc59aa089983681274054bdBill Wendling@ CHECK: vmov s0, r0                 @ encoding: [0x10,0x0a,0x00,0xee]
179933b314c761f3338ebc59aa089983681274054bdBill Wendling@ CHECK: vmov s1, r1                 @ encoding: [0x90,0x1a,0x00,0xee]
180933b314c761f3338ebc59aa089983681274054bdBill Wendling@ CHECK: vmov s2, r2                 @ encoding: [0x10,0x2a,0x01,0xee]
181933b314c761f3338ebc59aa089983681274054bdBill Wendling@ CHECK: vmov s3, r3                 @ encoding: [0x90,0x3a,0x01,0xee]
18252925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling        vmov    s0, r0
18352925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling        vmov    s1, r1
18452925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling        vmov    s2, r2
18552925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling        vmov    s3, r3
18652925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling
187933b314c761f3338ebc59aa089983681274054bdBill Wendling@ CHECK: vmov r0, s0                 @ encoding: [0x10,0x0a,0x10,0xee]
188933b314c761f3338ebc59aa089983681274054bdBill Wendling@ CHECK: vmov r1, s1                 @ encoding: [0x90,0x1a,0x10,0xee]
189933b314c761f3338ebc59aa089983681274054bdBill Wendling@ CHECK: vmov r2, s2                 @ encoding: [0x10,0x2a,0x11,0xee]
190933b314c761f3338ebc59aa089983681274054bdBill Wendling@ CHECK: vmov r3, s3                 @ encoding: [0x90,0x3a,0x11,0xee]
19152925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling        vmov    r0, s0
19252925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling        vmov    r1, s1
19352925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling        vmov    r2, s2
19452925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling        vmov    r3, s3
19552925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling
196933b314c761f3338ebc59aa089983681274054bdBill Wendling@ CHECK: vmov r0, r1, d16            @ encoding: [0x30,0x0b,0x51,0xec]
19752925b60f1cd4cf810524ca05b00a207a926ab9fBill Wendling        vmov    r0, r1, d16
1985df0e0a61d6ac0e8dcf1a600bdc28d3e4a8db0adBill Wendling
199fae96f17b4b022fccd94a143698112a17d8ddf05Richard Barton@ Between two single precision registers and two core registers
200fae96f17b4b022fccd94a143698112a17d8ddf05Richard Barton        vmov s3, s4, r1, r2
201fae96f17b4b022fccd94a143698112a17d8ddf05Richard Barton        vmov s2, s3, r1, r2
202fae96f17b4b022fccd94a143698112a17d8ddf05Richard Barton        vmov r1, r2, s3, s4
203fae96f17b4b022fccd94a143698112a17d8ddf05Richard Barton        vmov r1, r2, s2, s3
204fae96f17b4b022fccd94a143698112a17d8ddf05Richard Barton@ CHECK: vmov s3, s4, r1, r2      @ encoding: [0x31,0x1a,0x42,0xec]
205fae96f17b4b022fccd94a143698112a17d8ddf05Richard Barton@ CHECK: vmov s2, s3, r1, r2      @ encoding: [0x11,0x1a,0x42,0xec]
206fae96f17b4b022fccd94a143698112a17d8ddf05Richard Barton@ CHECK: vmov r1, r2, s3, s4      @ encoding: [0x31,0x1a,0x52,0xec]
207fae96f17b4b022fccd94a143698112a17d8ddf05Richard Barton@ CHECK: vmov r1, r2, s2, s3      @ encoding: [0x11,0x1a,0x52,0xec]
208fae96f17b4b022fccd94a143698112a17d8ddf05Richard Barton
209fae96f17b4b022fccd94a143698112a17d8ddf05Richard Barton@ Between one double precision register and two core registers
210fae96f17b4b022fccd94a143698112a17d8ddf05Richard Barton        vmov d15, r1, r2
211fae96f17b4b022fccd94a143698112a17d8ddf05Richard Barton        vmov d16, r1, r2
212fae96f17b4b022fccd94a143698112a17d8ddf05Richard Barton        vmov r1, r2, d15
213fae96f17b4b022fccd94a143698112a17d8ddf05Richard Barton        vmov r1, r2, d16
214fae96f17b4b022fccd94a143698112a17d8ddf05Richard Barton@ CHECK: vmov d15, r1, r2         @ encoding: [0x1f,0x1b,0x42,0xec]
215fae96f17b4b022fccd94a143698112a17d8ddf05Richard Barton@ CHECK: vmov d16, r1, r2         @ encoding: [0x30,0x1b,0x42,0xec]
216fae96f17b4b022fccd94a143698112a17d8ddf05Richard Barton@ CHECK: vmov r1, r2, d15         @ encoding: [0x1f,0x1b,0x52,0xec]
217fae96f17b4b022fccd94a143698112a17d8ddf05Richard Barton@ CHECK: vmov r1, r2, d16         @ encoding: [0x30,0x1b,0x52,0xec]
218fae96f17b4b022fccd94a143698112a17d8ddf05Richard Barton
219fae96f17b4b022fccd94a143698112a17d8ddf05Richard Barton
220ffc658b056b7cc0b3f6a2626694b6a4216ed728dJim Grosbach@ CHECK: vldr d17, [r0]           @ encoding: [0x00,0x1b,0xd0,0xed]
221ffc658b056b7cc0b3f6a2626694b6a4216ed728dJim Grosbach@ CHECK: vldr s0, [lr]            @ encoding: [0x00,0x0a,0x9e,0xed]
222ffc658b056b7cc0b3f6a2626694b6a4216ed728dJim Grosbach@ CHECK: vldr d0, [lr]            @ encoding: [0x00,0x0b,0x9e,0xed]
223c7352f8ca0fc716c38cb3d81e63e943d47d578b3Jim Grosbach
2245df0e0a61d6ac0e8dcf1a600bdc28d3e4a8db0adBill Wendling        vldr.64	d17, [r0]
225ffc658b056b7cc0b3f6a2626694b6a4216ed728dJim Grosbach	vldr.i32 s0, [lr]
226ffc658b056b7cc0b3f6a2626694b6a4216ed728dJim Grosbach	vldr.d d0, [lr]
2275df0e0a61d6ac0e8dcf1a600bdc28d3e4a8db0adBill Wendling
228ffc658b056b7cc0b3f6a2626694b6a4216ed728dJim Grosbach@ CHECK: vldr d1, [r2, #32]       @ encoding: [0x08,0x1b,0x92,0xed]
229ffc658b056b7cc0b3f6a2626694b6a4216ed728dJim Grosbach@ CHECK: vldr d1, [r2, #-32]      @ encoding: [0x08,0x1b,0x12,0xed]
2305df0e0a61d6ac0e8dcf1a600bdc28d3e4a8db0adBill Wendling        vldr.64	d1, [r2, #32]
231ffc658b056b7cc0b3f6a2626694b6a4216ed728dJim Grosbach        vldr.f64	d1, [r2, #-32]
2320da10cf44d0f22111dae728bb535ade2283d976bOwen Anderson
233ffc658b056b7cc0b3f6a2626694b6a4216ed728dJim Grosbach@ CHECK: vldr d2, [r3]            @ encoding: [0x00,0x2b,0x93,0xed]
2345df0e0a61d6ac0e8dcf1a600bdc28d3e4a8db0adBill Wendling        vldr.64 d2, [r3]
2355df0e0a61d6ac0e8dcf1a600bdc28d3e4a8db0adBill Wendling
236ffc658b056b7cc0b3f6a2626694b6a4216ed728dJim Grosbach@ CHECK: vldr d3, [pc]            @ encoding: [0x00,0x3b,0x9f,0xed]
237ffc658b056b7cc0b3f6a2626694b6a4216ed728dJim Grosbach@ CHECK: vldr d3, [pc]            @ encoding: [0x00,0x3b,0x9f,0xed]
238ffc658b056b7cc0b3f6a2626694b6a4216ed728dJim Grosbach@ CHECK: vldr d3, [pc, #-0]            @ encoding: [0x00,0x3b,0x1f,0xed]
2395df0e0a61d6ac0e8dcf1a600bdc28d3e4a8db0adBill Wendling        vldr.64 d3, [pc]
2405df0e0a61d6ac0e8dcf1a600bdc28d3e4a8db0adBill Wendling        vldr.64 d3, [pc,#0]
2415df0e0a61d6ac0e8dcf1a600bdc28d3e4a8db0adBill Wendling        vldr.64 d3, [pc,#-0]
24292b5a2eb1646b3c1173a5ff3c0073f24ed5ee6a4Bill Wendling
243ffc658b056b7cc0b3f6a2626694b6a4216ed728dJim Grosbach@ CHECK: vldr s13, [r0]           @ encoding: [0x00,0x6a,0xd0,0xed]
24492b5a2eb1646b3c1173a5ff3c0073f24ed5ee6a4Bill Wendling        vldr.32	s13, [r0]
24592b5a2eb1646b3c1173a5ff3c0073f24ed5ee6a4Bill Wendling
246ffc658b056b7cc0b3f6a2626694b6a4216ed728dJim Grosbach@ CHECK: vldr s1, [r2, #32]       @ encoding: [0x08,0x0a,0xd2,0xed]
247ffc658b056b7cc0b3f6a2626694b6a4216ed728dJim Grosbach@ CHECK: vldr s1, [r2, #-32]      @ encoding: [0x08,0x0a,0x52,0xed]
24892b5a2eb1646b3c1173a5ff3c0073f24ed5ee6a4Bill Wendling        vldr.32	s1, [r2, #32]
24992b5a2eb1646b3c1173a5ff3c0073f24ed5ee6a4Bill Wendling        vldr.32	s1, [r2, #-32]
2500da10cf44d0f22111dae728bb535ade2283d976bOwen Anderson
251ffc658b056b7cc0b3f6a2626694b6a4216ed728dJim Grosbach@ CHECK: vldr s2, [r3]            @ encoding: [0x00,0x1a,0x93,0xed]
25292b5a2eb1646b3c1173a5ff3c0073f24ed5ee6a4Bill Wendling        vldr.32 s2, [r3]
25392b5a2eb1646b3c1173a5ff3c0073f24ed5ee6a4Bill Wendling
254ffc658b056b7cc0b3f6a2626694b6a4216ed728dJim Grosbach@ CHECK: vldr s5, [pc]            @ encoding: [0x00,0x2a,0xdf,0xed]
255ffc658b056b7cc0b3f6a2626694b6a4216ed728dJim Grosbach@ CHECK: vldr s5, [pc]            @ encoding: [0x00,0x2a,0xdf,0xed]
256ffc658b056b7cc0b3f6a2626694b6a4216ed728dJim Grosbach@ CHECK: vldr s5, [pc, #-0]            @ encoding: [0x00,0x2a,0x5f,0xed]
25792b5a2eb1646b3c1173a5ff3c0073f24ed5ee6a4Bill Wendling        vldr.32 s5, [pc]
25892b5a2eb1646b3c1173a5ff3c0073f24ed5ee6a4Bill Wendling        vldr.32 s5, [pc,#0]
25992b5a2eb1646b3c1173a5ff3c0073f24ed5ee6a4Bill Wendling        vldr.32 s5, [pc,#-0]
2602f46f1f59c17040f7a2c970342f2f1dcc9b78319Bill Wendling
261ffc658b056b7cc0b3f6a2626694b6a4216ed728dJim Grosbach@ CHECK: vstr d4, [r1]            @ encoding: [0x00,0x4b,0x81,0xed]
262ffc658b056b7cc0b3f6a2626694b6a4216ed728dJim Grosbach@ CHECK: vstr d4, [r1, #24]       @ encoding: [0x06,0x4b,0x81,0xed]
263ffc658b056b7cc0b3f6a2626694b6a4216ed728dJim Grosbach@ CHECK: vstr d4, [r1, #-24]      @ encoding: [0x06,0x4b,0x01,0xed]
264ffc658b056b7cc0b3f6a2626694b6a4216ed728dJim Grosbach@ CHECK: vstr s0, [lr]            @ encoding: [0x00,0x0a,0x8e,0xed]
265ffc658b056b7cc0b3f6a2626694b6a4216ed728dJim Grosbach@ CHECK: vstr d0, [lr]            @ encoding: [0x00,0x0b,0x8e,0xed]
266c7352f8ca0fc716c38cb3d81e63e943d47d578b3Jim Grosbach
2672f46f1f59c17040f7a2c970342f2f1dcc9b78319Bill Wendling        vstr.64 d4, [r1]
2682f46f1f59c17040f7a2c970342f2f1dcc9b78319Bill Wendling        vstr.64 d4, [r1, #24]
2692f46f1f59c17040f7a2c970342f2f1dcc9b78319Bill Wendling        vstr.64 d4, [r1, #-24]
270c7352f8ca0fc716c38cb3d81e63e943d47d578b3Jim Grosbach	vstr s0, [lr]
271c7352f8ca0fc716c38cb3d81e63e943d47d578b3Jim Grosbach	vstr d0, [lr]
2722f46f1f59c17040f7a2c970342f2f1dcc9b78319Bill Wendling
273ffc658b056b7cc0b3f6a2626694b6a4216ed728dJim Grosbach@ CHECK: vstr s4, [r1]            @ encoding: [0x00,0x2a,0x81,0xed]
274ffc658b056b7cc0b3f6a2626694b6a4216ed728dJim Grosbach@ CHECK: vstr s4, [r1, #24]       @ encoding: [0x06,0x2a,0x81,0xed]
275ffc658b056b7cc0b3f6a2626694b6a4216ed728dJim Grosbach@ CHECK: vstr s4, [r1, #-24]      @ encoding: [0x06,0x2a,0x01,0xed]
2762f46f1f59c17040f7a2c970342f2f1dcc9b78319Bill Wendling        vstr.32 s4, [r1]
2772f46f1f59c17040f7a2c970342f2f1dcc9b78319Bill Wendling        vstr.32 s4, [r1, #24]
2782f46f1f59c17040f7a2c970342f2f1dcc9b78319Bill Wendling        vstr.32 s4, [r1, #-24]
2790f6307561359fac4425a0b9e512931cf96c1ec5bBill Wendling
2800f6307561359fac4425a0b9e512931cf96c1ec5bBill Wendling@ CHECK: vldmia r1, {d2, d3, d4, d5, d6, d7} @ encoding: [0x0c,0x2b,0x91,0xec]
2810f6307561359fac4425a0b9e512931cf96c1ec5bBill Wendling@ CHECK: vldmia r1, {s2, s3, s4, s5, s6, s7} @ encoding: [0x06,0x1a,0x91,0xec]
2820f6307561359fac4425a0b9e512931cf96c1ec5bBill Wendling        vldmia  r1, {d2,d3-d6,d7}
2830f6307561359fac4425a0b9e512931cf96c1ec5bBill Wendling        vldmia  r1, {s2,s3-s6,s7}
2840f6307561359fac4425a0b9e512931cf96c1ec5bBill Wendling
2850f6307561359fac4425a0b9e512931cf96c1ec5bBill Wendling@ CHECK: vstmia r1, {d2, d3, d4, d5, d6, d7} @ encoding: [0x0c,0x2b,0x81,0xec]
2860f6307561359fac4425a0b9e512931cf96c1ec5bBill Wendling@ CHECK: vstmia	r1, {s2, s3, s4, s5, s6, s7} @ encoding: [0x06,0x1a,0x81,0xec]
287ce485e7f70faed6d19daafff91bb20509403d432Jim Grosbach@ CHECK: vpush	{d8, d9, d10, d11, d12, d13, d14, d15} @ encoding: [0x10,0x8b,0x2d,0xed]
2880f6307561359fac4425a0b9e512931cf96c1ec5bBill Wendling        vstmia  r1, {d2,d3-d6,d7}
2890f6307561359fac4425a0b9e512931cf96c1ec5bBill Wendling        vstmia  r1, {s2,s3-s6,s7}
290ce485e7f70faed6d19daafff91bb20509403d432Jim Grosbach        vstmdb sp!, {q4-q7}
291106df6da366c0abc6a3937767fe008d02cacef4cBruno Cardoso Lopes
292106df6da366c0abc6a3937767fe008d02cacef4cBruno Cardoso Lopes@ CHECK: vcvtr.s32.f64  s0, d0 @ encoding: [0x40,0x0b,0xbd,0xee]
293106df6da366c0abc6a3937767fe008d02cacef4cBruno Cardoso Lopes@ CHECK: vcvtr.s32.f32  s0, s1 @ encoding: [0x60,0x0a,0xbd,0xee]
294106df6da366c0abc6a3937767fe008d02cacef4cBruno Cardoso Lopes@ CHECK: vcvtr.u32.f64  s0, d0 @ encoding: [0x40,0x0b,0xbc,0xee]
295106df6da366c0abc6a3937767fe008d02cacef4cBruno Cardoso Lopes@ CHECK: vcvtr.u32.f32  s0, s1 @ encoding: [0x60,0x0a,0xbc,0xee]
296106df6da366c0abc6a3937767fe008d02cacef4cBruno Cardoso Lopes        vcvtr.s32.f64  s0, d0
297106df6da366c0abc6a3937767fe008d02cacef4cBruno Cardoso Lopes        vcvtr.s32.f32  s0, s1
298106df6da366c0abc6a3937767fe008d02cacef4cBruno Cardoso Lopes        vcvtr.u32.f64  s0, d0
299106df6da366c0abc6a3937767fe008d02cacef4cBruno Cardoso Lopes        vcvtr.u32.f32  s0, s1
300694e0ffb8aa3a8651003e448135aba0e663782bdOwen Anderson
301694e0ffb8aa3a8651003e448135aba0e663782bdOwen Anderson@ CHECK: vmovne	s25, s26, r2, r5
302694e0ffb8aa3a8651003e448135aba0e663782bdOwen Anderson        vmovne	s25, s26, r2, r5        @ encoding: [0x39,0x2a,0x45,0x1c]
303af33a0cfe092afd327e1b8b05c655d9eab689eedJim Grosbach
304af33a0cfe092afd327e1b8b05c655d9eab689eedJim Grosbach@ VMOV w/ optional data type suffix.
305af33a0cfe092afd327e1b8b05c655d9eab689eedJim Grosbach	vmov.32 s1, r8
306af33a0cfe092afd327e1b8b05c655d9eab689eedJim Grosbach        vmov.s16 s2, r4
307af33a0cfe092afd327e1b8b05c655d9eab689eedJim Grosbach        vmov.16 s3, r6
308af33a0cfe092afd327e1b8b05c655d9eab689eedJim Grosbach        vmov.u32 s4, r1
309af33a0cfe092afd327e1b8b05c655d9eab689eedJim Grosbach        vmov.p8 s5, r2
310af33a0cfe092afd327e1b8b05c655d9eab689eedJim Grosbach        vmov.8 s6, r3
311af33a0cfe092afd327e1b8b05c655d9eab689eedJim Grosbach
312af33a0cfe092afd327e1b8b05c655d9eab689eedJim Grosbach        vmov.32 r1, s8
313af33a0cfe092afd327e1b8b05c655d9eab689eedJim Grosbach        vmov.s16 r2, s4
314af33a0cfe092afd327e1b8b05c655d9eab689eedJim Grosbach        vmov.16 r3, s6
315af33a0cfe092afd327e1b8b05c655d9eab689eedJim Grosbach        vmov.u32 r4, s1
316af33a0cfe092afd327e1b8b05c655d9eab689eedJim Grosbach        vmov.p8 r5, s2
317af33a0cfe092afd327e1b8b05c655d9eab689eedJim Grosbach        vmov.8 r6, s3
318af33a0cfe092afd327e1b8b05c655d9eab689eedJim Grosbach
319af33a0cfe092afd327e1b8b05c655d9eab689eedJim Grosbach@ CHECK: vmov	s1, r8                  @ encoding: [0x90,0x8a,0x00,0xee]
320af33a0cfe092afd327e1b8b05c655d9eab689eedJim Grosbach@ CHECK: vmov	s2, r4                  @ encoding: [0x10,0x4a,0x01,0xee]
321af33a0cfe092afd327e1b8b05c655d9eab689eedJim Grosbach@ CHECK: vmov	s3, r6                  @ encoding: [0x90,0x6a,0x01,0xee]
322af33a0cfe092afd327e1b8b05c655d9eab689eedJim Grosbach@ CHECK: vmov	s4, r1                  @ encoding: [0x10,0x1a,0x02,0xee]
323af33a0cfe092afd327e1b8b05c655d9eab689eedJim Grosbach@ CHECK: vmov	s5, r2                  @ encoding: [0x90,0x2a,0x02,0xee]
324af33a0cfe092afd327e1b8b05c655d9eab689eedJim Grosbach@ CHECK: vmov	s6, r3                  @ encoding: [0x10,0x3a,0x03,0xee]
325af33a0cfe092afd327e1b8b05c655d9eab689eedJim Grosbach@ CHECK: vmov	r1, s8                  @ encoding: [0x10,0x1a,0x14,0xee]
326af33a0cfe092afd327e1b8b05c655d9eab689eedJim Grosbach@ CHECK: vmov	r2, s4                  @ encoding: [0x10,0x2a,0x12,0xee]
327af33a0cfe092afd327e1b8b05c655d9eab689eedJim Grosbach@ CHECK: vmov	r3, s6                  @ encoding: [0x10,0x3a,0x13,0xee]
328af33a0cfe092afd327e1b8b05c655d9eab689eedJim Grosbach@ CHECK: vmov	r4, s1                  @ encoding: [0x90,0x4a,0x10,0xee]
329af33a0cfe092afd327e1b8b05c655d9eab689eedJim Grosbach@ CHECK: vmov	r5, s2                  @ encoding: [0x10,0x5a,0x11,0xee]
330af33a0cfe092afd327e1b8b05c655d9eab689eedJim Grosbach@ CHECK: vmov	r6, s3                  @ encoding: [0x90,0x6a,0x11,0xee]
3314050bc4cab61f8d3c7583a9b60f17c7da47bbf69Jim Grosbach
3324050bc4cab61f8d3c7583a9b60f17c7da47bbf69Jim Grosbach
3334050bc4cab61f8d3c7583a9b60f17c7da47bbf69Jim Grosbach@ VCVT (between floating-point and fixed-point)
3348a6bcc3722729803a16b5885de1ff85a3752e6a0Kristof Beyls        vcvt.f32.u32 s0, s0, #20
3354050bc4cab61f8d3c7583a9b60f17c7da47bbf69Jim Grosbach        vcvt.f64.s32 d0, d0, #32
3364050bc4cab61f8d3c7583a9b60f17c7da47bbf69Jim Grosbach        vcvt.f32.u16 s0, s0, #1
3374050bc4cab61f8d3c7583a9b60f17c7da47bbf69Jim Grosbach        vcvt.f64.s16 d0, d0, #16
3388a6bcc3722729803a16b5885de1ff85a3752e6a0Kristof Beyls        vcvt.f32.s32 s1, s1, #20
3398a6bcc3722729803a16b5885de1ff85a3752e6a0Kristof Beyls        vcvt.f64.u32 d20, d20, #32
3408a6bcc3722729803a16b5885de1ff85a3752e6a0Kristof Beyls        vcvt.f32.s16 s17, s17, #1
3418a6bcc3722729803a16b5885de1ff85a3752e6a0Kristof Beyls        vcvt.f64.u16 d23, d23, #16
3428a6bcc3722729803a16b5885de1ff85a3752e6a0Kristof Beyls        vcvt.u32.f32 s12, s12, #20
3438a6bcc3722729803a16b5885de1ff85a3752e6a0Kristof Beyls        vcvt.s32.f64 d2, d2, #32
3448a6bcc3722729803a16b5885de1ff85a3752e6a0Kristof Beyls        vcvt.u16.f32 s28, s28, #1
3458a6bcc3722729803a16b5885de1ff85a3752e6a0Kristof Beyls        vcvt.s16.f64 d15, d15, #16
3468a6bcc3722729803a16b5885de1ff85a3752e6a0Kristof Beyls        vcvt.s32.f32 s1, s1, #20
3478a6bcc3722729803a16b5885de1ff85a3752e6a0Kristof Beyls        vcvt.u32.f64 d20, d20, #32
3488a6bcc3722729803a16b5885de1ff85a3752e6a0Kristof Beyls        vcvt.s16.f32 s17, s17, #1
3498a6bcc3722729803a16b5885de1ff85a3752e6a0Kristof Beyls        vcvt.u16.f64 d23, d23, #16
3504050bc4cab61f8d3c7583a9b60f17c7da47bbf69Jim Grosbach
3514050bc4cab61f8d3c7583a9b60f17c7da47bbf69Jim Grosbach@ CHECK: vcvt.f32.u32	s0, s0, #20     @ encoding: [0xc6,0x0a,0xbb,0xee]
3524050bc4cab61f8d3c7583a9b60f17c7da47bbf69Jim Grosbach@ CHECK: vcvt.f64.s32	d0, d0, #32     @ encoding: [0xc0,0x0b,0xba,0xee]
3534050bc4cab61f8d3c7583a9b60f17c7da47bbf69Jim Grosbach@ CHECK: vcvt.f32.u16	s0, s0, #1      @ encoding: [0x67,0x0a,0xbb,0xee]
3544050bc4cab61f8d3c7583a9b60f17c7da47bbf69Jim Grosbach@ CHECK: vcvt.f64.s16	d0, d0, #16     @ encoding: [0x40,0x0b,0xba,0xee]
3558a6bcc3722729803a16b5885de1ff85a3752e6a0Kristof Beyls@ CHECK: vcvt.f32.s32	s1, s1, #20     @ encoding: [0xc6,0x0a,0xfa,0xee]
3568a6bcc3722729803a16b5885de1ff85a3752e6a0Kristof Beyls@ CHECK: vcvt.f64.u32	d20, d20, #32   @ encoding: [0xc0,0x4b,0xfb,0xee]
3578a6bcc3722729803a16b5885de1ff85a3752e6a0Kristof Beyls@ CHECK: vcvt.f32.s16	s17, s17, #1    @ encoding: [0x67,0x8a,0xfa,0xee]
3588a6bcc3722729803a16b5885de1ff85a3752e6a0Kristof Beyls@ CHECK: vcvt.f64.u16	d23, d23, #16   @ encoding: [0x40,0x7b,0xfb,0xee]
3598a6bcc3722729803a16b5885de1ff85a3752e6a0Kristof Beyls
3608a6bcc3722729803a16b5885de1ff85a3752e6a0Kristof Beyls@ CHECK: vcvt.u32.f32	s12, s12, #20   @ encoding: [0xc6,0x6a,0xbf,0xee]
3618a6bcc3722729803a16b5885de1ff85a3752e6a0Kristof Beyls@ CHECK: vcvt.s32.f64	d2, d2, #32     @ encoding: [0xc0,0x2b,0xbe,0xee]
3628a6bcc3722729803a16b5885de1ff85a3752e6a0Kristof Beyls@ CHECK: vcvt.u16.f32	s28, s28, #1    @ encoding: [0x67,0xea,0xbf,0xee]
3638a6bcc3722729803a16b5885de1ff85a3752e6a0Kristof Beyls@ CHECK: vcvt.s16.f64	d15, d15, #16   @ encoding: [0x40,0xfb,0xbe,0xee]
3648a6bcc3722729803a16b5885de1ff85a3752e6a0Kristof Beyls@ CHECK: vcvt.s32.f32	s1, s1, #20     @ encoding: [0xc6,0x0a,0xfe,0xee]
3658a6bcc3722729803a16b5885de1ff85a3752e6a0Kristof Beyls@ CHECK: vcvt.u32.f64	d20, d20, #32   @ encoding: [0xc0,0x4b,0xff,0xee]
3668a6bcc3722729803a16b5885de1ff85a3752e6a0Kristof Beyls@ CHECK: vcvt.s16.f32	s17, s17, #1    @ encoding: [0x67,0x8a,0xfe,0xee]
3678a6bcc3722729803a16b5885de1ff85a3752e6a0Kristof Beyls@ CHECK: vcvt.u16.f64	d23, d23, #16   @ encoding: [0x40,0x7b,0xff,0xee]
36851222d1551383dd7b95ba356b1a5ed89df69e789Jim Grosbach
36951222d1551383dd7b95ba356b1a5ed89df69e789Jim Grosbach
37051222d1551383dd7b95ba356b1a5ed89df69e789Jim Grosbach@ Use NEON to load some f32 immediates that don't fit the f8 representation.
37151222d1551383dd7b95ba356b1a5ed89df69e789Jim Grosbach        vmov.f32 d4, #0.0
37251222d1551383dd7b95ba356b1a5ed89df69e789Jim Grosbach        vmov.f32 d4, #32.0
37351222d1551383dd7b95ba356b1a5ed89df69e789Jim Grosbach
37451222d1551383dd7b95ba356b1a5ed89df69e789Jim Grosbach@ CHECK: vmov.i32	d4, #0x0        @ encoding: [0x10,0x40,0x80,0xf2]
37551222d1551383dd7b95ba356b1a5ed89df69e789Jim Grosbach@ CHECK: vmov.i32	d4, #0x42000000 @ encoding: [0x12,0x46,0x84,0xf2]
376