1 @ RUN
: llvm-mc
-mcpu
=cortex-a8
-triple thumb-unknown-unknown
-show-encoding
< %s | FileCheck
%s
5 @ CHECK
: vst1.8
{d16
}, [r0:64] @ encoding
: [0x40,0xf9,0x1f,0x07]
7 @ CHECK
: vst1.16
{d16
}, [r0] @ encoding
: [0x40,0xf9,0x4f,0x07]
9 @ CHECK
: vst1.32
{d16
}, [r0] @ encoding
: [0x40,0xf9,0x8f,0x07]
11 @ CHECK
: vst1.64
{d16
}, [r0] @ encoding
: [0x40,0xf9,0xcf,0x07]
13 @ CHECK
: vst1.8
{d16
, d17
}, [r0:64] @ encoding
: [0x40,0xf9,0x1f,0x0a]
14 vst1.8
{d16
, d17
}, [r0:64]
15 @ CHECK
: vst1.16
{d16
, d17
}, [r0:128] @ encoding
: [0x40,0xf9,0x6f,0x0a]
16 vst1.16
{d16
, d17
}, [r0:128]
17 @ CHECK
: vst1.32
{d16
, d17
}, [r0] @ encoding
: [0x40,0xf9,0x8f,0x0a]
18 vst1.32
{d16
, d17
}, [r0]
19 @ CHECK
: vst1.64
{d16
, d17
}, [r0] @ encoding
: [0x40,0xf9,0xcf,0x0a]
20 vst1.64
{d16
, d17
}, [r0]
22 @ CHECK
: vst2.8
{d16
, d17
}, [r0:64] @ encoding
: [0x40,0xf9,0x1f,0x08]
23 vst2.8
{d16
, d17
}, [r0:64]
24 @ CHECK
: vst2.16
{d16
, d17
}, [r0:128] @ encoding
: [0x40,0xf9,0x6f,0x08]
25 vst2.16
{d16
, d17
}, [r0:128]
26 @ CHECK
: vst2.32
{d16
, d17
}, [r0] @ encoding
: [0x40,0xf9,0x8f,0x08]
27 vst2.32
{d16
, d17
}, [r0]
28 @ CHECK
: vst2.8
{d16
, d17
, d18
, d19
}, [r0:64] @ encoding
: [0x40,0xf9,0x1f,0x03]
29 vst2.8
{d16
, d17
, d18
, d19
}, [r0:64]
30 @ CHECK
: vst2.16
{d16
, d17
, d18
, d19
}, [r0:128] @ encoding
: [0x40,0xf9,0x6f,0x03]
31 vst2.16
{d16
, d17
, d18
, d19
}, [r0:128]
32 @ CHECK
: vst2.32
{d16
, d17
, d18
, d19
}, [r0:256] @ encoding
: [0x40,0xf9,0xbf,0x03]
33 vst2.32
{d16
, d17
, d18
, d19
}, [r0:256]
35 @ CHECK
: vst3.8
{d16
, d17
, d18
}, [r0:64] @ encoding
: [0x40,0xf9,0x1f,0x04]
36 vst3.8
{d16
, d17
, d18
}, [r0:64]
37 @ CHECK
: vst3.16
{d16
, d17
, d18
}, [r0] @ encoding
: [0x40,0xf9,0x4f,0x04]
38 vst3.16
{d16
, d17
, d18
}, [r0]
39 @ CHECK
: vst3.32
{d16
, d17
, d18
}, [r0] @ encoding
: [0x40,0xf9,0x8f,0x04]
40 vst3.32
{d16
, d17
, d18
}, [r0]
41 @ CHECK
: vst3.8
{d16
, d18
, d20
}, [r0:64]! @ encoding
: [0x40,0xf9,0x1d,0x05]
42 vst3.8
{d16
, d18
, d20
}, [r0:64]!
43 @ CHECK
: vst3.8
{d17
, d19
, d21
}, [r0:64]! @ encoding
: [0x40,0xf9,0x1d,0x15]
44 vst3.8
{d17
, d19
, d21
}, [r0:64]!
45 @ CHECK
: vst3.16
{d16
, d18
, d20
}, [r0]! @ encoding
: [0x40,0xf9,0x4d,0x05]
46 vst3.16
{d16
, d18
, d20
}, [r0]!
47 @ CHECK
: vst3.16
{d17
, d19
, d21
}, [r0]! @ encoding
: [0x40,0xf9,0x4d,0x15]
48 vst3.16
{d17
, d19
, d21
}, [r0]!
49 @ CHECK
: vst3.32
{d16
, d18
, d20
}, [r0]! @ encoding
: [0x40,0xf9,0x8d,0x05]
50 vst3.32
{d16
, d18
, d20
}, [r0]!
51 @ CHECK
: vst3.32
{d17
, d19
, d21
}, [r0]! @ encoding
: [0x40,0xf9,0x8d,0x15]
52 vst3.32
{d17
, d19
, d21
}, [r0]!
54 @ CHECK
: vst4.8
{d16
, d17
, d18
, d19
}, [r0:64] @ encoding
: [0x40,0xf9,0x1f,0x00]
55 vst4.8
{d16
, d17
, d18
, d19
}, [r0:64]
56 @ CHECK
: vst4.16
{d16
, d17
, d18
, d19
}, [r0:128] @ encoding
: [0x40,0xf9,0x6f,0x00]
57 vst4.16
{d16
, d17
, d18
, d19
}, [r0:128]
58 @ CHECK
: vst4.8
{d16
, d18
, d20
, d22
}, [r0:256]! @ encoding
: [0x40,0xf9,0x3d,0x01]
59 vst4.8
{d16
, d18
, d20
, d22
}, [r0:256]!
60 @ CHECK
: vst4.8
{d17
, d19
, d21
, d23
}, [r0:256]! @ encoding
: [0x40,0xf9,0x3d,0x11]
61 vst4.8
{d17
, d19
, d21
, d23
}, [r0:256]!
62 @ CHECK
: vst4.16
{d16
, d18
, d20
, d22
}, [r0]! @ encoding
: [0x40,0xf9,0x4d,0x01]
63 vst4.16
{d16
, d18
, d20
, d22
}, [r0]!
64 @ CHECK
: vst4.16
{d17
, d19
, d21
, d23
}, [r0]! @ encoding
: [0x40,0xf9,0x4d,0x11]
65 vst4.16
{d17
, d19
, d21
, d23
}, [r0]!
66 @ CHECK
: vst4.32
{d16
, d18
, d20
, d22
}, [r0]! @ encoding
: [0x40,0xf9,0x8d,0x01]
67 vst4.32
{d16
, d18
, d20
, d22
}, [r0]!
68 @ CHECK
: vst4.32
{d17
, d19
, d21
, d23
}, [r0]! @ encoding
: [0x40,0xf9,0x8d,0x11]
69 vst4.32
{d17
, d19
, d21
, d23
}, [r0]!
71 @ CHECK
: vst2.8
{d16
[1], d17
[1]}, [r0:16] @ encoding
: [0xc0,0xf9,0x3f,0x01]
72 vst2.8
{d16
[1], d17
[1]}, [r0:16]
73 @ CHECK
: vst2.16
{d16
[1], d17
[1]}, [r0:32] @ encoding
: [0xc0,0xf9,0x5f,0x05]
74 vst2.16
{d16
[1], d17
[1]}, [r0:32]
75 @ CHECK
: vst2.32
{d16
[1], d17
[1]}, [r0] @ encoding
: [0xc0,0xf9,0x8f,0x09]
76 vst2.32
{d16
[1], d17
[1]}, [r0]
77 @ CHECK
: vst2.16
{d17
[1], d19
[1]}, [r0] @ encoding
: [0xc0,0xf9,0x6f,0x15]
78 vst2.16
{d17
[1], d19
[1]}, [r0]
79 @ CHECK
: vst2.32
{d17
[0], d19
[0]}, [r0:64] @ encoding
: [0xc0,0xf9,0x5f,0x19]
80 vst2.32
{d17
[0], d19
[0]}, [r0:64]
82 @ CHECK
: vst3.8
{d16
[1], d17
[1], d18
[1]}, [r0] @ encoding
: [0xc0,0xf9,0x2f,0x02]
83 vst3.8
{d16
[1], d17
[1], d18
[1]}, [r0]
84 @ CHECK
: vst3.16
{d16
[1], d17
[1], d18
[1]}, [r0] @ encoding
: [0xc0,0xf9,0x4f,0x06]
85 vst3.16
{d16
[1], d17
[1], d18
[1]}, [r0]
86 @ CHECK
: vst3.32
{d16
[1], d17
[1], d18
[1]}, [r0] @ encoding
: [0xc0,0xf9,0x8f,0x0a]
87 vst3.32
{d16
[1], d17
[1], d18
[1]}, [r0]
88 @ CHECK
: vst3.16
{d17
[2], d19
[2], d21
[2]}, [r0] @ encoding
: [0xc0,0xf9,0xaf,0x16]
89 vst3.16
{d17
[2], d19
[2], d21
[2]}, [r0]
90 @ CHECK
: vst3.32
{d16
[0], d18
[0], d20
[0]}, [r0] @ encoding
: [0xc0,0xf9,0x4f,0x0a]
91 vst3.32
{d16
[0], d18
[0], d20
[0]}, [r0]
93 @ CHECK
: vst4.8
{d16
[1], d17
[1], d18
[1], d19
[1]}, [r0:32] @ encoding
: [0xc0,0xf9,0x3f,0x03]
94 vst4.8
{d16
[1], d17
[1], d18
[1], d19
[1]}, [r0:32]
95 @ CHECK
: vst4.16
{d16
[1], d17
[1], d18
[1], d19
[1]}, [r0] @ encoding
: [0xc0,0xf9,0x4f,0x07]
96 vst4.16
{d16
[1], d17
[1], d18
[1], d19
[1]}, [r0]
97 @ CHECK
: vst4.32
{d16
[1], d17
[1], d18
[1], d19
[1]}, [r0:128] @ encoding
: [0xc0,0xf9,0xaf,0x0b]
98 vst4.32
{d16
[1], d17
[1], d18
[1], d19
[1]}, [r0:128]
99 @ CHECK
: vst4.16
{d17
[3], d19
[3], d21
[3], d23
[3]}, [r0:64] @ encoding
: [0xc0,0xf9,0xff,0x17]
100 vst4.16
{d17
[3], d19
[3], d21
[3], d23
[3]}, [r0:64]
101 @ CHECK
: vst4.32
{d17
[0], d19
[0], d21
[0], d23
[0]}, [r0] @ encoding
: [0xc0,0xf9,0x4f,0x1b]
102 vst4.32
{d17
[0], d19
[0], d21
[0], d23
[0]}, [r0]
105 vst2.8
{d8
, d10
}, [r4]
106 @ CHECK
: vst2.8
{d8
, d10
}, [r4] @ encoding
: [0x04,0xf9,0x0f,0x89]