ARM64: initial backend import
[oota-llvm.git] / test / MC / Disassembler / ARM64 / logical.txt
1 # RUN: llvm-mc -triple arm64-apple-darwin --disassemble < %s | FileCheck %s
2
3 #==---------------------------------------------------------------------------==
4 # 5.4.2 Logical (immediate)
5 #==---------------------------------------------------------------------------==
6
7 0x00 0x00 0x00 0x12
8 0x00 0x00 0x40 0x92
9 0x41 0x0c 0x00 0x12
10 0x41 0x0c 0x40 0x92
11 0xbf 0xec 0x7c 0x92
12 0x00 0x00 0x00 0x72
13 0x00 0x00 0x40 0xf2
14 0x41 0x0c 0x00 0x72
15 0x41 0x0c 0x40 0xf2
16
17 # CHECK: and  w0, w0, #0x1
18 # CHECK: and  x0, x0, #0x1
19 # CHECK: and  w1, w2, #0xf
20 # CHECK: and  x1, x2, #0xf
21 # CHECK: and  sp, x5, #0xfffffffffffffff0
22 # CHECK: ands w0, w0, #0x1
23 # CHECK: ands x0, x0, #0x1
24 # CHECK: ands w1, w2, #0xf
25 # CHECK: ands x1, x2, #0xf
26
27 0x41 0x00 0x12 0x52
28 0x41 0x00 0x71 0xd2
29
30 # CHECK: eor w1, w2, #0x4000
31 # CHECK: eor x1, x2, #0x8000
32
33 0x41 0x00 0x12 0x32
34 0x41 0x00 0x71 0xb2
35
36 # CHECK: orr w1, w2, #0x4000
37 # CHECK: orr x1, x2, #0x8000
38
39 #==---------------------------------------------------------------------------==
40 # 5.5.3 Logical (shifted register)
41 #==---------------------------------------------------------------------------==
42
43 0x41 0x00 0x03 0x0a
44 0x41 0x00 0x03 0x8a
45 0x41 0x08 0x03 0x0a
46 0x41 0x08 0x03 0x8a
47 0x41 0x08 0x43 0x0a
48 0x41 0x08 0x43 0x8a
49 0x41 0x08 0x83 0x0a
50 0x41 0x08 0x83 0x8a
51 0x41 0x08 0xc3 0x0a
52 0x41 0x08 0xc3 0x8a
53
54 # CHECK: and  w1, w2, w3
55 # CHECK: and  x1, x2, x3
56 # CHECK: and  w1, w2, w3, lsl #2
57 # CHECK: and  x1, x2, x3, lsl #2
58 # CHECK: and  w1, w2, w3, lsr #2
59 # CHECK: and  x1, x2, x3, lsr #2
60 # CHECK: and  w1, w2, w3, asr #2
61 # CHECK: and  x1, x2, x3, asr #2
62 # CHECK: and  w1, w2, w3, ror #2
63 # CHECK: and  x1, x2, x3, ror #2
64
65 0x41 0x00 0x03 0x6a
66 0x41 0x00 0x03 0xea
67 0x41 0x08 0x03 0x6a
68 0x41 0x08 0x03 0xea
69 0x41 0x08 0x43 0x6a
70 0x41 0x08 0x43 0xea
71 0x41 0x08 0x83 0x6a
72 0x41 0x08 0x83 0xea
73 0x41 0x08 0xc3 0x6a
74 0x41 0x08 0xc3 0xea
75
76 # CHECK: ands w1, w2, w3
77 # CHECK: ands x1, x2, x3
78 # CHECK: ands w1, w2, w3, lsl #2
79 # CHECK: ands x1, x2, x3, lsl #2
80 # CHECK: ands w1, w2, w3, lsr #2
81 # CHECK: ands x1, x2, x3, lsr #2
82 # CHECK: ands w1, w2, w3, asr #2
83 # CHECK: ands x1, x2, x3, asr #2
84 # CHECK: ands w1, w2, w3, ror #2
85 # CHECK: ands x1, x2, x3, ror #2
86
87 0x41 0x00 0x23 0x0a
88 0x41 0x00 0x23 0x8a
89 0x41 0x0c 0x23 0x0a
90 0x41 0x0c 0x23 0x8a
91 0x41 0x0c 0x63 0x0a
92 0x41 0x0c 0x63 0x8a
93 0x41 0x0c 0xa3 0x0a
94 0x41 0x0c 0xa3 0x8a
95 0x41 0x0c 0xe3 0x0a
96 0x41 0x0c 0xe3 0x8a
97
98 # CHECK: bic w1, w2, w3
99 # CHECK: bic x1, x2, x3
100 # CHECK: bic w1, w2, w3, lsl #3
101 # CHECK: bic x1, x2, x3, lsl #3
102 # CHECK: bic w1, w2, w3, lsr #3
103 # CHECK: bic x1, x2, x3, lsr #3
104 # CHECK: bic w1, w2, w3, asr #3
105 # CHECK: bic x1, x2, x3, asr #3
106 # CHECK: bic w1, w2, w3, ror #3
107 # CHECK: bic x1, x2, x3, ror #3
108
109 0x41 0x00 0x23 0x6a
110 0x41 0x00 0x23 0xea
111 0x41 0x0c 0x23 0x6a
112 0x41 0x0c 0x23 0xea
113 0x41 0x0c 0x63 0x6a
114 0x41 0x0c 0x63 0xea
115 0x41 0x0c 0xa3 0x6a
116 0x41 0x0c 0xa3 0xea
117 0x41 0x0c 0xe3 0x6a
118 0x41 0x0c 0xe3 0xea
119
120 # CHECK: bics w1, w2, w3
121 # CHECK: bics x1, x2, x3
122 # CHECK: bics w1, w2, w3, lsl #3
123 # CHECK: bics x1, x2, x3, lsl #3
124 # CHECK: bics w1, w2, w3, lsr #3
125 # CHECK: bics x1, x2, x3, lsr #3
126 # CHECK: bics w1, w2, w3, asr #3
127 # CHECK: bics x1, x2, x3, asr #3
128 # CHECK: bics w1, w2, w3, ror #3
129 # CHECK: bics x1, x2, x3, ror #3
130
131 0x41 0x00 0x23 0x4a
132 0x41 0x00 0x23 0xca
133 0x41 0x10 0x23 0x4a
134 0x41 0x10 0x23 0xca
135 0x41 0x10 0x63 0x4a
136 0x41 0x10 0x63 0xca
137 0x41 0x10 0xa3 0x4a
138 0x41 0x10 0xa3 0xca
139 0x41 0x10 0xe3 0x4a
140 0x41 0x10 0xe3 0xca
141
142 # CHECK: eon w1, w2, w3
143 # CHECK: eon x1, x2, x3
144 # CHECK: eon w1, w2, w3, lsl #4
145 # CHECK: eon x1, x2, x3, lsl #4
146 # CHECK: eon w1, w2, w3, lsr #4
147 # CHECK: eon x1, x2, x3, lsr #4
148 # CHECK: eon w1, w2, w3, asr #4
149 # CHECK: eon x1, x2, x3, asr #4
150 # CHECK: eon w1, w2, w3, ror #4
151 # CHECK: eon x1, x2, x3, ror #4
152
153 0x41 0x00 0x03 0x4a
154 0x41 0x00 0x03 0xca
155 0x41 0x14 0x03 0x4a
156 0x41 0x14 0x03 0xca
157 0x41 0x14 0x43 0x4a
158 0x41 0x14 0x43 0xca
159 0x41 0x14 0x83 0x4a
160 0x41 0x14 0x83 0xca
161 0x41 0x14 0xc3 0x4a
162 0x41 0x14 0xc3 0xca
163
164 # CHECK: eor w1, w2, w3
165 # CHECK: eor x1, x2, x3
166 # CHECK: eor w1, w2, w3, lsl #5
167 # CHECK: eor x1, x2, x3, lsl #5
168 # CHECK: eor w1, w2, w3, lsr #5
169 # CHECK: eor x1, x2, x3, lsr #5
170 # CHECK: eor w1, w2, w3, asr #5
171 # CHECK: eor x1, x2, x3, asr #5
172 # CHECK: eor w1, w2, w3, ror #5
173 # CHECK: eor x1, x2, x3, ror #5
174
175 0x41 0x00 0x03 0x2a
176 0x41 0x00 0x03 0xaa
177 0x41 0x18 0x03 0x2a
178 0x41 0x18 0x03 0xaa
179 0x41 0x18 0x43 0x2a
180 0x41 0x18 0x43 0xaa
181 0x41 0x18 0x83 0x2a
182 0x41 0x18 0x83 0xaa
183 0x41 0x18 0xc3 0x2a
184 0x41 0x18 0xc3 0xaa
185
186 # CHECK: orr w1, w2, w3
187 # CHECK: orr x1, x2, x3
188 # CHECK: orr w1, w2, w3, lsl #6
189 # CHECK: orr x1, x2, x3, lsl #6
190 # CHECK: orr w1, w2, w3, lsr #6
191 # CHECK: orr x1, x2, x3, lsr #6
192 # CHECK: orr w1, w2, w3, asr #6
193 # CHECK: orr x1, x2, x3, asr #6
194 # CHECK: orr w1, w2, w3, ror #6
195 # CHECK: orr x1, x2, x3, ror #6
196
197 0x41 0x00 0x23 0x2a
198 0x41 0x00 0x23 0xaa
199 0x41 0x1c 0x23 0x2a
200 0x41 0x1c 0x23 0xaa
201 0x41 0x1c 0x63 0x2a
202 0x41 0x1c 0x63 0xaa
203 0x41 0x1c 0xa3 0x2a
204 0x41 0x1c 0xa3 0xaa
205 0x41 0x1c 0xe3 0x2a
206 0x41 0x1c 0xe3 0xaa
207
208 # CHECK: orn w1, w2, w3
209 # CHECK: orn x1, x2, x3
210 # CHECK: orn w1, w2, w3, lsl #7
211 # CHECK: orn x1, x2, x3, lsl #7
212 # CHECK: orn w1, w2, w3, lsr #7
213 # CHECK: orn x1, x2, x3, lsr #7
214 # CHECK: orn w1, w2, w3, asr #7
215 # CHECK: orn x1, x2, x3, asr #7
216 # CHECK: orn w1, w2, w3, ror #7
217 # CHECK: orn x1, x2, x3, ror #7