• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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
50x1f 0x40 0x7f 0x70 0x82 0xf5 0xb1 0x3b
6# CHECK: r31 = r31
7# CHECK-NEXT: memb(r17 + r21<<#3) = r31.new
80x1f 0x40 0x7f 0x70 0x11 0xc2 0xa0 0x48
9# CHECK: r31 = r31
10# CHECK-NEXT: memb(#17) = r31.new
110x1f 0x40 0x7f 0x70 0x15 0xc2 0xb1 0xa1
12# CHECK: r31 = r31
13# CHECK-NEXT: memb(r17+#21) = r31.new
140x1f 0x40 0x7f 0x70 0x02 0xe2 0xb1 0xa9
15# CHECK: r31 = r31
16# CHECK-NEXT: memb(r17 ++ I:circ(m1)) = r31.new
170x1f 0x40 0x7f 0x70 0x28 0xe2 0xb1 0xa9
18# CHECK: r31 = r31
19# CHECK-NEXT: memb(r17 ++ #5:circ(m1)) = r31.new
200x1f 0x40 0x7f 0x70 0x28 0xc2 0xb1 0xab
21# CHECK: r31 = r31
22# CHECK-NEXT: memb(r17++#5) = r31.new
230x1f 0x40 0x7f 0x70 0x00 0xe2 0xb1 0xad
24# CHECK: r31 = r31
25# CHECK-NEXT: memb(r17++m1) = r31.new
260x1f 0x40 0x7f 0x70 0x00 0xe2 0xb1 0xaf
27# CHECK: r31 = r31
28# CHECK-NEXT: memb(r17 ++ m1:brev) = r31.new
29
30# Store new-value byte conditionally
310x1f 0x40 0x7f 0x70 0xe2 0xf5 0xb1 0x34
32# CHECK: r31 = r31
33# CHECK-NEXT: if (p3) memb(r17+r21<<#3) = r31.new
340x1f 0x40 0x7f 0x70 0xe2 0xf5 0xb1 0x35
35# CHECK: r31 = r31
36# CHECK-NEXT: if (!p3) memb(r17+r21<<#3) = r31.new
370x03 0x40 0x45 0x85 0x1f 0x40 0x7f 0x70 0xe2 0xf5 0xb1 0x36
38# CHECK: p3 = r5
39# CHECK-NEXT: r31 = r31
40# CHECK-NEXT: if (p3.new) memb(r17+r21<<#3) = r31.new
410x03 0x40 0x45 0x85 0x1f 0x40 0x7f 0x70 0xe2 0xf5 0xb1 0x37
42# CHECK: p3 = r5
43# CHECK-NEXT: r31 = r31
44# CHECK-NEXT: if (!p3.new) memb(r17+r21<<#3) = r31.new
450x1f 0x40 0x7f 0x70 0xab 0xc2 0xb1 0x40
46# CHECK: r31 = r31
47# CHECK-NEXT: if (p3) memb(r17+#21) = r31.new
480x1f 0x40 0x7f 0x70 0xab 0xc2 0xb1 0x44
49# CHECK: r31 = r31
50# CHECK-NEXT: if (!p3) memb(r17+#21) = r31.new
510x03 0x40 0x45 0x85 0x1f 0x40 0x7f 0x70 0xab 0xc2 0xb1 0x42
52# CHECK: p3 = r5
53# CHECK-NEXT: r31 = r31
54# CHECK-NEXT: if (p3.new) memb(r17+#21) = r31.new
550x03 0x40 0x45 0x85 0x1f 0x40 0x7f 0x70 0xab 0xc2 0xb1 0x46
56# CHECK: p3 = r5
57# CHECK-NEXT: r31 = r31
58# CHECK-NEXT: if (!p3.new) memb(r17+#21) = r31.new
590x1f 0x40 0x7f 0x70 0x2b 0xe2 0xb1 0xab
60# CHECK: r31 = r31
61# CHECK-NEXT: if (p3) memb(r17++#5) = r31.new
620x1f 0x40 0x7f 0x70 0x2f 0xe2 0xb1 0xab
63# CHECK: r31 = r31
64# CHECK-NEXT: if (!p3) memb(r17++#5) = r31.new
650x03 0x40 0x45 0x85 0x1f 0x40 0x7f 0x70 0xab 0xe2 0xb1 0xab
66# CHECK: p3 = r5
67# CHECK-NEXT: r31 = r31
68# CHECK-NEXT: if (p3.new) memb(r17++#5) = r31.new
690x03 0x40 0x45 0x85 0x1f 0x40 0x7f 0x70 0xaf 0xe2 0xb1 0xab
70# CHECK: p3 = r5
71# CHECK-NEXT: r31 = r31
72# CHECK-NEXT: if (!p3.new) memb(r17++#5) = r31.new
73
74# Store new-value halfword
750x1f 0x40 0x7f 0x70 0x8a 0xf5 0xb1 0x3b
76# CHECK: r31 = r31
77# CHECK-NEXT: memh(r17 + r21<<#3) = r31.new
780x1f 0x40 0x7f 0x70 0x15 0xca 0xa0 0x48
79# CHECK: r31 = r31
80# CHECK-NEXT: memh(#42) = r31.new
810x1f 0x40 0x7f 0x70 0x15 0xca 0xb1 0xa1
82# CHECK: r31 = r31
83# CHECK-NEXT: memh(r17+#42) = r31.new
840x1f 0x40 0x7f 0x70 0x02 0xea 0xb1 0xa9
85# CHECK: r31 = r31
86# CHECK-NEXT: memh(r17 ++ I:circ(m1)) = r31.new
870x1f 0x40 0x7f 0x70 0x28 0xea 0xb1 0xa9
88# CHECK: r31 = r31
89# CHECK-NEXT: memh(r17 ++ #10:circ(m1)) = r31.new
900x1f 0x40 0x7f 0x70 0x28 0xca 0xb1 0xab
91# CHECK: r31 = r31
92# CHECK-NEXT: memh(r17++#10) = r31.new
930x1f 0x40 0x7f 0x70 0x00 0xea 0xb1 0xad
94# CHECK: r31 = r31
95# CHECK-NEXT: memh(r17++m1) = r31.new
960x1f 0x40 0x7f 0x70 0x00 0xea 0xb1 0xaf
97# CHECK: r31 = r31
98# CHECK-NEXT: memh(r17 ++ m1:brev) = r31.new
99
100# Store new-value halfword conditionally
1010x1f 0x40 0x7f 0x70 0xea 0xf5 0xb1 0x34
102# CHECK: r31 = r31
103# CHECK-NEXT: if (p3) memh(r17+r21<<#3) = r31.new
1040x1f 0x40 0x7f 0x70 0xea 0xf5 0xb1 0x35
105# CHECK: r31 = r31
106# CHECK-NEXT: if (!p3) memh(r17+r21<<#3) = r31.new
1070x03 0x40 0x45 0x85 0x1f 0x40 0x7f 0x70 0xea 0xf5 0xb1 0x36
108# CHECK: p3 = r5
109# CHECK-NEXT: r31 = r31
110# CHECK-NEXT: if (p3.new) memh(r17+r21<<#3) = r31.new
1110x03 0x40 0x45 0x85 0x1f 0x40 0x7f 0x70 0xea 0xf5 0xb1 0x37
112# CHECK: p3 = r5
113# CHECK-NEXT: r31 = r31
114# CHECK-NEXT: if (!p3.new) memh(r17+r21<<#3) = r31.new
1150x1f 0x40 0x7f 0x70 0xab 0xca 0xb1 0x40
116# CHECK: r31 = r31
117# CHECK-NEXT: if (p3) memh(r17+#42) = r31.new
1180x1f 0x40 0x7f 0x70 0xab 0xca 0xb1 0x44
119# CHECK: r31 = r31
120# CHECK-NEXT: if (!p3) memh(r17+#42) = r31.new
1210x03 0x40 0x45 0x85 0x1f 0x40 0x7f 0x70 0xab 0xca 0xb1 0x42
122# CHECK: p3 = r5
123# CHECK-NEXT: r31 = r31
124# CHECK-NEXT: if (p3.new) memh(r17+#42) = r31.new
1250x03 0x40 0x45 0x85 0x1f 0x40 0x7f 0x70 0xab 0xca 0xb1 0x46
126# CHECK: p3 = r5
127# CHECK-NEXT: r31 = r31
128# CHECK-NEXT: if (!p3.new) memh(r17+#42) = r31.new
1290x1f 0x40 0x7f 0x70 0x2b 0xea 0xb1 0xab
130# CHECK: r31 = r31
131# CHECK-NEXT: if (p3) memh(r17++#10) = r31.new
1320x1f 0x40 0x7f 0x70 0x2f 0xea 0xb1 0xab
133# CHECK: r31 = r31
134# CHECK-NEXT: if (!p3) memh(r17++#10) = r31.new
1350x03 0x40 0x45 0x85 0x1f 0x40 0x7f 0x70 0xab 0xea 0xb1 0xab
136# CHECK: p3 = r5
137# CHECK-NEXT: r31 = r31
138# CHECK-NEXT: if (p3.new) memh(r17++#10) = r31.new
1390x03 0x40 0x45 0x85 0x1f 0x40 0x7f 0x70 0xaf 0xea 0xb1 0xab
140# CHECK: p3 = r5
141# CHECK-NEXT: r31 = r31
142# CHECK-NEXT: if (!p3.new) memh(r17++#10) = r31.new
143
144# Store new-value word
1450x1f 0x40 0x7f 0x70 0x92 0xf5 0xb1 0x3b
146# CHECK: r31 = r31
147# CHECK-NEXT: memw(r17 + r21<<#3) = r31.new
1480x1f 0x40 0x7f 0x70 0x15 0xd2 0xa0 0x48
149# CHECK: r31 = r31
150# CHECK-NEXT: memw(#84) = r31.new
1510x1f 0x40 0x7f 0x70 0x15 0xd2 0xb1 0xa1
152# CHECK: r31 = r31
153# CHECK-NEXT: memw(r17+#84) = r31.new
1540x1f 0x40 0x7f 0x70 0x02 0xf2 0xb1 0xa9
155# CHECK: r31 = r31
156# CHECK-NEXT: memw(r17 ++ I:circ(m1)) = r31.new
1570x1f 0x40 0x7f 0x70 0x28 0xf2 0xb1 0xa9
158# CHECK: r31 = r31
159# CHECK-NEXT: memw(r17 ++ #20:circ(m1)) = r31.new
1600x1f 0x40 0x7f 0x70 0x28 0xd2 0xb1 0xab
161# CHECK: r31 = r31
162# CHECK-NEXT: memw(r17++#20) = r31.new
1630x1f 0x40 0x7f 0x70 0x00 0xf2 0xb1 0xad
164# CHECK: r31 = r31
165# CHECK-NEXT: memw(r17++m1) = r31.new
1660x1f 0x40 0x7f 0x70 0x00 0xf2 0xb1 0xaf
167# CHECK: r31 = r31
168# CHECK-NEXT: memw(r17 ++ m1:brev) = r31.new
169
170# Store new-value word conditionally
1710x1f 0x40 0x7f 0x70 0xf2 0xf5 0xb1 0x34
172# CHECK: r31 = r31
173# CHECK-NEXT: if (p3) memw(r17+r21<<#3) = r31.new
1740x1f 0x40 0x7f 0x70 0xf2 0xf5 0xb1 0x35
175# CHECK: r31 = r31
176# CHECK-NEXT: if (!p3) memw(r17+r21<<#3) = r31.new
1770x03 0x40 0x45 0x85 0x1f 0x40 0x7f 0x70 0xf2 0xf5 0xb1 0x36
178# CHECK: p3 = r5
179# CHECK-NEXT: r31 = r31
180# CHECK-NEXT: if (p3.new) memw(r17+r21<<#3) = r31.new
1810x03 0x40 0x45 0x85 0x1f 0x40 0x7f 0x70 0xf2 0xf5 0xb1 0x37
182# CHECK: p3 = r5
183# CHECK-NEXT: r31 = r31
184# CHECK-NEXT: if (!p3.new) memw(r17+r21<<#3) = r31.new
1850x1f 0x40 0x7f 0x70 0xab 0xd2 0xb1 0x40
186# CHECK: r31 = r31
187# CHECK-NEXT: if (p3) memw(r17+#84) = r31.new
1880x1f 0x40 0x7f 0x70 0xab 0xd2 0xb1 0x44
189# CHECK: r31 = r31
190# CHECK-NEXT: if (!p3) memw(r17+#84) = r31.new
1910x03 0x40 0x45 0x85 0x1f 0x40 0x7f 0x70 0xab 0xd2 0xb1 0x42
192# CHECK: p3 = r5
193# CHECK-NEXT: r31 = r31
194# CHECK-NEXT: if (p3.new) memw(r17+#84) = r31.new
1950x03 0x40 0x45 0x85 0x1f 0x40 0x7f 0x70 0xab 0xd2 0xb1 0x46
196# CHECK: p3 = r5
197# CHECK-NEXT: r31 = r31
198# CHECK-NEXT: if (!p3.new) memw(r17+#84) = r31.new
1990x1f 0x40 0x7f 0x70 0x2b 0xf2 0xb1 0xab
200# CHECK: r31 = r31
201# CHECK-NEXT: if (p3) memw(r17++#20) = r31.new
2020x1f 0x40 0x7f 0x70 0x2f 0xf2 0xb1 0xab
203# CHECK: r31 = r31
204# CHECK-NEXT: if (!p3) memw(r17++#20) = r31.new
2050x03 0x40 0x45 0x85 0x1f 0x40 0x7f 0x70 0xab 0xf2 0xb1 0xab
206# CHECK: p3 = r5
207# CHECK-NEXT: r31 = r31
208# CHECK-NEXT: if (p3.new) memw(r17++#20) = r31.new
2090x03 0x40 0x45 0x85 0x1f 0x40 0x7f 0x70 0xaf 0xf2 0xb1 0xab
210# CHECK: p3 = r5
211# CHECK-NEXT: r31 = r31
212# CHECK-NEXT: if (!p3.new) memw(r17++#20) = r31.new
213