[Hexagon] Replacing XTYPE/SHIFT intrinsic patternss. Adding tests and missing instru...
[oota-llvm.git] / test / MC / Disassembler / Hexagon / st.txt
1 # RUN: llvm-mc --triple hexagon -disassemble < %s | FileCheck %s
2
3 0x9e 0xf5 0xd1 0x3b
4 # CHECK: memd(r17 + r21<<#3) = r31:30
5 0x28 0xd4 0xc0 0x48
6 # CHECK: memd(##320) = r21:20
7 0x15 0xd4 0xd1 0xa1
8 # CHECK: memd(r17+#168) = r21:20
9 0x02 0xf4 0xd1 0xa9
10 # CHECK: memd(r17 ++ I:circ(m1)) = r21:20
11 0x28 0xf4 0xd1 0xa9
12 # CHECK: memd(r17 ++ #40:circ(m1)) = r21:20
13 0x28 0xd4 0xd1 0xab
14 # CHECK: memd(r17++#40) = r21:20
15 0x00 0xf4 0xd1 0xad
16 # CHECK: memd(r17++m1) = r21:20
17 0x00 0xf4 0xd1 0xaf
18 # CHECK: memd(r17 ++ m1:brev) = r21:20
19 0xfe 0xf5 0xd1 0x34
20 # CHECK: if (p3) memd(r17+r21<<#3) = r31:30
21 0xfe 0xf5 0xd1 0x35
22 # CHECK: if (!p3) memd(r17+r21<<#3) = r31:30
23 0x03 0x40 0x45 0x85 0xfe 0xf5 0xd1 0x36
24 # CHECK: p3 = r5
25 # CHECK-NEXT: if (p3.new) memd(r17+r21<<#3) = r31:30
26 0x03 0x40 0x45 0x85 0xfe 0xf5 0xd1 0x37
27 # CHECK: p3 = r5
28 # CHECK-NEXT: if (!p3.new) memd(r17+r21<<#3) = r31:30
29 0xab 0xde 0xd1 0x40
30 # CHECK: if (p3) memd(r17+#168) = r31:30
31 0xab 0xde 0xd1 0x44
32 # CHECK: if (!p3) memd(r17+#168) = r31:30
33 0x03 0x40 0x45 0x85 0xab 0xde 0xd1 0x42
34 # CHECK: p3 = r5
35 # CHECK-NEXT: if (p3.new) memd(r17+#168) = r31:30
36 0x03 0x40 0x45 0x85 0xab 0xde 0xd1 0x46
37 # CHECK: p3 = r5
38 # CHECK-NEXT: if (!p3.new) memd(r17+#168) = r31:30
39 0x2b 0xf4 0xd1 0xab
40 # CHECK: if (p3) memd(r17++#40) = r21:20
41 0x2f 0xf4 0xd1 0xab
42 # CHECK: if (!p3) memd(r17++#40) = r21:20
43 0x03 0x40 0x45 0x85 0xab 0xf4 0xd1 0xab
44 # CHECK: p3 = r5
45 # CHECK-NEXT: if (p3.new) memd(r17++#40) = r21:20
46 0x03 0x40 0x45 0x85 0xaf 0xf4 0xd1 0xab
47 # CHECK: p3 = r5
48 # CHECK-NEXT: if (!p3.new) memd(r17++#40) = r21:20
49
50 0x9f 0xf5 0x11 0x3b
51 # CHECK: memb(r17 + r21<<#3) = r31
52 0x9f 0xca 0x11 0x3c
53 # CHECK: memb(r17+#21)=#31
54 0x15 0xd5 0x00 0x48
55 # CHECK: memb(##21) = r21
56 0x15 0xd5 0x11 0xa1
57 # CHECK: memb(r17+#21) = r21
58 0x02 0xf5 0x11 0xa9
59 # CHECK: memb(r17 ++ I:circ(m1)) = r21
60 0x28 0xf5 0x11 0xa9
61 # CHECK: memb(r17 ++ #5:circ(m1)) = r21
62 0x28 0xd5 0x11 0xab
63 # CHECK: memb(r17++#5) = r21
64 0x00 0xf5 0x11 0xad
65 # CHECK: memb(r17++m1) = r21
66 0x00 0xf5 0x11 0xaf
67 # CHECK: memb(r17 ++ m1:brev) = r21
68 0xff 0xf5 0x11 0x34
69 # CHECK: if (p3) memb(r17+r21<<#3) = r31
70 0xff 0xf5 0x11 0x35
71 # CHECK: if (!p3) memb(r17+r21<<#3) = r31
72 0x03 0x40 0x45 0x85 0xff 0xf5 0x11 0x36
73 # CHECK: p3 = r5
74 # CHECK-NEXT: if (p3.new) memb(r17+r21<<#3) = r31
75 0x03 0x40 0x45 0x85 0xff 0xf5 0x11 0x37
76 # CHECK: p3 = r5
77 # CHECK-NEXT: if (!p3.new) memb(r17+r21<<#3) = r31
78 0xff 0xca 0x11 0x38
79 # CHECK: if (p3) memb(r17+#21)=#31
80 0xff 0xca 0x91 0x38
81 # CHECK: if (!p3) memb(r17+#21)=#31
82 0x03 0x40 0x45 0x85 0xff 0xca 0x11 0x39
83 # CHECK: p3 = r5
84 # CHECK-NEXT: if (p3.new) memb(r17+#21)=#31
85 0x03 0x40 0x45 0x85 0xff 0xca 0x91 0x39
86 # CHECK: p3 = r5
87 # CHECK-NEXT: if (!p3.new) memb(r17+#21)=#31
88 0xab 0xdf 0x11 0x40
89 # CHECK: if (p3) memb(r17+#21) = r31
90 0xab 0xdf 0x11 0x44
91 # CHECK: if (!p3) memb(r17+#21) = r31
92 0x03 0x40 0x45 0x85 0xab 0xdf 0x11 0x42
93 # CHECK: p3 = r5
94 # CHECK-NEXT: if (p3.new) memb(r17+#21) = r31
95 0x03 0x40 0x45 0x85 0xab 0xdf 0x11 0x46
96 # CHECK: p3 = r5
97 # CHECK-NEXT: if (!p3.new) memb(r17+#21) = r31
98 0x2b 0xf5 0x11 0xab
99 # CHECK: if (p3) memb(r17++#5) = r21
100 0x2f 0xf5 0x11 0xab
101 # CHECK: if (!p3) memb(r17++#5) = r21
102 0x03 0x40 0x45 0x85 0xab 0xf5 0x11 0xab
103 # CHECK: p3 = r5
104 # CHECK-NEXT: if (p3.new) memb(r17++#5) = r21
105 0x03 0x40 0x45 0x85 0xaf 0xf5 0x11 0xab
106 # CHECK: p3 = r5
107 # CHECK-NEXT: if (!p3.new) memb(r17++#5) = r21
108
109 0x9f 0xf5 0x51 0x3b
110 # CHECK: memh(r17 + r21<<#3) = r31
111 0x9f 0xf5 0x71 0x3b
112 # CHECK: memh(r17 + r21<<#3) = r31.h
113 0x95 0xcf 0x31 0x3c
114 # CHECK: memh(r17+#62)=#21
115 0x2a 0xd5 0x40 0x48
116 # CHECK: memh(##84) = r21
117 0x2a 0xd5 0x60 0x48
118 # CHECK: memh(##84) = r21.h
119 0x15 0xdf 0x51 0xa1
120 # CHECK: memh(r17+#42) = r31
121 0x15 0xdf 0x71 0xa1
122 # CHECK: memh(r17+#42) = r31.h
123 0x02 0xf5 0x51 0xa9
124 # CHECK: memh(r17 ++ I:circ(m1)) = r21
125 0x28 0xf5 0x51 0xa9
126 # CHECK: memh(r17 ++ #10:circ(m1)) = r21
127 0x02 0xf5 0x71 0xa9
128 # CHECK: memh(r17 ++ I:circ(m1)) = r21.h
129 0x28 0xf5 0x71 0xa9
130 # CHECK: memh(r17 ++ #10:circ(m1)) = r21.h
131 0x28 0xd5 0x51 0xab
132 # CHECK: memh(r17++#10) = r21
133 0x28 0xd5 0x71 0xab
134 # CHECK: memh(r17++#10) = r21.h
135 0x00 0xf5 0x51 0xad
136 # CHECK: memh(r17++m1) = r21
137 0x00 0xf5 0x71 0xad
138 # CHECK: memh(r17++m1) = r21.h
139 0x00 0xf5 0x51 0xaf
140 # CHECK: memh(r17 ++ m1:brev) = r21
141 0x00 0xf5 0x71 0xaf
142 # CHECK: memh(r17 ++ m1:brev) = r21.h
143 0xff 0xf5 0x51 0x34
144 # CHECK: if (p3) memh(r17+r21<<#3) = r31
145 0xff 0xf5 0x71 0x34
146 # CHECK: if (p3) memh(r17+r21<<#3) = r31.h
147 0xff 0xf5 0x51 0x35
148 # CHECK: if (!p3) memh(r17+r21<<#3) = r31
149 0xff 0xf5 0x71 0x35
150 # CHECK: if (!p3) memh(r17+r21<<#3) = r31.h
151 0x03 0x40 0x45 0x85 0xff 0xf5 0x51 0x36
152 # CHECK: p3 = r5
153 # CHECK-NEXT: if (p3.new) memh(r17+r21<<#3) = r31
154 0x03 0x40 0x45 0x85 0xff 0xf5 0x71 0x36
155 # CHECK: p3 = r5
156 # CHECK-NEXT: if (p3.new) memh(r17+r21<<#3) = r31.h
157 0x03 0x40 0x45 0x85 0xff 0xf5 0x51 0x37
158 # CHECK: p3 = r5
159 # CHECK-NEXT: if (!p3.new) memh(r17+r21<<#3) = r31
160 0x03 0x40 0x45 0x85 0xff 0xf5 0x71 0x37
161 # CHECK: p3 = r5
162 # CHECK-NEXT: if (!p3.new) memh(r17+r21<<#3) = r31.h
163 0xf5 0xcf 0x31 0x38
164 # CHECK: if (p3) memh(r17+#62)=#21
165 0xf5 0xcf 0xb1 0x38
166 # CHECK: if (!p3) memh(r17+#62)=#21
167 0x03 0x40 0x45 0x85 0xf5 0xcf 0x31 0x39
168 # CHECK: p3 = r5
169 # CHECK-NEXT: if (p3.new) memh(r17+#62)=#21
170 0x03 0x40 0x45 0x85 0xf5 0xcf 0xb1 0x39
171 # CHECK: p3 = r5
172 # CHECK-NEXT: if (!p3.new) memh(r17+#62)=#21
173 0xfb 0xd5 0x51 0x40
174 # CHECK: if (p3) memh(r17+#62) = r21
175 0xfb 0xd5 0x71 0x40
176 # CHECK: if (p3) memh(r17+#62) = r21.h
177 0xfb 0xd5 0x51 0x44
178 # CHECK: if (!p3) memh(r17+#62) = r21
179 0xfb 0xd5 0x71 0x44
180 # CHECK: if (!p3) memh(r17+#62) = r21.h
181 0x03 0x40 0x45 0x85 0xfb 0xd5 0x51 0x42
182 # CHECK: p3 = r5
183 # CHECK-NEXT: if (p3.new) memh(r17+#62) = r21
184 0x03 0x40 0x45 0x85 0xfb 0xd5 0x71 0x42
185 # CHECK: p3 = r5
186 # CHECK-NEXT: if (p3.new) memh(r17+#62) = r21.h
187 0x03 0x40 0x45 0x85 0xfb 0xd5 0x51 0x46
188 # CHECK: p3 = r5
189 # CHECK-NEXT: if (!p3.new) memh(r17+#62) = r21
190 0x03 0x40 0x45 0x85 0xfb 0xd5 0x71 0x46
191 # CHECK: p3 = r5
192 # CHECK-NEXT: if (!p3.new) memh(r17+#62) = r21.h
193 0x2b 0xf5 0x51 0xab
194 # CHECK: if (p3) memh(r17++#10) = r21
195 0x2f 0xf5 0x51 0xab
196 # CHECK: if (!p3) memh(r17++#10) = r21
197 0x03 0x40 0x45 0x85 0xab 0xf5 0x51 0xab
198 # CHECK: p3 = r5
199 # CHECK-NEXT: if (p3.new) memh(r17++#10) = r21
200 0x03 0x40 0x45 0x85 0xaf 0xf5 0x51 0xab 
201 # CHECK: p3 = r5
202 # CHECK-NEXT: if (!p3.new) memh(r17++#10) = r21
203 0x2b 0xf5 0x71 0xab
204 # CHECK: if (p3) memh(r17++#10) = r21.h
205 0x2f 0xf5 0x71 0xab
206 # CHECK: if (!p3) memh(r17++#10) = r21.h
207 0x03 0x40 0x45 0x85 0xab 0xf5 0x71 0xab
208 # CHECK: p3 = r5
209 # CHECK-NEXT: if (p3.new) memh(r17++#10) = r21.h
210 0x03 0x40 0x45 0x85 0xaf 0xf5 0x71 0xab
211 # CHECK: p3 = r5
212 # CHECK-NEXT: if (!p3.new) memh(r17++#10) = r21.h
213
214 0x9f 0xf5 0x91 0x3b
215 # CHECK: memw(r17 + r21<<#3) = r31
216 0x9f 0xca 0x51 0x3c
217 # CHECK: memw(r17+#84)=#31
218 0x15 0xdf 0x91 0xa1
219 # CHECK: memw(r17+#84) = r31
220 0x14 0xd5 0x80 0x48
221 # CHECK: memw(##80) = r21
222 0x02 0xf5 0x91 0xa9
223 # CHECK: memw(r17 ++ I:circ(m1)) = r21
224 0x28 0xf5 0x91 0xa9
225 # CHECK: memw(r17 ++ #20:circ(m1)) = r21
226 0x28 0xd5 0x91 0xab
227 # CHECK: memw(r17++#20) = r21
228 0x00 0xf5 0x91 0xad
229 # CHECK: memw(r17++m1) = r21
230 0x00 0xf5 0x91 0xaf
231 # CHECK: memw(r17 ++ m1:brev) = r21
232 0xff 0xf5 0x91 0x34
233 # CHECK: if (p3) memw(r17+r21<<#3) = r31
234 0xff 0xf5 0x91 0x35
235 # CHECK: if (!p3) memw(r17+r21<<#3) = r31
236 0x03 0x40 0x45 0x85 0xff 0xf5 0x91 0x36
237 # CHECK: p3 = r5
238 # CHECK-NEXT: if (p3.new) memw(r17+r21<<#3) = r31
239 0x03 0x40 0x45 0x85 0xff 0xf5 0x91 0x37
240 # CHECK: p3 = r5
241 # CHECK-NEXT: if (!p3.new) memw(r17+r21<<#3) = r31
242 0xff 0xca 0x51 0x38
243 # CHECK: if (p3) memw(r17+#84)=#31
244 0xff 0xca 0xd1 0x38
245 # CHECK: if (!p3) memw(r17+#84)=#31
246 0x03 0x40 0x45 0x85 0xff 0xca 0x51 0x39
247 # CHECK: p3 = r5
248 # CHECK-NEXT: if (p3.new) memw(r17+#84)=#31
249 0x03 0x40 0x45 0x85 0xff 0xca 0xd1 0x39
250 # CHECK: p3 = r5
251 # CHECK-NEXT: if (!p3.new) memw(r17+#84)=#31
252 0xab 0xdf 0x91 0x40
253 # CHECK: if (p3) memw(r17+#84) = r31
254 0xab 0xdf 0x91 0x44 
255 # CHECK: if (!p3) memw(r17+#84) = r31
256 0x03 0x40 0x45 0x85 0xab 0xdf 0x91 0x42
257 # CHECK: p3 = r5
258 # CHECK-NEXT: if (p3.new) memw(r17+#84) = r31
259 0x03 0x40 0x45 0x85 0xab 0xdf 0x91 0x46
260 # CHECK: p3 = r5
261 # CHECK-NEXT: if (!p3.new) memw(r17+#84) = r31
262 0x2b 0xf5 0x91 0xab
263 # CHECK: if (p3) memw(r17++#20) = r21
264 0x2f 0xf5 0x91 0xab
265 # CHECK: if (!p3) memw(r17++#20) = r21
266 0x03 0x40 0x45 0x85 0xaf 0xf5 0x91 0xab
267 # CHECK: p3 = r5
268 # CHECK-NEXT: if (!p3.new) memw(r17++#20) = r21
269 0x03 0x40 0x45 0x85 0xab 0xf5 0x91 0xab
270 # CHECK: p3 = r5
271 # CHECK-NEXT: if (p3.new) memw(r17++#20) = r21
272
273 0x1f 0xc0 0x9d 0xa0
274 # CHECK: allocframe(#248)