[mips][microMIPS] Implement LB, LBE, LBU and LBUE instructions
[oota-llvm.git] / test / MC / Disassembler / Hexagon / nv_st.txt
1 # RUN: llvm-mc -triple=hexagon -disassemble < %s | FileCheck %s
2 # Hexagon Programmer's Reference Manual 11.7.2 NV/ST
3
4 # Store new-value byte
5 0x1f 0x40 0x7f 0x70 0x82 0xf5 0xb1 0x3b
6 # CHECK: r31 = r31
7 # CHECK-NEXT: memb(r17 + r21<<#3) = r2.new
8 0x1f 0x40 0x7f 0x70 0x15 0xc2 0xb1 0xa1
9 # CHECK: r31 = r31
10 # CHECK-NEXT: memb(r17+#21) = r2.new
11 0x1f 0x40 0x7f 0x70 0x02 0xe2 0xb1 0xa9
12 # CHECK: r31 = r31
13 # CHECK-NEXT: memb(r17 ++ I:circ(m1)) = r2.new
14 0x1f 0x40 0x7f 0x70 0x28 0xe2 0xb1 0xa9
15 # CHECK: r31 = r31
16 # CHECK-NEXT: memb(r17 ++ #5:circ(m1)) = r2.new
17 0x1f 0x40 0x7f 0x70 0x28 0xc2 0xb1 0xab
18 # CHECK: r31 = r31
19 # CHECK-NEXT: memb(r17++#5) = r2.new
20 0x1f 0x40 0x7f 0x70 0x00 0xe2 0xb1 0xad
21 # CHECK: r31 = r31
22 # CHECK-NEXT: memb(r17++m1) = r2.new
23 0x1f 0x40 0x7f 0x70 0x00 0xe2 0xb1 0xaf
24 # CHECK: r31 = r31
25 # CHECK-NEXT: memb(r17 ++ m1:brev) = r2.new
26
27 # Store new-value byte conditionally
28 0x1f 0x40 0x7f 0x70 0xe2 0xf5 0xb1 0x34
29 # CHECK: r31 = r31
30 # CHECK-NEXT: if (p3) memb(r17+r21<<#3) = r2.new
31 0x1f 0x40 0x7f 0x70 0xe2 0xf5 0xb1 0x35
32 # CHECK: r31 = r31
33 # CHECK-NEXT: if (!p3) memb(r17+r21<<#3) = r2.new
34 0x03 0x40 0x45 0x85 0x1f 0x40 0x7f 0x70 0xe2 0xf5 0xb1 0x36
35 # CHECK: p3 = r5
36 # CHECK-NEXT: r31 = r31
37 # CHECK-NEXT: if (p3.new) memb(r17+r21<<#3) = r2.new
38 0x03 0x40 0x45 0x85 0x1f 0x40 0x7f 0x70 0xe2 0xf5 0xb1 0x37
39 # CHECK: p3 = r5
40 # CHECK-NEXT: r31 = r31
41 # CHECK-NEXT: if (!p3.new) memb(r17+r21<<#3) = r2.new
42 0x1f 0x40 0x7f 0x70 0xab 0xc2 0xb1 0x40
43 # CHECK: r31 = r31
44 # CHECK-NEXT: if (p3) memb(r17+#21) = r2.new
45 0x1f 0x40 0x7f 0x70 0xab 0xc2 0xb1 0x44
46 # CHECK: r31 = r31
47 # CHECK-NEXT: if (!p3) memb(r17+#21) = r2.new
48 0x03 0x40 0x45 0x85 0x1f 0x40 0x7f 0x70 0xab 0xc2 0xb1 0x42
49 # CHECK: p3 = r5
50 # CHECK-NEXT: r31 = r31
51 # CHECK-NEXT: if (p3.new) memb(r17+#21) = r2.new
52 0x03 0x40 0x45 0x85 0x1f 0x40 0x7f 0x70 0xab 0xc2 0xb1 0x46
53 # CHECK: p3 = r5
54 # CHECK-NEXT: r31 = r31
55 # CHECK-NEXT: if (!p3.new) memb(r17+#21) = r2.new
56 0x1f 0x40 0x7f 0x70 0x2b 0xe2 0xb1 0xab
57 # CHECK: r31 = r31
58 # CHECK-NEXT: if (p3) memb(r17++#5) = r2.new
59 0x1f 0x40 0x7f 0x70 0x2f 0xe2 0xb1 0xab
60 # CHECK: r31 = r31
61 # CHECK-NEXT: if (!p3) memb(r17++#5) = r2.new
62 0x03 0x40 0x45 0x85 0x1f 0x40 0x7f 0x70 0xab 0xe2 0xb1 0xab
63 # CHECK: p3 = r5
64 # CHECK-NEXT: r31 = r31
65 # CHECK-NEXT: if (p3.new) memb(r17++#5) = r2.new
66 0x03 0x40 0x45 0x85 0x1f 0x40 0x7f 0x70 0xaf 0xe2 0xb1 0xab
67 # CHECK: p3 = r5
68 # CHECK-NEXT: r31 = r31
69 # CHECK-NEXT: if (!p3.new) memb(r17++#5) = r2.new
70
71 # Store new-value halfword
72 0x1f 0x40 0x7f 0x70 0x8a 0xf5 0xb1 0x3b
73 # CHECK: r31 = r31
74 # CHECK-NEXT: memh(r17 + r21<<#3) = r2.new
75 0x1f 0x40 0x7f 0x70 0x15 0xca 0xb1 0xa1
76 # CHECK: r31 = r31
77 # CHECK-NEXT: memh(r17+#42) = r2.new
78 0x1f 0x40 0x7f 0x70 0x02 0xea 0xb1 0xa9
79 # CHECK: r31 = r31
80 # CHECK-NEXT: memh(r17 ++ I:circ(m1)) = r2.new
81 0x1f 0x40 0x7f 0x70 0x28 0xea 0xb1 0xa9
82 # CHECK: r31 = r31
83 # CHECK-NEXT: memh(r17 ++ #10:circ(m1)) = r2.new
84 0x1f 0x40 0x7f 0x70 0x28 0xca 0xb1 0xab
85 # CHECK: r31 = r31
86 # CHECK-NEXT: memh(r17++#10) = r2.new
87 0x1f 0x40 0x7f 0x70 0x00 0xea 0xb1 0xad
88 # CHECK: r31 = r31
89 # CHECK-NEXT: memh(r17++m1) = r2.new
90 0x1f 0x40 0x7f 0x70 0x00 0xea 0xb1 0xaf
91 # CHECK: r31 = r31
92 # CHECK-NEXT: memh(r17 ++ m1:brev) = r2.new
93
94 # Store new-value halfword conditionally
95 0x1f 0x40 0x7f 0x70 0xea 0xf5 0xb1 0x34
96 # CHECK: r31 = r31
97 # CHECK-NEXT: if (p3) memh(r17+r21<<#3) = r2.new
98 0x1f 0x40 0x7f 0x70 0xea 0xf5 0xb1 0x35
99 # CHECK: r31 = r31
100 # CHECK-NEXT: if (!p3) memh(r17+r21<<#3) = r2.new
101 0x03 0x40 0x45 0x85 0x1f 0x40 0x7f 0x70 0xea 0xf5 0xb1 0x36
102 # CHECK: p3 = r5
103 # CHECK-NEXT: r31 = r31
104 # CHECK-NEXT: if (p3.new) memh(r17+r21<<#3) = r2.new
105 0x03 0x40 0x45 0x85 0x1f 0x40 0x7f 0x70 0xea 0xf5 0xb1 0x37
106 # CHECK: p3 = r5
107 # CHECK-NEXT: r31 = r31
108 # CHECK-NEXT: if (!p3.new) memh(r17+r21<<#3) = r2.new
109 0x1f 0x40 0x7f 0x70 0xab 0xca 0xb1 0x40
110 # CHECK: r31 = r31
111 # CHECK-NEXT: if (p3) memh(r17+#42) = r2.new
112 0x1f 0x40 0x7f 0x70 0xab 0xca 0xb1 0x44
113 # CHECK: r31 = r31
114 # CHECK-NEXT: if (!p3) memh(r17+#42) = r2.new
115 0x03 0x40 0x45 0x85 0x1f 0x40 0x7f 0x70 0xab 0xca 0xb1 0x42
116 # CHECK: p3 = r5
117 # CHECK-NEXT: r31 = r31
118 # CHECK-NEXT: if (p3.new) memh(r17+#42) = r2.new
119 0x03 0x40 0x45 0x85 0x1f 0x40 0x7f 0x70 0xab 0xca 0xb1 0x46
120 # CHECK: p3 = r5
121 # CHECK-NEXT: r31 = r31
122 # CHECK-NEXT: if (!p3.new) memh(r17+#42) = r2.new
123 0x1f 0x40 0x7f 0x70 0x2b 0xea 0xb1 0xab
124 # CHECK: r31 = r31
125 # CHECK-NEXT: if (p3) memh(r17++#10) = r2.new
126 0x1f 0x40 0x7f 0x70 0x2f 0xea 0xb1 0xab
127 # CHECK: r31 = r31
128 # CHECK-NEXT: if (!p3) memh(r17++#10) = r2.new
129 0x03 0x40 0x45 0x85 0x1f 0x40 0x7f 0x70 0xab 0xea 0xb1 0xab
130 # CHECK: p3 = r5
131 # CHECK-NEXT: r31 = r31
132 # CHECK-NEXT: if (p3.new) memh(r17++#10) = r2.new
133 0x03 0x40 0x45 0x85 0x1f 0x40 0x7f 0x70 0xaf 0xea 0xb1 0xab
134 # CHECK: p3 = r5
135 # CHECK-NEXT: r31 = r31
136 # CHECK-NEXT: if (!p3.new) memh(r17++#10) = r2.new
137
138 # Store new-value word
139 0x1f 0x40 0x7f 0x70 0x92 0xf5 0xb1 0x3b
140 # CHECK: r31 = r31
141 # CHECK-NEXT: memw(r17 + r21<<#3) = r2.new
142 0x1f 0x40 0x7f 0x70 0x15 0xd2 0xb1 0xa1
143 # CHECK: r31 = r31
144 # CHECK-NEXT: memw(r17+#84) = r2.new
145 0x1f 0x40 0x7f 0x70 0x28 0xf2 0xb1 0xa9
146 # CHECK: r31 = r31
147 # CHECK-NEXT: memw(r17 ++ #20:circ(m1)) = r2.new
148 0x1f 0x40 0x7f 0x70 0x02 0xf2 0xb1 0xa9
149 # CHECK: r31 = r31
150 # CHECK-NEXT: memw(r17 ++ I:circ(m1)) = r2.new
151 0x1f 0x40 0x7f 0x70 0x28 0xd2 0xb1 0xab
152 # CHECK: r31 = r31
153 # CHECK-NEXT: memw(r17++#20) = r2.new
154 0x1f 0x40 0x7f 0x70 0x00 0xf2 0xb1 0xad
155 # CHECK: r31 = r31
156 # CHECK-NEXT: memw(r17++m1) = r2.new
157 0x1f 0x40 0x7f 0x70 0x00 0xf2 0xb1 0xaf
158 # CHECK: r31 = r31
159 # CHECK-NEXT: memw(r17 ++ m1:brev) = r2.new
160
161 # Store new-value word conditionally
162 0x1f 0x40 0x7f 0x70 0xf2 0xf5 0xb1 0x34
163 # CHECK: r31 = r31
164 # CHECK-NEXT: if (p3) memw(r17+r21<<#3) = r2.new
165 0x1f 0x40 0x7f 0x70 0xf2 0xf5 0xb1 0x35
166 # CHECK: r31 = r31
167 # CHECK-NEXT: if (!p3) memw(r17+r21<<#3) = r2.new
168 0x03 0x40 0x45 0x85 0x1f 0x40 0x7f 0x70 0xf2 0xf5 0xb1 0x36
169 # CHECK: p3 = r5
170 # CHECK-NEXT: r31 = r31
171 # CHECK-NEXT: if (p3.new) memw(r17+r21<<#3) = r2.new
172 0x03 0x40 0x45 0x85 0x1f 0x40 0x7f 0x70 0xf2 0xf5 0xb1 0x37
173 # CHECK: p3 = r5
174 # CHECK-NEXT: r31 = r31
175 # CHECK-NEXT: if (!p3.new) memw(r17+r21<<#3) = r2.new
176 0x1f 0x40 0x7f 0x70 0xab 0xd2 0xb1 0x40
177 # CHECK: r31 = r31
178 # CHECK-NEXT: if (p3) memw(r17+#84) = r2.new
179 0x1f 0x40 0x7f 0x70 0xab 0xd2 0xb1 0x44
180 # CHECK: r31 = r31
181 # CHECK-NEXT: if (!p3) memw(r17+#84) = r2.new
182 0x03 0x40 0x45 0x85 0x1f 0x40 0x7f 0x70 0xab 0xd2 0xb1 0x42
183 # CHECK: p3 = r5
184 # CHECK-NEXT: r31 = r31
185 # CHECK-NEXT: if (p3.new) memw(r17+#84) = r2.new
186 0x03 0x40 0x45 0x85 0x1f 0x40 0x7f 0x70 0xab 0xd2 0xb1 0x46
187 # CHECK: p3 = r5
188 # CHECK-NEXT: r31 = r31
189 # CHECK-NEXT: if (!p3.new) memw(r17+#84) = r2.new
190 0x1f 0x40 0x7f 0x70 0x2b 0xf2 0xb1 0xab
191 # CHECK: r31 = r31
192 # CHECK-NEXT: if (p3) memw(r17++#20) = r2.new
193 0x1f 0x40 0x7f 0x70 0x2f 0xf2 0xb1 0xab
194 # CHECK: r31 = r31
195 # CHECK-NEXT: if (!p3) memw(r17++#20) = r2.new
196 0x03 0x40 0x45 0x85 0x1f 0x40 0x7f 0x70 0xab 0xf2 0xb1 0xab
197 # CHECK: p3 = r5
198 # CHECK-NEXT: r31 = r31
199 # CHECK-NEXT: if (p3.new) memw(r17++#20) = r2.new
200 0x03 0x40 0x45 0x85 0x1f 0x40 0x7f 0x70 0xaf 0xf2 0xb1 0xab
201 # CHECK: p3 = r5
202 # CHECK-NEXT: r31 = r31
203 # CHECK-NEXT: if (!p3.new) memw(r17++#20) = r2.new