[mips][microMIPS] Implement BC16, BEQZC16 and BNEZC16 instructions
[oota-llvm.git] / test / MC / Disassembler / Mips / micromips32r6.txt
1 # RUN: llvm-mc --disassemble %s -triple=mips-unknown-linux -mcpu=mips32r6 -mattr=micromips | FileCheck %s
2
3 0x00 0xa4 0x19 0x10 # CHECK: add $3, $4, $5
4
5 0x30 0x64 0x04 0xd2 # CHECK: addiu $3, $4, 1234
6
7 0x00 0xa4 0x19 0x50 # CHECK: addu $3, $4, $5
8
9 0x78 0x80 0x00 0x19 # CHECK: addiupc $4, 100
10
11 0x6f 0x83 # CHECK: addiur1sp $7, 4
12
13 0x6f 0x7e # CHECK: addiur2 $6, $7, -1
14
15 0x6f 0x76 # CHECK: addiur2 $6, $7, 12
16
17 0x4c 0xfc # CHECK: addius5 $7, -2
18
19 0x4f 0xff # CHECK: addiusp -1028
20
21 0x4f 0xfd # CHECK: addiusp -1032
22
23 0x4c 0x01 # CHECK: addiusp 1024
24
25 0x4c 0x03 # CHECK: addiusp 1028
26
27 0x4f 0xf9 # CHECK: addiusp -16
28
29 0x78 0x7f 0x00 0x38 # CHECK: aluipc $3, 56
30
31 0x78 0x7e 0xff 0xff # CHECK: auipc $3, -1
32
33 0x00 0x43 0x24 0x1f # CHECK: align $4, $2, $3, 2
34
35 0x00 0xa4 0x1a 0x50 # CHECK: and $3, $4, $5
36
37 0xd0 0x64 0x04 0xd2 # CHECK: andi $3, $4, 1234
38
39 0x10 0x62 0xff 0xe9 # CHECK: aui $3, $2, -23
40
41 0x74 0x40 0x02 0x9a # CHECK: beqzalc $2, 1332
42
43 0x7c 0x40 0x02 0x9a # CHECK: bnezalc $2, 1332
44
45 0xc0 0x42 0x02 0x9a # CHECK: bgezalc $2, 1332
46
47 0xe0 0x40 0x02 0x9a # CHECK: bgtzalc $2, 1332
48
49 0xe0 0x42 0x02 0x9a # CHECK: bltzalc $2, 1332
50
51 0xc0 0x40 0x02 0x9a # CHECK: blezalc $2, 1332
52
53 0xb4 0x37 0x96 0xb8 # CHECK: balc 14572256
54
55 0x94 0x37 0x96 0xb8 # CHECK: bc 14572256
56
57 0xcc 0x42 # CHECK: bc16 132
58
59 0x8f 0x0a # CHECK: beqzc16 $6, 20
60
61 0xaf 0x0a # CHECK: bnezc16 $6, 20
62
63 0x00 0x44 0x0b 0x3c # CHECK: bitswap $4, $2
64
65 0x00 0x00 0x00 0x07 # CHECK: break
66
67 0x00 0x07 0x00 0x07 # CHECK: break 7
68
69 0x00 0x07 0x01 0x47 # CHECK: break 7, 5
70
71 0x20 0x25 0x60 0x08 # CHECK: cache 1, 8($5)
72
73 0x01 0x65 0x4b 0x3c # CHECK: clo $11, $5
74
75 0x03 0x80 0xe8 0x50 # CHECK: clz $sp, $gp
76
77 0x00 0xa4 0x19 0x18 # CHECK: div $3, $4, $5
78
79 0x00 0xa4 0x19 0x98 # CHECK: divu $3, $4, $5
80
81 0x00 0x00 0x18 0x00 # CHECK: ehb
82
83 0x00 0x00 0x57 0x7c # CHECK: ei
84
85 0x00 0x0a 0x57 0x7c # CHECK: ei $10
86
87 0x00 0x00 0xf3 0x7c # CHECK: eret
88
89 0x00 0x01 0xf3 0x7c # CHECK: eretnc
90
91 0x80 0x05 0x01 0x00 # CHECK: jialc $5, 256
92
93 0xa0 0x05 0x01 0x00 # CHECK: jic $5, 256
94
95 0x78 0x48 0x00 0x43 # CHECK: lwpc $2, 268
96
97 0x00 0x43 0x26 0x0f # CHECK: lsa $2, $3, $4, 3
98
99 0x00 0xa4 0x19 0x58 # CHECK: mod $3, $4, $5
100
101 0x00 0xa4 0x19 0xd8 # CHECK: modu $3, $4, $5
102
103 0x00 0xa4 0x18 0x18 # CHECK: mul $3, $4, $5
104
105 0x00 0xa4 0x18 0x58 # CHECK: muh $3, $4, $5
106
107 0x00 0xa4 0x18 0x98 # CHECK: mulu $3, $4, $5
108
109 0x00 0xa4,0x18,0xd8 # CHECK: muhu $3, $4, $5
110
111 0x00 0x00 0x00 0x00 # CHECK: nop
112
113 0x00 0xa4 0x1a 0xd0 # CHECK: nor $3, $4, $5
114
115 0x00,0xa4,0x1a,0x90 # CHECK: or $3, $4, $5
116
117 0x50 0x64 0x04 0xd2 # CHECK: ori $3, $4, 1234
118
119 0x60 0x25 0x20 0x08 # CHECK: pref 1, 8($5)
120
121 0x00 0x83 0x11 0x40 # CHECK: seleqz $2, $3, $4
122
123 0x00 0x83 0x11 0x80 # CHECK: selnez $2, $3, $4
124
125 0x00 0x83 0x38 0x00 # CHECK: sll $4, $3, 7
126
127 0x00 0xa4 0x19 0x90 # CHECK: sub $3, $4, $5
128
129 0x00 0xa4 0x19 0xd0 # CHECK: subu $3, $4, $5
130
131 0x00 0xa4 0x1b 0x10 # CHECK: xor $3, $4, $5
132
133 0x70 0x64 0x04 0xd2 # CHECK: xori $3, $4, 1234
134
135 0x00 0x64 0x2b 0x3c # CHECK: seb $3, $4
136
137 0x00 0x64 0x3b 0x3c # CHECK: seh $3, $4
138
139 0xf8,0xa6,0x00,0x04 # CHECK: sw $5, 4($6)
140
141 0x60,0xa4,0xae,0x08 # CHECK: swe $5, 8($4)
142
143 0x54 0xa4 0x18 0x30 # CHECK: add.s $f3, $f4, $f5
144
145 0x54 0xc4 0x11 0x30 # CHECK: add.d $f2, $f4, $f6
146
147 0x54 0xa4 0x18 0x70 # CHECK: sub.s $f3, $f4, $f5
148
149 0x54 0xc4 0x11 0x70 # CHECK: sub.d $f2, $f4, $f6
150
151 0x54 0xa4 0x18 0xb0 # CHECK: mul.s $f3, $f4, $f5
152
153 0x54 0xc4 0x11 0xb0 # CHECK: mul.d $f2, $f4, $f6
154
155 0x54 0xa4 0x18 0xf0 # CHECK: div.s $f3, $f4, $f5
156
157 0x54 0xc4 0x11 0xf0 # CHECK: div.d $f2, $f4, $f6
158
159 0x54 0xa4 0x19 0xb8 # CHECK: maddf.s $f3, $f4, $f5
160
161 0x54 0xa4 0x1b 0xb8 # CHECK: maddf.d $f3, $f4, $f5
162
163 0x54 0xa4 0x19 0xf8 # CHECK: msubf.s $f3, $f4, $f5
164
165 0x54 0xa4 0x1b 0xf8 # CHECK: msubf.d $f3, $f4, $f5
166
167 0x54,0xc7,0x00,0x7b # CHECK: mov.s $f6, $f7
168
169 0x54,0x86,0x20,0x7b # CHECK: mov.d $f4, $f6
170
171 0x54,0xc7,0x0b,0x7b # CHECK: neg.s $f6, $f7
172
173 0x54,0x86,0x2b,0x7b # CHECK: neg.d $f4, $f6
174
175 0x54 0x64 0x28 0x0b # CHECK: max.s $f5, $f4, $f3
176
177 0x54 0x64 0x2a 0x0b # CHECK: max.d $f5, $f4, $f3
178
179 0x54 0x64 0x28 0x2b # CHECK: maxa.s $f5, $f4, $f3
180
181 0x54 0x64 0x2a 0x2b # CHECK: maxa.d $f5, $f4, $f3
182
183 0x54 0x64 0x28 0x03 # CHECK: min.s $f5, $f4, $f3
184
185 0x54 0x64 0x2a 0x03 # CHECK: min.d $f5, $f4, $f3
186
187 0x54 0x64 0x28 0x23 # CHECK: mina.s $f5, $f4, $f3
188
189 0x54 0x64 0x2a 0x23 # CHECK: mina.d $f5, $f4, $f3
190
191 0x54 0x83 0x10 0x05 # CHECK: cmp.af.s $f2, $f3, $f4
192
193 0x54 0x83 0x10 0x45 # CHECK: cmp.un.s $f2, $f3, $f4
194
195 0x54 0x83 0x10 0x85 # CHECK: cmp.eq.s $f2, $f3, $f4
196
197 0x54 0x83 0x10 0xc5 # CHECK: cmp.ueq.s $f2, $f3, $f4
198
199 0x54 0x83 0x11 0x05 # CHECK: cmp.lt.s $f2, $f3, $f4
200
201 0x54 0x83 0x11 0x45 # CHECK: cmp.ult.s $f2, $f3, $f4
202
203 0x54 0x83 0x11 0x85 # CHECK: cmp.le.s $f2, $f3, $f4
204
205 0x54 0x83 0x11 0xc5 # CHECK: cmp.ule.s $f2, $f3, $f4
206
207 0x54 0x83 0x12 0x05 # CHECK: cmp.saf.s $f2, $f3, $f4
208
209 0x54 0x83 0x12 0x45 # CHECK: cmp.sun.s $f2, $f3, $f4
210
211 0x54 0x83 0x12 0x85 # CHECK: cmp.seq.s $f2, $f3, $f4
212
213 0x54 0x83 0x12 0xc5 # CHECK: cmp.sueq.s $f2, $f3, $f4
214
215 0x54 0x83 0x13 0x05 # CHECK: cmp.slt.s $f2, $f3, $f4
216
217 0x54 0x83 0x13 0x45 # CHECK: cmp.sult.s $f2, $f3, $f4
218
219 0x54 0x83 0x13 0x85 # CHECK: cmp.sle.s $f2, $f3, $f4
220
221 0x54 0x83 0x13 0xc5 # CHECK: cmp.sule.s $f2, $f3, $f4
222
223 0x54 0x83 0x10 0x15 # CHECK: cmp.af.d $f2, $f3, $f4
224
225 0x54 0x83 0x10 0x55 # CHECK: cmp.un.d $f2, $f3, $f4
226
227 0x54 0x83 0x10 0x95 # CHECK: cmp.eq.d $f2, $f3, $f4
228
229 0x54 0x83 0x10 0xd5 # CHECK: cmp.ueq.d $f2, $f3, $f4
230
231 0x54 0x83 0x11 0x15 # CHECK: cmp.lt.d $f2, $f3, $f4
232
233 0x54 0x83 0x11 0x55 # CHECK: cmp.ult.d $f2, $f3, $f4
234
235 0x54 0x83 0x11 0x95 # CHECK: cmp.le.d $f2, $f3, $f4
236
237 0x54 0x83 0x11 0xd5 # CHECK: cmp.ule.d $f2, $f3, $f4
238
239 0x54 0x83 0x12 0x15 # CHECK: cmp.saf.d $f2, $f3, $f4
240
241 0x54 0x83 0x12 0x55 # CHECK: cmp.sun.d $f2, $f3, $f4
242
243 0x54 0x83 0x12 0x95 # CHECK: cmp.seq.d $f2, $f3, $f4
244
245 0x54 0x83 0x12 0xd5 # CHECK: cmp.sueq.d $f2, $f3, $f4
246
247 0x54 0x83 0x13 0x15 # CHECK: cmp.slt.d $f2, $f3, $f4
248
249 0x54 0x83 0x13 0x55 # CHECK: cmp.sult.d $f2, $f3, $f4
250
251 0x54 0x83 0x13 0x95 # CHECK: cmp.sle.d $f2, $f3, $f4
252
253 0x54 0x83 0x13 0xd5 # CHECK: cmp.sule.d $f2, $f3, $f4
254
255 0x54 0x64 0x01 0x3b # CHECK: cvt.l.s $f3, $f4
256
257 0x54 0x64 0x41 0x3b # CHECK: cvt.l.d $f3, $f4
258
259 0x54 0x64 0x09 0x3b # CHECK: cvt.w.s $f3, $f4
260
261 0x54 0x64 0x49 0x3b # CHECK: cvt.w.d $f3, $f4
262
263 0x54 0x44 0x13 0x7b # CHECK: cvt.d.s $f2, $f4
264
265 0x54 0x44 0x33 0x7b # CHECK: cvt.d.w $f2, $f4
266
267 0x54 0x44 0x53 0x7b # CHECK: cvt.d.l $f2, $f4
268
269 0x54,0x44,0x1b,0x7b # CHECK: cvt.s.d $f2, $f4
270
271 0x54,0x64,0x3b,0x7b # CHECK: cvt.s.w $f3, $f4
272
273 0x54,0x64,0x5b,0x7b # CHECK: cvt.s.l $f3, $f4