1 # RUN: llvm-mc -triple mips64el-unknown-linux -show-encoding -print-imm-hex %s | FileCheck %s
7 # CHECK-NEXT: lui $1, 0x8000 # encoding: [0x00,0x80,0x01,0x3c]
8 # CHECK-NEXT: add $4, $4, $1 # encoding: [0x20,0x20,0x81,0x00]
10 # CHECK-NEXT: lui $1, 0xffff # encoding: [0xff,0xff,0x01,0x3c]
11 # CHECK-NEXT: ori $1, $1, 0x7fff # encoding: [0xff,0x7f,0x21,0x34]
12 # CHECK-NEXT: add $4, $4, $1 # encoding: [0x20,0x20,0x81,0x00]
14 # CHECK-NEXT: addi $4, $4, -0x8000 # encoding: [0x00,0x80,0x84,0x20]
16 # CHECK-NEXT: addi $4, $4, 0x0 # encoding: [0x00,0x00,0x84,0x20]
18 # CHECK-NEXT: ori $1, $zero, 0xffff # encoding: [0xff,0xff,0x01,0x34]
19 # CHECK-NEXT: add $4, $4, $1 # encoding: [0x20,0x20,0x81,0x00]
21 # CHECK-NEXT: lui $1, 0x1 # encoding: [0x01,0x00,0x01,0x3c]
22 # CHECK-NEXT: add $4, $4, $1 # encoding: [0x20,0x20,0x81,0x00]
23 add $
4, 0xFFFFFFFF # This should be sign-extended because it's a 32-bit add
24 # CHECK-NEXT: addi $4, $4, -0x1 # encoding: [0xff,0xff,0x84,0x20]
25 add $
4, ~
(0xf0000000|
0x0f000000|
0x000000f0)
26 # CHECK-NEXT: lui $1, 0xff # encoding: [0xff,0x00,0x01,0x3c]
27 # CHECK-NEXT: ori $1, $1, 0xff0f # encoding: [0x0f,0xff,0x21,0x34]
28 # CHECK-NEXT: add $4, $4, $1 # encoding: [0x20,0x20,0x81,0x00]
30 add $
4, $
5, -0x80000000
31 # CHECK: lui $4, 0x8000 # encoding: [0x00,0x80,0x04,0x3c]
32 # CHECK-NEXT: add $4, $4, $5 # encoding: [0x20,0x20,0x85,0x00]
34 # CHECK-NEXT: lui $4, 0xffff # encoding: [0xff,0xff,0x04,0x3c]
35 # CHECK-NEXT: ori $4, $4, 0x7fff # encoding: [0xff,0x7f,0x84,0x34]
36 # CHECK-NEXT: add $4, $4, $5 # encoding: [0x20,0x20,0x85,0x00]
38 # CHECK-NEXT: addi $4, $5, -0x8000 # encoding: [0x00,0x80,0xa4,0x20]
40 # CHECK-NEXT: addi $4, $5, 0x0 # encoding: [0x00,0x00,0xa4,0x20]
42 # CHECK-NEXT: ori $4, $zero, 0xffff # encoding: [0xff,0xff,0x04,0x34]
43 # CHECK-NEXT: add $4, $4, $5 # encoding: [0x20,0x20,0x85,0x00]
45 # CHECK-NEXT: lui $4, 0x1 # encoding: [0x01,0x00,0x04,0x3c]
46 # CHECK-NEXT: add $4, $4, $5 # encoding: [0x20,0x20,0x85,0x00]
47 add $
4, $
5, 0xFFFFFFFF # This should be sign-extended because it's a 32-bit addi
48 # CHECK-NEXT: addi $4, $5, -0x1 # encoding: [0xff,0xff,0xa4,0x20]
49 add $
4, $
5, ~
(0xf0000000|
0x0f000000|
0x000000f0)
50 # CHECK-NEXT: lui $4, 0xff # encoding: [0xff,0x00,0x04,0x3c]
51 # CHECK-NEXT: ori $4, $4, 0xff0f # encoding: [0x0f,0xff,0x84,0x34]
52 # CHECK-NEXT: add $4, $4, $5 # encoding: [0x20,0x20,0x85,0x00]
56 # CHECK: lui $1, 0x8000 # encoding: [0x00,0x80,0x01,0x3c]
57 # CHECK-NEXT: addu $4, $4, $1 # encoding: [0x21,0x20,0x81,0x00]
59 # CHECK-NEXT: lui $1, 0xffff # encoding: [0xff,0xff,0x01,0x3c]
60 # CHECK-NEXT: ori $1, $1, 0x7fff # encoding: [0xff,0x7f,0x21,0x34]
61 # CHECK-NEXT: addu $4, $4, $1 # encoding: [0x21,0x20,0x81,0x00]
63 # CHECK-NEXT: addiu $4, $4, -0x8000 # encoding: [0x00,0x80,0x84,0x24]
65 # CHECK-NEXT: addiu $4, $4, 0x0 # encoding: [0x00,0x00,0x84,0x24]
67 # CHECK-NEXT: ori $1, $zero, 0xffff # encoding: [0xff,0xff,0x01,0x34]
68 # CHECK-NEXT: addu $4, $4, $1 # encoding: [0x21,0x20,0x81,0x00]
70 # CHECK-NEXT: lui $1, 0x1 # encoding: [0x01,0x00,0x01,0x3c]
71 # CHECK-NEXT: addu $4, $4, $1 # encoding: [0x21,0x20,0x81,0x00]
72 addu $
4, 0xFFFFFFFF # This should be sign-extended because it's a 32-bit add
73 # CHECK-NEXT: addiu $4, $4, -0x1 # encoding: [0xff,0xff,0x84,0x24]
74 addu $
4, ~
(0xf0000000|
0x0f000000|
0x000000f0)
75 # CHECK-NEXT: lui $1, 0xff # encoding: [0xff,0x00,0x01,0x3c]
76 # CHECK-NEXT: ori $1, $1, 0xff0f # encoding: [0x0f,0xff,0x21,0x34]
77 # CHECK-NEXT: addu $4, $4, $1 # encoding: [0x21,0x20,0x81,0x00]
79 addu $
4, $
5, -0x80000000
80 # CHECK: lui $4, 0x8000 # encoding: [0x00,0x80,0x04,0x3c]
81 # CHECK-NEXT: addu $4, $4, $5 # encoding: [0x21,0x20,0x85,0x00]
83 # CHECK-NEXT: lui $4, 0xffff # encoding: [0xff,0xff,0x04,0x3c]
84 # CHECK-NEXT: ori $4, $4, 0x7fff # encoding: [0xff,0x7f,0x84,0x34]
85 # CHECK-NEXT: addu $4, $4, $5 # encoding: [0x21,0x20,0x85,0x00]
87 # CHECK-NEXT: addiu $4, $5, -0x8000 # encoding: [0x00,0x80,0xa4,0x24]
89 # CHECK-NEXT: addiu $4, $5, 0x0 # encoding: [0x00,0x00,0xa4,0x24]
91 # CHECK-NEXT: ori $4, $zero, 0xffff # encoding: [0xff,0xff,0x04,0x34]
92 # CHECK-NEXT: addu $4, $4, $5 # encoding: [0x21,0x20,0x85,0x00]
94 # CHECK-NEXT: lui $4, 0x1 # encoding: [0x01,0x00,0x04,0x3c]
95 # CHECK-NEXT: addu $4, $4, $5 # encoding: [0x21,0x20,0x85,0x00]
96 addu $
4, $
5, 0xFFFFFFFF # This should be sign-extended because it's a 32-bit add
97 # CHECK-NEXT: addiu $4, $5, -0x1 # encoding: [0xff,0xff,0xa4,0x24]
98 addu $
4, $
5, ~
(0xf0000000|
0x0f000000|
0x000000f0)
99 # CHECK-NEXT: lui $4, 0xff # encoding: [0xff,0x00,0x04,0x3c]
100 # CHECK-NEXT: ori $4, $4, 0xff0f # encoding: [0x0f,0xff,0x84,0x34]
101 # CHECK-NEXT: addu $4, $4, $5 # encoding: [0x21,0x20,0x85,0x00]
105 # CHECK: lui $1, 0x8000 # encoding: [0x00,0x80,0x01,0x3c]
106 # CHECK-NEXT: and $4, $4, $1 # encoding: [0x24,0x20,0x81,0x00]
108 # CHECK-NEXT: lui $1, 0xffff # encoding: [0xff,0xff,0x01,0x3c]
109 # CHECK-NEXT: ori $1, $1, 0x7fff # encoding: [0xff,0x7f,0x21,0x34]
110 # CHECK-NEXT: and $4, $4, $1 # encoding: [0x24,0x20,0x81,0x00]
112 # CHECK-NEXT: addiu $1, $zero, -0x8000 # encoding: [0x00,0x80,0x01,0x24]
113 # CHECK-NEXT: and $4, $4, $1 # encoding: [0x24,0x20,0x81,0x00]
115 # CHECK-NEXT: andi $4, $4, 0x0 # encoding: [0x00,0x00,0x84,0x30]
117 # CHECK-NEXT: andi $4, $4, 0xffff # encoding: [0xff,0xff,0x84,0x30]
119 # CHECK-NEXT: lui $1, 0x1 # encoding: [0x01,0x00,0x01,0x3c]
120 # CHECK-NEXT: and $4, $4, $1 # encoding: [0x24,0x20,0x81,0x00]
122 # CHECK-NEXT: lui $1, 0xffff # encoding: [0xff,0xff,0x01,0x3c]
123 # CHECK-NEXT: dsrl32 $1, $1, 0x0 # encoding: [0x3e,0x08,0x01,0x00]
124 # CHECK-NEXT: and $4, $4, $1 # encoding: [0x24,0x20,0x81,0x00]
126 # CHECK-NEXT: ori $1, $zero, 0xf000 # encoding: [0x00,0xf0,0x01,0x34]
127 # CHECK-NEXT: dsll $1, $1, 0x10 # encoding: [0x38,0x0c,0x01,0x00]
128 # CHECK-NEXT: and $4, $4, $1 # encoding: [0x24,0x20,0x81,0x00]
130 # CHECK-NEXT: lui $1, 0x7fff # encoding: [0xff,0x7f,0x01,0x3c]
131 # CHECK-NEXT: ori $1, $1, 0xffff # encoding: [0xff,0xff,0x21,0x34]
132 # CHECK-NEXT: and $4, $4, $1 # encoding: [0x24,0x20,0x81,0x00]
133 and $
4, 0x7FFFFFFFFFFFFFFF
134 # CHECK-NEXT: lui $1, 0x7fff # encoding: [0xff,0x7f,0x01,0x3c]
135 # CHECK-NEXT: ori $1, $1, 0xffff # encoding: [0xff,0xff,0x21,0x34]
136 # CHECK-NEXT: dsll $1, $1, 0x10 # encoding: [0x38,0x0c,0x01,0x00]
137 # CHECK-NEXT: ori $1, $1, 0xffff # encoding: [0xff,0xff,0x21,0x34]
138 # CHECK-NEXT: dsll $1, $1, 0x10 # encoding: [0x38,0x0c,0x01,0x00]
139 # CHECK-NEXT: ori $1, $1, 0xffff # encoding: [0xff,0xff,0x21,0x34]
140 # CHECK-NEXT: and $4, $4, $1 # encoding: [0x24,0x20,0x81,0x00]
141 and $
4, 0xFFFFFFFFFFFFFFFF
142 # CHECK-NEXT: addiu $1, $zero, -0x1 # encoding: [0xff,0xff,0x01,0x24]
143 # CHECK-NEXT: and $4, $4, $1 # encoding: [0x24,0x20,0x81,0x00]
144 and $
4, 0xF000000000000000
145 # CHECK-NEXT: ori $1, $zero, 0xf000 # encoding: [0x00,0xf0,0x01,0x34]
146 # CHECK-NEXT: dsll $1, $1, 0x30 # encoding: [0x3c,0x0c,0x01,0x00]
147 # CHECK-NEXT: and $4, $4, $1 # encoding: [0x24,0x20,0x81,0x00]
148 and $
4, ~
(0xf0000000|
0x0f000000|
0x000000f0)
149 # CHECK-NEXT: addiu $1, $zero, -0x1 # encoding: [0xff,0xff,0x01,0x24]
150 # CHECK-NEXT: dsll $1, $1, 0x10 # encoding: [0x38,0x0c,0x01,0x00]
151 # CHECK-NEXT: ori $1, $1, 0xff # encoding: [0xff,0x00,0x21,0x34]
152 # CHECK-NEXT: dsll $1, $1, 0x10 # encoding: [0x38,0x0c,0x01,0x00]
153 # CHECK-NEXT: ori $1, $1, 0xff0f # encoding: [0x0f,0xff,0x21,0x34]
154 # CHECK-NEXT: and $4, $4, $1 # encoding: [0x24,0x20,0x81,0x00]
156 and $
4, $
5, -0x80000000
157 # CHECK: lui $4, 0x8000 # encoding: [0x00,0x80,0x04,0x3c]
158 # CHECK-NEXT: and $4, $4, $5 # encoding: [0x24,0x20,0x85,0x00]
160 # CHECK-NEXT: lui $4, 0xffff # encoding: [0xff,0xff,0x04,0x3c]
161 # CHECK-NEXT: ori $4, $4, 0x7fff # encoding: [0xff,0x7f,0x84,0x34]
162 # CHECK-NEXT: and $4, $4, $5 # encoding: [0x24,0x20,0x85,0x00]
164 # CHECK-NEXT: addiu $4, $zero, -0x8000 # encoding: [0x00,0x80,0x04,0x24]
165 # CHECK-NEXT: and $4, $4, $5 # encoding: [0x24,0x20,0x85,0x00]
167 # CHECK-NEXT: andi $4, $5, 0x0 # encoding: [0x00,0x00,0xa4,0x30]
169 # CHECK-NEXT: andi $4, $5, 0xffff # encoding: [0xff,0xff,0xa4,0x30]
171 # CHECK-NEXT: lui $4, 0x1 # encoding: [0x01,0x00,0x04,0x3c]
172 # CHECK-NEXT: and $4, $4, $5 # encoding: [0x24,0x20,0x85,0x00]
173 and $
4, $
5, 0xFFFFFFFF
174 # CHECK-NEXT: lui $4, 0xffff # encoding: [0xff,0xff,0x04,0x3c]
175 # CHECK-NEXT: dsrl32 $4, $4, 0x0 # encoding: [0x3e,0x20,0x04,0x00]
176 # CHECK-NEXT: and $4, $4, $5 # encoding: [0x24,0x20,0x85,0x00]
177 and $
4, $
5, 0xF0000000
178 # CHECK-NEXT: ori $4, $zero, 0xf000 # encoding: [0x00,0xf0,0x04,0x34]
179 # CHECK-NEXT: dsll $4, $4, 0x10 # encoding: [0x38,0x24,0x04,0x00]
180 # CHECK-NEXT: and $4, $4, $5 # encoding: [0x24,0x20,0x85,0x00]
181 and $
4, $
5, 0x7FFFFFFF
182 # CHECK-NEXT: lui $4, 0x7fff # encoding: [0xff,0x7f,0x04,0x3c]
183 # CHECK-NEXT: ori $4, $4, 0xffff # encoding: [0xff,0xff,0x84,0x34]
184 # CHECK-NEXT: and $4, $4, $5 # encoding: [0x24,0x20,0x85,0x00]
185 and $
4, $
5, 0x7FFFFFFFFFFFFFFF
186 # CHECK-NEXT: lui $4, 0x7fff # encoding: [0xff,0x7f,0x04,0x3c]
187 # CHECK-NEXT: ori $4, $4, 0xffff # encoding: [0xff,0xff,0x84,0x34]
188 # CHECK-NEXT: dsll $4, $4, 0x10 # encoding: [0x38,0x24,0x04,0x00]
189 # CHECK-NEXT: ori $4, $4, 0xffff # encoding: [0xff,0xff,0x84,0x34]
190 # CHECK-NEXT: dsll $4, $4, 0x10 # encoding: [0x38,0x24,0x04,0x00]
191 # CHECK-NEXT: ori $4, $4, 0xffff # encoding: [0xff,0xff,0x84,0x34]
192 # CHECK-NEXT: and $4, $4, $5 # encoding: [0x24,0x20,0x85,0x00]
193 and $
4, $
5, 0xFFFFFFFFFFFFFFFF
194 # CHECK-NEXT: addiu $4, $zero, -0x1 # encoding: [0xff,0xff,0x04,0x24]
195 # CHECK-NEXT: and $4, $4, $5 # encoding: [0x24,0x20,0x85,0x00]
196 and $
4, $
5, 0xF000000000000000
197 # CHECK-NEXT: ori $4, $zero, 0xf000 # encoding: [0x00,0xf0,0x04,0x34]
198 # CHECK-NEXT: dsll $4, $4, 0x30 # encoding: [0x3c,0x24,0x04,0x00]
199 # CHECK-NEXT: and $4, $4, $5 # encoding: [0x24,0x20,0x85,0x00]
200 and $
4, $
5, ~
(0xf0000000|
0x0f000000|
0x000000f0)
201 # CHECK-NEXT: addiu $4, $zero, -0x1 # encoding: [0xff,0xff,0x04,0x24]
202 # CHECK-NEXT: dsll $4, $4, 0x10 # encoding: [0x38,0x24,0x04,0x00]
203 # CHECK-NEXT: ori $4, $4, 0xff # encoding: [0xff,0x00,0x84,0x34]
204 # CHECK-NEXT: dsll $4, $4, 0x10 # encoding: [0x38,0x24,0x04,0x00]
205 # CHECK-NEXT: ori $4, $4, 0xff0f # encoding: [0x0f,0xff,0x84,0x34]
206 # CHECK-NEXT: and $4, $4, $5 # encoding: [0x24,0x20,0x85,0x00]
209 # CHECK: lui $1, 0x8000 # encoding: [0x00,0x80,0x01,0x3c]
210 # CHECK-NEXT: or $4, $4, $1 # encoding: [0x25,0x20,0x81,0x00]
212 # CHECK-NEXT: lui $1, 0xffff # encoding: [0xff,0xff,0x01,0x3c]
213 # CHECK-NEXT: ori $1, $1, 0x7fff # encoding: [0xff,0x7f,0x21,0x34]
214 # CHECK-NEXT: or $4, $4, $1 # encoding: [0x25,0x20,0x81,0x00]
216 # CHECK-NEXT: addiu $1, $zero, -0x8000 # encoding: [0x00,0x80,0x01,0x24]
217 # CHECK-NEXT: or $4, $4, $1 # encoding: [0x25,0x20,0x81,0x00]
219 # CHECK-NEXT: ori $4, $4, 0x0 # encoding: [0x00,0x00,0x84,0x34]
221 # CHECK-NEXT: ori $4, $4, 0xffff # encoding: [0xff,0xff,0x84,0x34]
223 # CHECK-NEXT: lui $1, 0x1 # encoding: [0x01,0x00,0x01,0x3c]
224 # CHECK-NEXT: or $4, $4, $1 # encoding: [0x25,0x20,0x81,0x00]
226 # CHECK-NEXT: lui $1, 0xffff # encoding: [0xff,0xff,0x01,0x3c]
227 # CHECK-NEXT: dsrl32 $1, $1, 0x0 # encoding: [0x3e,0x08,0x01,0x00]
228 # CHECK-NEXT: or $4, $4, $1 # encoding: [0x25,0x20,0x81,0x00]
230 # CHECK-NEXT: ori $1, $zero, 0xf000 # encoding: [0x00,0xf0,0x01,0x34]
231 # CHECK-NEXT: dsll $1, $1, 0x10 # encoding: [0x38,0x0c,0x01,0x00]
232 # CHECK-NEXT: or $4, $4, $1 # encoding: [0x25,0x20,0x81,0x00]
234 # CHECK-NEXT: lui $1, 0x7fff # encoding: [0xff,0x7f,0x01,0x3c]
235 # CHECK-NEXT: ori $1, $1, 0xffff # encoding: [0xff,0xff,0x21,0x34]
236 # CHECK-NEXT: or $4, $4, $1 # encoding: [0x25,0x20,0x81,0x00]
237 or $
4, 0x7FFFFFFFFFFFFFFF
238 # CHECK-NEXT: lui $1, 0x7fff # encoding: [0xff,0x7f,0x01,0x3c]
239 # CHECK-NEXT: ori $1, $1, 0xffff # encoding: [0xff,0xff,0x21,0x34]
240 # CHECK-NEXT: dsll $1, $1, 0x10 # encoding: [0x38,0x0c,0x01,0x00]
241 # CHECK-NEXT: ori $1, $1, 0xffff # encoding: [0xff,0xff,0x21,0x34]
242 # CHECK-NEXT: dsll $1, $1, 0x10 # encoding: [0x38,0x0c,0x01,0x00]
243 # CHECK-NEXT: ori $1, $1, 0xffff # encoding: [0xff,0xff,0x21,0x34]
244 # CHECK-NEXT: or $4, $4, $1 # encoding: [0x25,0x20,0x81,0x00]
245 or $
4, 0xFFFFFFFFFFFFFFFF
246 # CHECK-NEXT: addiu $1, $zero, -0x1 # encoding: [0xff,0xff,0x01,0x24]
247 # CHECK-NEXT: or $4, $4, $1 # encoding: [0x25,0x20,0x81,0x00]
248 or $
4, 0xF000000000000000
249 # CHECK-NEXT: ori $1, $zero, 0xf000 # encoding: [0x00,0xf0,0x01,0x34]
250 # CHECK-NEXT: dsll $1, $1, 0x30 # encoding: [0x3c,0x0c,0x01,0x00]
251 # CHECK-NEXT: or $4, $4, $1 # encoding: [0x25,0x20,0x81,0x00]
252 or $
4, $
5, ~
(0xf0000000|
0x0f000000|
0x000000f0)
253 # CHECK-NEXT: addiu $4, $zero, -0x1 # encoding: [0xff,0xff,0x04,0x24]
254 # CHECK-NEXT: dsll $4, $4, 0x10 # encoding: [0x38,0x24,0x04,0x00]
255 # CHECK-NEXT: ori $4, $4, 0xff # encoding: [0xff,0x00,0x84,0x34]
256 # CHECK-NEXT: dsll $4, $4, 0x10 # encoding: [0x38,0x24,0x04,0x00]
257 # CHECK-NEXT: ori $4, $4, 0xff0f # encoding: [0x0f,0xff,0x84,0x34]
258 # CHECK-NEXT: or $4, $4, $5 # encoding: [0x25,0x20,0x85,0x00]
260 or $
4, $
5, -0x80000000
261 # CHECK: lui $4, 0x8000 # encoding: [0x00,0x80,0x04,0x3c]
262 # CHECK-NEXT: or $4, $4, $5 # encoding: [0x25,0x20,0x85,0x00]
264 # CHECK-NEXT: lui $4, 0xffff # encoding: [0xff,0xff,0x04,0x3c]
265 # CHECK-NEXT: ori $4, $4, 0x7fff # encoding: [0xff,0x7f,0x84,0x34]
266 # CHECK-NEXT: or $4, $4, $5 # encoding: [0x25,0x20,0x85,0x00]
268 # CHECK-NEXT: addiu $4, $zero, -0x8000 # encoding: [0x00,0x80,0x04,0x24]
269 # CHECK-NEXT: or $4, $4, $5 # encoding: [0x25,0x20,0x85,0x00]
271 # CHECK-NEXT: ori $4, $5, 0x0 # encoding: [0x00,0x00,0xa4,0x34]
273 # CHECK-NEXT: ori $4, $5, 0xffff # encoding: [0xff,0xff,0xa4,0x34]
275 # CHECK-NEXT: lui $4, 0x1 # encoding: [0x01,0x00,0x04,0x3c]
276 # CHECK-NEXT: or $4, $4, $5 # encoding: [0x25,0x20,0x85,0x00]
277 or $
4, $
5, 0xFFFFFFFF
278 # CHECK-NEXT: lui $4, 0xffff # encoding: [0xff,0xff,0x04,0x3c]
279 # CHECK-NEXT: dsrl32 $4, $4, 0x0 # encoding: [0x3e,0x20,0x04,0x00]
280 # CHECK-NEXT: or $4, $4, $5 # encoding: [0x25,0x20,0x85,0x00]
281 or $
4, $
5, 0xF0000000
282 # CHECK-NEXT: ori $4, $zero, 0xf000 # encoding: [0x00,0xf0,0x04,0x34]
283 # CHECK-NEXT: dsll $4, $4, 0x10 # encoding: [0x38,0x24,0x04,0x00]
284 # CHECK-NEXT: or $4, $4, $5 # encoding: [0x25,0x20,0x85,0x00]
285 or $
4, $
5, 0x7FFFFFFF
286 # CHECK-NEXT: lui $4, 0x7fff # encoding: [0xff,0x7f,0x04,0x3c]
287 # CHECK-NEXT: ori $4, $4, 0xffff # encoding: [0xff,0xff,0x84,0x34]
288 # CHECK-NEXT: or $4, $4, $5 # encoding: [0x25,0x20,0x85,0x00]
289 or $
4, $
5, 0x7FFFFFFFFFFFFFFF
290 # CHECK-NEXT: lui $4, 0x7fff # encoding: [0xff,0x7f,0x04,0x3c]
291 # CHECK-NEXT: ori $4, $4, 0xffff # encoding: [0xff,0xff,0x84,0x34]
292 # CHECK-NEXT: dsll $4, $4, 0x10 # encoding: [0x38,0x24,0x04,0x00]
293 # CHECK-NEXT: ori $4, $4, 0xffff # encoding: [0xff,0xff,0x84,0x34]
294 # CHECK-NEXT: dsll $4, $4, 0x10 # encoding: [0x38,0x24,0x04,0x00]
295 # CHECK-NEXT: ori $4, $4, 0xffff # encoding: [0xff,0xff,0x84,0x34]
296 # CHECK-NEXT: or $4, $4, $5 # encoding: [0x25,0x20,0x85,0x00]
297 or $
4, $
5, 0xFFFFFFFFFFFFFFFF
298 # CHECK-NEXT: addiu $4, $zero, -0x1 # encoding: [0xff,0xff,0x04,0x24]
299 # CHECK-NEXT: or $4, $4, $5 # encoding: [0x25,0x20,0x85,0x00]
300 or $
4, $
5, 0xF000000000000000
301 # CHECK-NEXT: ori $4, $zero, 0xf000 # encoding: [0x00,0xf0,0x04,0x34]
302 # CHECK-NEXT: dsll $4, $4, 0x30 # encoding: [0x3c,0x24,0x04,0x00]
303 # CHECK-NEXT: or $4, $4, $5 # encoding: [0x25,0x20,0x85,0x00]
304 or $
4, $
5, ~
(0xf0000000|
0x0f000000|
0x000000f0)
305 # CHECK-NEXT: addiu $4, $zero, -0x1 # encoding: [0xff,0xff,0x04,0x24]
306 # CHECK-NEXT: dsll $4, $4, 0x10 # encoding: [0x38,0x24,0x04,0x00]
307 # CHECK-NEXT: ori $4, $4, 0xff # encoding: [0xff,0x00,0x84,0x34]
308 # CHECK-NEXT: dsll $4, $4, 0x10 # encoding: [0x38,0x24,0x04,0x00]
309 # CHECK-NEXT: ori $4, $4, 0xff0f # encoding: [0x0f,0xff,0x84,0x34]
310 # CHECK-NEXT: or $4, $4, $5 # encoding: [0x25,0x20,0x85,0x00]
313 # CHECK: lui $1, 0x8000 # encoding: [0x00,0x80,0x01,0x3c]
314 # CHECK-NEXT: xor $4, $4, $1 # encoding: [0x26,0x20,0x81,0x00]
316 # CHECK-NEXT: lui $1, 0xffff # encoding: [0xff,0xff,0x01,0x3c]
317 # CHECK-NEXT: ori $1, $1, 0x7fff # encoding: [0xff,0x7f,0x21,0x34]
318 # CHECK-NEXT: xor $4, $4, $1 # encoding: [0x26,0x20,0x81,0x00]
320 # CHECK-NEXT: addiu $1, $zero, -0x8000 # encoding: [0x00,0x80,0x01,0x24]
321 # CHECK-NEXT: xor $4, $4, $1 # encoding: [0x26,0x20,0x81,0x00]
323 # CHECK-NEXT: xori $4, $4, 0x0 # encoding: [0x00,0x00,0x84,0x38]
325 # CHECK-NEXT: xori $4, $4, 0xffff # encoding: [0xff,0xff,0x84,0x38]
327 # CHECK-NEXT: lui $1, 0x1 # encoding: [0x01,0x00,0x01,0x3c]
328 # CHECK-NEXT: xor $4, $4, $1 # encoding: [0x26,0x20,0x81,0x00]
330 # CHECK-NEXT: lui $1, 0xffff # encoding: [0xff,0xff,0x01,0x3c]
331 # CHECK-NEXT: dsrl32 $1, $1, 0x0 # encoding: [0x3e,0x08,0x01,0x00]
332 # CHECK-NEXT: xor $4, $4, $1 # encoding: [0x26,0x20,0x81,0x00]
334 # CHECK-NEXT: ori $1, $zero, 0xf000 # encoding: [0x00,0xf0,0x01,0x34]
335 # CHECK-NEXT: dsll $1, $1, 0x10 # encoding: [0x38,0x0c,0x01,0x00]
336 # CHECK-NEXT: xor $4, $4, $1 # encoding: [0x26,0x20,0x81,0x00
338 # CHECK-NEXT: lui $1, 0x7fff # encoding: [0xff,0x7f,0x01,0x3c]
339 # CHECK-NEXT: ori $1, $1, 0xffff # encoding: [0xff,0xff,0x21,0x34]
340 # CHECK-NEXT: xor $4, $4, $1 # encoding: [0x26,0x20,0x81,0x00]
341 xor $
4, 0x7FFFFFFFFFFFFFFF
342 # CHECK-NEXT: lui $1, 0x7fff # encoding: [0xff,0x7f,0x01,0x3c]
343 # CHECK-NEXT: ori $1, $1, 0xffff # encoding: [0xff,0xff,0x21,0x34]
344 # CHECK-NEXT: dsll $1, $1, 0x10 # encoding: [0x38,0x0c,0x01,0x00]
345 # CHECK-NEXT: ori $1, $1, 0xffff # encoding: [0xff,0xff,0x21,0x34]
346 # CHECK-NEXT: dsll $1, $1, 0x10 # encoding: [0x38,0x0c,0x01,0x00]
347 # CHECK-NEXT: ori $1, $1, 0xffff # encoding: [0xff,0xff,0x21,0x34]
348 # CHECK-NEXT: xor $4, $4, $1 # encoding: [0x26,0x20,0x81,0x00]
349 xor $
4, 0xFFFFFFFFFFFFFFFF
350 # CHECK-NEXT: addiu $1, $zero, -0x1 # encoding: [0xff,0xff,0x01,0x24]
351 # CHECK-NEXT: xor $4, $4, $1 # encoding: [0x26,0x20,0x81,0x00]
352 xor $
4, 0xF000000000000000
353 # CHECK-NEXT: ori $1, $zero, 0xf000 # encoding: [0x00,0xf0,0x01,0x34]
354 # CHECK-NEXT: dsll $1, $1, 0x30 # encoding: [0x3c,0x0c,0x01,0x00]
355 # CHECK-NEXT: xor $4, $4, $1 # encoding: [0x26,0x20,0x81,0x00]
356 xor $
4, ~
(0xf0000000|
0x0f000000|
0x000000f0)
357 # CHECK-NEXT: addiu $1, $zero, -0x1 # encoding: [0xff,0xff,0x01,0x24]
358 # CHECK-NEXT: dsll $1, $1, 0x10 # encoding: [0x38,0x0c,0x01,0x00]
359 # CHECK-NEXT: ori $1, $1, 0xff # encoding: [0xff,0x00,0x21,0x34]
360 # CHECK-NEXT: dsll $1, $1, 0x10 # encoding: [0x38,0x0c,0x01,0x00]
361 # CHECK-NEXT: ori $1, $1, 0xff0f # encoding: [0x0f,0xff,0x21,0x34]
362 # CHECK-NEXT: xor $4, $4, $1 # encoding: [0x26,0x20,0x81,0x00]
364 xor $
4, $
5, -0x80000000
365 # CHECK: lui $4, 0x8000 # encoding: [0x00,0x80,0x04,0x3c]
366 # CHECK-NEXT: xor $4, $4, $5 # encoding: [0x26,0x20,0x85,0x00]
368 # CHECK-NEXT: lui $4, 0xffff # encoding: [0xff,0xff,0x04,0x3c]
369 # CHECK-NEXT: ori $4, $4, 0x7fff # encoding: [0xff,0x7f,0x84,0x34]
370 # CHECK-NEXT: xor $4, $4, $5 # encoding: [0x26,0x20,0x85,0x00]
372 # CHECK-NEXT: addiu $4, $zero, -0x8000 # encoding: [0x00,0x80,0x04,0x24]
373 # CHECK-NEXT: xor $4, $4, $5 # encoding: [0x26,0x20,0x85,0x00]
375 # CHECK-NEXT: xori $4, $5, 0x0 # encoding: [0x00,0x00,0xa4,0x38]
377 # CHECK-NEXT: xori $4, $5, 0xffff # encoding: [0xff,0xff,0xa4,0x38]
379 # CHECK-NEXT: lui $4, 0x1 # encoding: [0x01,0x00,0x04,0x3c]
380 # CHECK-NEXT: xor $4, $4, $5 # encoding: [0x26,0x20,0x85,0x00]
381 xor $
4, $
5, 0xFFFFFFFF
382 # CHECK-NEXT: lui $4, 0xffff # encoding: [0xff,0xff,0x04,0x3c]
383 # CHECK-NEXT: dsrl32 $4, $4, 0x0 # encoding: [0x3e,0x20,0x04,0x00]
384 # CHECK-NEXT: xor $4, $4, $5 # encoding: [0x26,0x20,0x85,0x00]
385 xor $
4, $
5, 0xF0000000
386 # CHECK-NEXT: ori $4, $zero, 0xf000 # encoding: [0x00,0xf0,0x04,0x34]
387 # CHECK-NEXT: dsll $4, $4, 0x10 # encoding: [0x38,0x24,0x04,0x00]
388 # CHECK-NEXT: xor $4, $4, $5 # encoding: [0x26,0x20,0x85,0x00]
389 xor $
4, $
5, 0x7FFFFFFF
390 # CHECK-NEXT: lui $4, 0x7fff # encoding: [0xff,0x7f,0x04,0x3c]
391 # CHECK-NEXT: ori $4, $4, 0xffff # encoding: [0xff,0xff,0x84,0x34]
392 # CHECK-NEXT: xor $4, $4, $5 # encoding: [0x26,0x20,0x85,0x00]
393 xor $
4, $
5, 0x7FFFFFFFFFFFFFFF
394 # FIXME: this is awfully inefficient...
395 # CHECK-NEXT: lui $4, 0x7fff # encoding: [0xff,0x7f,0x04,0x3c]
396 # CHECK-NEXT: ori $4, $4, 0xffff # encoding: [0xff,0xff,0x84,0x34]
397 # CHECK-NEXT: dsll $4, $4, 0x10 # encoding: [0x38,0x24,0x04,0x00]
398 # CHECK-NEXT: ori $4, $4, 0xffff # encoding: [0xff,0xff,0x84,0x34]
399 # CHECK-NEXT: dsll $4, $4, 0x10 # encoding: [0x38,0x24,0x04,0x00]
400 # CHECK-NEXT: ori $4, $4, 0xffff # encoding: [0xff,0xff,0x84,0x34]
401 # CHECK-NEXT: xor $4, $4, $5 # encoding: [0x26,0x20,0x85,0x00]
402 xor $
4, $
5, 0xFFFFFFFFFFFFFFFF
403 # CHECK-NEXT: addiu $4, $zero, -0x1 # encoding: [0xff,0xff,0x04,0x24]
404 # CHECK-NEXT: xor $4, $4, $5 # encoding: [0x26,0x20,0x85,0x00]
405 xor $
4, $
5, 0xF000000000000000
406 # CHECK-NEXT: ori $4, $zero, 0xf000 # encoding: [0x00,0xf0,0x04,0x34]
407 # CHECK-NEXT: dsll $4, $4, 0x30 # encoding: [0x3c,0x24,0x04,0x00]
408 # CHECK-NEXT: xor $4, $4, $5 # encoding: [0x26,0x20,0x85,0x00]
409 xor $
4, $
5, ~
(0xf0000000|
0x0f000000|
0x000000f0)
410 # CHECK-NEXT: addiu $4, $zero, -0x1 # encoding: [0xff,0xff,0x04,0x24]
411 # CHECK-NEXT: dsll $4, $4, 0x10 # encoding: [0x38,0x24,0x04,0x00]
412 # CHECK-NEXT: ori $4, $4, 0xff # encoding: [0xff,0x00,0x84,0x34]
413 # CHECK-NEXT: dsll $4, $4, 0x10 # encoding: [0x38,0x24,0x04,0x00]
414 # CHECK-NEXT: ori $4, $4, 0xff0f # encoding: [0x0f,0xff,0x84,0x34]
415 # CHECK-NEXT: xor $4, $4, $5 # encoding: [0x26,0x20,0x85,0x00]
418 # CHECK: addiu $1, $zero, 0x0 # encoding: [0x00,0x00,0x01,0x24]
419 # CHECK-NEXT: nor $4, $4, $1 # encoding: [0x27,0x20,0x81,0x00]
421 # CHECK-NEXT: addiu $1, $zero, 0x1 # encoding: [0x01,0x00,0x01,0x24]
422 # CHECK-NEXT: nor $4, $4, $1 # encoding: [0x27,0x20,0x81,0x00]
424 # CHECK-NEXT: ori $1, $zero, 0x8000 # encoding: [0x00,0x80,0x01,0x34]
425 # CHECK-NEXT: nor $4, $4, $1 # encoding: [0x27,0x20,0x81,0x00]
427 # CHECK-NEXT: addiu $1, $zero, -0x8000 # encoding: [0x00,0x80,0x01,0x24]
428 # CHECK-NEXT: nor $4, $4, $1 # encoding: [0x27,0x20,0x81,0x00]
430 # CHECK-NEXT: lui $1, 0x1 # encoding: [0x01,0x00,0x01,0x3c]
431 # CHECK-NEXT: nor $4, $4, $1 # encoding: [0x27,0x20,0x81,0x00]
433 # CHECK-NEXT: lui $1, 0x1 # encoding: [0x01,0x00,0x01,0x3c]
434 # CHECK-NEXT: ori $1, $1, 0xa5a5 # encoding: [0xa5,0xa5,0x21,0x34]
435 # CHECK-NEXT: nor $4, $4, $1 # encoding: [0x27,0x20,0x81,0x00]
437 # CHECK-NEXT: lui $1, 0xffff # encoding: [0xff,0xff,0x01,0x3c]
438 # CHECK-NEXT: dsrl32 $1, $1, 0x0 # encoding: [0x3e,0x08,0x01,0x00]
439 # CHECK-NEXT: nor $4, $4, $1 # encoding: [0x27,0x20,0x81,0x00]
441 # CHECK-NEXT: ori $1, $zero, 0xf000 # encoding: [0x00,0xf0,0x01,0x34]
442 # CHECK-NEXT: dsll $1, $1, 0x10 # encoding: [0x38,0x0c,0x01,0x00]
443 # CHECK-NEXT: nor $4, $4, $1 # encoding: [0x27,0x20,0x81,0x00]
445 # CHECK-NEXT: lui $1, 0x7fff # encoding: [0xff,0x7f,0x01,0x3c]
446 # CHECK-NEXT: ori $1, $1, 0xffff # encoding: [0xff,0xff,0x21,0x34]
447 # CHECK-NEXT: nor $4, $4, $1 # encoding: [0x27,0x20,0x81,0x00]
448 nor $
4, 0x7FFFFFFFFFFFFFF
449 # CHECK-NEXT: lui $1, 0x7ff # encoding: [0xff,0x07,0x01,0x3c]
450 # CHECK-NEXT: ori $1, $1, 0xffff # encoding: [0xff,0xff,0x21,0x34]
451 # CHECK-NEXT: dsll $1, $1, 0x10 # encoding: [0x38,0x0c,0x01,0x00]
452 # CHECK-NEXT: ori $1, $1, 0xffff # encoding: [0xff,0xff,0x21,0x34]
453 # CHECK-NEXT: dsll $1, $1, 0x10 # encoding: [0x38,0x0c,0x01,0x00]
454 # CHECK-NEXT: ori $1, $1, 0xffff # encoding: [0xff,0xff,0x21,0x34]
455 # CHECK-NEXT: nor $4, $4, $1 # encoding: [0x27,0x20,0x81,0x00]
456 nor $
4, 0xFFFFFFFFFFFFFFFF
457 # CHECK-NEXT: addiu $1, $zero, -0x1 # encoding: [0xff,0xff,0x01,0x24]
458 # CHECK-NEXT: nor $4, $4, $1 # encoding: [0x27,0x20,0x81,0x00]
459 nor $
4, 0xF000000000000000
460 # CHECK-NEXT: ori $1, $zero, 0xf000 # encoding: [0x00,0xf0,0x01,0x34]
461 # CHECK-NEXT: dsll $1, $1, 0x30 # encoding: [0x3c,0x0c,0x01,0x00]
462 # CHECK-NEXT: nor $4, $4, $1 # encoding: [0x27,0x20,0x81,0x00]
463 nor $
4, ~
(0xf0000000|
0x0f000000|
0x000000f0)
464 # CHECK-NEXT: addiu $1, $zero, -0x1 # encoding: [0xff,0xff,0x01,0x24]
465 # CHECK-NEXT: dsll $1, $1, 0x10 # encoding: [0x38,0x0c,0x01,0x00]
466 # CHECK-NEXT: ori $1, $1, 0xff # encoding: [0xff,0x00,0x21,0x34]
467 # CHECK-NEXT: dsll $1, $1, 0x10 # encoding: [0x38,0x0c,0x01,0x00]
468 # CHECK-NEXT: ori $1, $1, 0xff0f # encoding: [0x0f,0xff,0x21,0x34]
469 # CHECK-NEXT: nor $4, $4, $1 # encoding: [0x27,0x20,0x81,0x00]
471 # CHECK-NEXT: ori $1, $zero, 0xff00 # encoding: [0x00,0xff,0x01,0x34]
472 # CHECK-NEXT: dsll $1, $1, 0x10 # encoding: [0x38,0x0c,0x01,0x00]
473 # CHECK-NEXT: ori $1, $1, 0xff00 # encoding: [0x00,0xff,0x21,0x34]
474 # CHECK-NEXT: nor $4, $4, $1 # encoding: [0x27,0x20,0x81,0x00]
477 # CHECK: addiu $4, $zero, 0x0 # encoding: [0x00,0x00,0x04,0x24]
478 # CHECK-NEXT: nor $4, $4, $5 # encoding: [0x27,0x20,0x85,0x00]
480 # CHECK-NEXT: addiu $4, $zero, 0x1 # encoding: [0x01,0x00,0x04,0x24]
481 # CHECK-NEXT: nor $4, $4, $5 # encoding: [0x27,0x20,0x85,0x00]
483 # CHECK-NEXT: ori $4, $zero, 0x8000 # encoding: [0x00,0x80,0x04,0x34]
484 # CHECK-NEXT: nor $4, $4, $5 # encoding: [0x27,0x20,0x85,0x00]
486 # CHECK-NEXT: addiu $4, $zero, -0x8000 # encoding: [0x00,0x80,0x04,0x24]
487 # CHECK-NEXT: nor $4, $4, $5 # encoding: [0x27,0x20,0x85,0x00]
489 # CHECK-NEXT: lui $4, 0x1 # encoding: [0x01,0x00,0x04,0x3c]
490 # CHECK-NEXT: nor $4, $4, $5 # encoding: [0x27,0x20,0x85,0x00]
492 # CHECK-NEXT: lui $4, 0x1 # encoding: [0x01,0x00,0x04,0x3c]
493 # CHECK-NEXT: ori $4, $4, 0xa5a5 # encoding: [0xa5,0xa5,0x84,0x34]
494 # CHECK-NEXT: nor $4, $4, $5 # encoding: [0x27,0x20,0x85,0x00]
495 nor $
4, $
5, 0xFFFFFFFF
496 # CHECK-NEXT: lui $4, 0xffff # encoding: [0xff,0xff,0x04,0x3c]
497 # CHECK-NEXT: dsrl32 $4, $4, 0x0 # encoding: [0x3e,0x20,0x04,0x00]
498 # CHECK-NEXT: nor $4, $4, $5 # encoding: [0x27,0x20,0x85,0x00]
499 nor $
4, $
5, 0xF0000000
500 # CHECK-NEXT: ori $4, $zero, 0xf000 # encoding: [0x00,0xf0,0x04,0x34]
501 # CHECK-NEXT: dsll $4, $4, 0x10 # encoding: [0x38,0x24,0x04,0x00]
502 # CHECK-NEXT: nor $4, $4, $5 # encoding: [0x27,0x20,0x85,0x00]
503 nor $
4, $
5, 0x7FFFFFFF
504 # CHECK-NEXT: lui $4, 0x7fff # encoding: [0xff,0x7f,0x04,0x3c]
505 # CHECK-NEXT: ori $4, $4, 0xffff # encoding: [0xff,0xff,0x84,0x34]
506 # CHECK-NEXT: nor $4, $4, $5 # encoding: [0x27,0x20,0x85,0x00]
507 nor $
4, $
5, 0x7FFFFFFFFFFFFFFF
508 # FIXME: this is awfully inefficient...
509 # CHECK-NEXT: lui $4, 0x7fff # encoding: [0xff,0x7f,0x04,0x3c]
510 # CHECK-NEXT: ori $4, $4, 0xffff # encoding: [0xff,0xff,0x84,0x34]
511 # CHECK-NEXT: dsll $4, $4, 0x10 # encoding: [0x38,0x24,0x04,0x00]
512 # CHECK-NEXT: ori $4, $4, 0xffff # encoding: [0xff,0xff,0x84,0x34]
513 # CHECK-NEXT: dsll $4, $4, 0x10 # encoding: [0x38,0x24,0x04,0x00]
514 # CHECK-NEXT: ori $4, $4, 0xffff # encoding: [0xff,0xff,0x84,0x34]
515 # CHECK-NEXT: nor $4, $4, $5 # encoding: [0x27,0x20,0x85,0x00]
516 nor $
4, $
5, 0xFFFFFFFFFFFFFFFF
517 # CHECK-NEXT: addiu $4, $zero, -0x1 # encoding: [0xff,0xff,0x04,0x24]
518 # CHECK-NEXT: nor $4, $4, $5 # encoding: [0x27,0x20,0x85,0x00]
519 nor $
4, $
5, 0xF000000000000000
520 # CHECK-NEXT: ori $4, $zero, 0xf000 # encoding: [0x00,0xf0,0x04,0x34]
521 # CHECK-NEXT: dsll $4, $4, 0x30 # encoding: [0x3c,0x24,0x04,0x00]
522 # CHECK-NEXT: nor $4, $4, $5 # encoding: [0x27,0x20,0x85,0x00]
523 nor $
4, $
5, ~
(0xf0000000|
0x0f000000|
0x000000f0)
524 # CHECK-NEXT: addiu $4, $zero, -0x1 # encoding: [0xff,0xff,0x04,0x24]
525 # CHECK-NEXT: dsll $4, $4, 0x10 # encoding: [0x38,0x24,0x04,0x00]
526 # CHECK-NEXT: ori $4, $4, 0xff # encoding: [0xff,0x00,0x84,0x34]
527 # CHECK-NEXT: dsll $4, $4, 0x10 # encoding: [0x38,0x24,0x04,0x00]
528 # CHECK-NEXT: ori $4, $4, 0xff0f # encoding: [0x0f,0xff,0x84,0x34]
529 # CHECK-NEXT: nor $4, $4, $5 # encoding: [0x27,0x20,0x85,0x00]
530 nor $
4, $
5, 0xff00ff00
531 # CHECK-NEXT: ori $4, $zero, 0xff00 # encoding: [0x00,0xff,0x04,0x34]
532 # CHECK-NEXT: dsll $4, $4, 0x10 # encoding: [0x38,0x24,0x04,0x00]
533 # CHECK-NEXT: ori $4, $4, 0xff00 # encoding: [0x00,0xff,0x84,0x34]
534 # CHECK-NEXT: nor $4, $4, $5 # encoding: [0x27,0x20,0x85,0x00]
538 # CHECK: lui $1, 0x8000 # encoding: [0x00,0x80,0x01,0x3c]
539 # CHECK-NEXT: slt $4, $4, $1 # encoding: [0x2a,0x20,0x81,0x00]
541 # CHECK-NEXT: lui $1, 0xffff # encoding: [0xff,0xff,0x01,0x3c]
542 # CHECK-NEXT: ori $1, $1, 0x7fff # encoding: [0xff,0x7f,0x21,0x34]
543 # CHECK-NEXT: slt $4, $4, $1 # encoding: [0x2a,0x20,0x81,0x00]
545 # CHECK-NEXT: slti $4, $4, -0x8000 # encoding: [0x00,0x80,0x84,0x28]
547 # CHECK-NEXT: slti $4, $4, 0x0 # encoding: [0x00,0x00,0x84,0x28]
549 # CHECK-NEXT: ori $1, $zero, 0xffff # encoding: [0xff,0xff,0x01,0x34]
550 # CHECK-NEXT: slt $4, $4, $1 # encoding: [0x2a,0x20,0x81,0x00]
552 # CHECK-NEXT: lui $1, 0x1 # encoding: [0x01,0x00,0x01,0x3c]
553 # CHECK-NEXT: slt $4, $4, $1 # encoding: [0x2a,0x20,0x81,0x00]
555 # CHECK-NEXT: lui $1, 0xffff # encoding: [0xff,0xff,0x01,0x3c]
556 # CHECK-NEXT: dsrl32 $1, $1, 0x0 # encoding: [0x3e,0x08,0x01,0x00]
557 # CHECK-NEXT: slt $4, $4, $1 # encoding: [0x2a,0x20,0x81,0x00]
559 # CHECK-NEXT: ori $1, $zero, 0xf000 # encoding: [0x00,0xf0,0x01,0x34]
560 # CHECK-NEXT: dsll $1, $1, 0x10 # encoding: [0x38,0x0c,0x01,0x00]
561 # CHECK-NEXT: slt $4, $4, $1 # encoding: [0x2a,0x20,0x81,0x00]
563 # CHECK-NEXT: lui $1, 0x7fff # encoding: [0xff,0x7f,0x01,0x3c]
564 # CHECK-NEXT: ori $1, $1, 0xffff # encoding: [0xff,0xff,0x21,0x34]
565 # CHECK-NEXT: slt $4, $4, $1 # encoding: [0x2a,0x20,0x81,0x00]
566 slt $
4, 0x7FFFFFFFFFFFFFFF
567 # CHECK-NEXT: lui $1, 0x7fff # encoding: [0xff,0x7f,0x01,0x3c]
568 # CHECK-NEXT: ori $1, $1, 0xffff # encoding: [0xff,0xff,0x21,0x34]
569 # CHECK-NEXT: dsll $1, $1, 0x10 # encoding: [0x38,0x0c,0x01,0x00]
570 # CHECK-NEXT: ori $1, $1, 0xffff # encoding: [0xff,0xff,0x21,0x34]
571 # CHECK-NEXT: dsll $1, $1, 0x10 # encoding: [0x38,0x0c,0x01,0x00]
572 # CHECK-NEXT: ori $1, $1, 0xffff # encoding: [0xff,0xff,0x21,0x34]
573 # CHECK-NEXT: slt $4, $4, $1 # encoding: [0x2a,0x20,0x81,0x00]
574 slt $
4, 0xFFFFFFFFFFFFFFFF
575 # CHECK-NEXT: slti $4, $4, -0x1 # encoding: [0xff,0xff,0x84,0x28]
576 slt $
4, 0xF000000000000000
577 # CHECK-NEXT: ori $1, $zero, 0xf000 # encoding: [0x00,0xf0,0x01,0x34]
578 # CHECK-NEXT: dsll $1, $1, 0x30 # encoding: [0x3c,0x0c,0x01,0x00]
579 # CHECK-NEXT: slt $4, $4, $1 # encoding: [0x2a,0x20,0x81,0x00]
580 slt $
4, ~
(0xf0000000|
0x0f000000|
0x000000f0)
581 # CHECK-NEXT: addiu $1, $zero, -0x1 # encoding: [0xff,0xff,0x01,0x24]
582 # CHECK-NEXT: dsll $1, $1, 0x10 # encoding: [0x38,0x0c,0x01,0x00]
583 # CHECK-NEXT: ori $1, $1, 0xff # encoding: [0xff,0x00,0x21,0x34]
584 # CHECK-NEXT: dsll $1, $1, 0x10 # encoding: [0x38,0x0c,0x01,0x00]
585 # CHECK-NEXT: ori $1, $1, 0xff0f # encoding: [0x0f,0xff,0x21,0x34]
586 # CHECK-NEXT: slt $4, $4, $1 # encoding: [0x2a,0x20,0x81,0x00]
588 slt $
4, $
5, -0x80000000
589 # CHECK: lui $4, 0x8000 # encoding: [0x00,0x80,0x04,0x3c]
590 # CHECK-NEXT: slt $4, $4, $5 # encoding: [0x2a,0x20,0x85,0x00]
592 # CHECK-NEXT: lui $4, 0xffff # encoding: [0xff,0xff,0x04,0x3c]
593 # CHECK-NEXT: ori $4, $4, 0x7fff # encoding: [0xff,0x7f,0x84,0x34]
594 # CHECK-NEXT: slt $4, $4, $5 # encoding: [0x2a,0x20,0x85,0x00]
596 # CHECK-NEXT: slti $4, $5, -0x8000 # encoding: [0x00,0x80,0xa4,0x28]
598 # CHECK-NEXT: slti $4, $5, 0x0 # encoding: [0x00,0x00,0xa4,0x28]
600 # CHECK-NEXT: ori $4, $zero, 0xffff # encoding: [0xff,0xff,0x04,0x34]
601 # CHECK-NEXT: slt $4, $4, $5 # encoding: [0x2a,0x20,0x85,0x00]
603 # CHECK-NEXT: lui $4, 0x1 # encoding: [0x01,0x00,0x04,0x3c]
604 # CHECK-NEXT: slt $4, $4, $5 # encoding: [0x2a,0x20,0x85,0x00]
605 slt $
4, $
5, 0xFFFFFFFF
606 # CHECK-NEXT: lui $4, 0xffff # encoding: [0xff,0xff,0x04,0x3c]
607 # CHECK-NEXT: dsrl32 $4, $4, 0x0 # encoding: [0x3e,0x20,0x04,0x00]
608 # CHECK-NEXT: slt $4, $4, $5 # encoding: [0x2a,0x20,0x85,0x00]
609 slt $
4, $
5, 0xF0000000
610 # CHECK-NEXT: ori $4, $zero, 0xf000 # encoding: [0x00,0xf0,0x04,0x34]
611 # CHECK-NEXT: dsll $4, $4, 0x10 # encoding: [0x38,0x24,0x04,0x00]
612 # CHECK-NEXT: slt $4, $4, $5 # encoding: [0x2a,0x20,0x85,0x00]
613 slt $
4, $
5, 0x7FFFFFFF
614 # CHECK-NEXT: lui $4, 0x7fff # encoding: [0xff,0x7f,0x04,0x3c]
615 # CHECK-NEXT: ori $4, $4, 0xffff # encoding: [0xff,0xff,0x84,0x34]
616 # CHECK-NEXT: slt $4, $4, $5 # encoding: [0x2a,0x20,0x85,0x00]
617 slt $
4, $
5, 0x7FFFFFFFFFFFFFFF
618 # FIXME: this is awfully inefficient...
619 # CHECK-NEXT: lui $4, 0x7fff # encoding: [0xff,0x7f,0x04,0x3c]
620 # CHECK-NEXT: ori $4, $4, 0xffff # encoding: [0xff,0xff,0x84,0x34]
621 # CHECK-NEXT: dsll $4, $4, 0x10 # encoding: [0x38,0x24,0x04,0x00]
622 # CHECK-NEXT: ori $4, $4, 0xffff # encoding: [0xff,0xff,0x84,0x34]
623 # CHECK-NEXT: dsll $4, $4, 0x10 # encoding: [0x38,0x24,0x04,0x00]
624 # CHECK-NEXT: ori $4, $4, 0xffff # encoding: [0xff,0xff,0x84,0x34]
625 # CHECK-NEXT: slt $4, $4, $5 # encoding: [0x2a,0x20,0x85,0x00]
626 slt $
4, $
5, 0xFFFFFFFFFFFFFFFF
627 # CHECK-NEXT: slti $4, $5, -0x1 # encoding: [0xff,0xff,0xa4,0x28]
628 slt $
4, $
5, 0xF000000000000000
629 # CHECK-NEXT: ori $4, $zero, 0xf000 # encoding: [0x00,0xf0,0x04,0x34]
630 # CHECK-NEXT: dsll $4, $4, 0x30 # encoding: [0x3c,0x24,0x04,0x00]
631 # CHECK-NEXT: slt $4, $4, $5 # encoding: [0x2a,0x20,0x85,0x00]
632 slt $
4, $
5, ~
(0xf0000000|
0x0f000000|
0x000000f0)
633 # CHECK-NEXT: addiu $4, $zero, -0x1 # encoding: [0xff,0xff,0x04,0x24]
634 # CHECK-NEXT: dsll $4, $4, 0x10 # encoding: [0x38,0x24,0x04,0x00]
635 # CHECK-NEXT: ori $4, $4, 0xff # encoding: [0xff,0x00,0x84,0x34]
636 # CHECK-NEXT: dsll $4, $4, 0x10 # encoding: [0x38,0x24,0x04,0x00]
637 # CHECK-NEXT: ori $4, $4, 0xff0f # encoding: [0x0f,0xff,0x84,0x34]
638 # CHECK-NEXT: slt $4, $4, $5 # encoding: [0x2a,0x20,0x85,0x00]
641 # CHECK: lui $1, 0x8000 # encoding: [0x00,0x80,0x01,0x3c]
642 # CHECK-NEXT: sltu $4, $4, $1 # encoding: [0x2b,0x20,0x81,0x00]
644 # CHECK-NEXT: lui $1, 0xffff # encoding: [0xff,0xff,0x01,0x3c]
645 # CHECK-NEXT: ori $1, $1, 0x7fff # encoding: [0xff,0x7f,0x21,0x34]
646 # CHECK-NEXT: sltu $4, $4, $1 # encoding: [0x2b,0x20,0x81,0x00]
648 # CHECK-NEXT: sltiu $4, $4, -0x8000 # encoding: [0x00,0x80,0x84,0x2c]
650 # CHECK-NEXT: sltiu $4, $4, 0x0 # encoding: [0x00,0x00,0x84,0x2c]
652 # CHECK-NEXT: ori $1, $zero, 0xffff # encoding: [0xff,0xff,0x01,0x34]
653 # CHECK-NEXT: sltu $4, $4, $1 # encoding: [0x2b,0x20,0x81,0x00]
655 # CHECK-NEXT: lui $1, 0x1 # encoding: [0x01,0x00,0x01,0x3c]
656 # CHECK-NEXT: sltu $4, $4, $1 # encoding: [0x2b,0x20,0x81,0x00]
658 # CHECK-NEXT: lui $1, 0xffff # encoding: [0xff,0xff,0x01,0x3c]
659 # CHECK-NEXT: dsrl32 $1, $1, 0x0 # encoding: [0x3e,0x08,0x01,0x00]
660 # CHECK-NEXT: sltu $4, $4, $1 # encoding: [0x2b,0x20,0x81,0x00]
662 # CHECK-NEXT: ori $1, $zero, 0xf000 # encoding: [0x00,0xf0,0x01,0x34]
663 # CHECK-NEXT: dsll $1, $1, 0x10 # encoding: [0x38,0x0c,0x01,0x00]
664 # CHECK-NEXT: sltu $4, $4, $1 # encoding: [0x2b,0x20,0x81,0x00]
666 # CHECK-NEXT: lui $1, 0x7fff # encoding: [0xff,0x7f,0x01,0x3c]
667 # CHECK-NEXT: ori $1, $1, 0xffff # encoding: [0xff,0xff,0x21,0x34]
668 # CHECK-NEXT: sltu $4, $4, $1 # encoding: [0x2b,0x20,0x81,0x00]
669 sltu $
4, 0x7FFFFFFFFFFFFFFF
670 # CHECK-NEXT: lui $1, 0x7fff # encoding: [0xff,0x7f,0x01,0x3c]
671 # CHECK-NEXT: ori $1, $1, 0xffff # encoding: [0xff,0xff,0x21,0x34]
672 # CHECK-NEXT: dsll $1, $1, 0x10 # encoding: [0x38,0x0c,0x01,0x00]
673 # CHECK-NEXT: ori $1, $1, 0xffff # encoding: [0xff,0xff,0x21,0x34]
674 # CHECK-NEXT: dsll $1, $1, 0x10 # encoding: [0x38,0x0c,0x01,0x00]
675 # CHECK-NEXT: ori $1, $1, 0xffff # encoding: [0xff,0xff,0x21,0x34]
676 # CHECK-NEXT: sltu $4, $4, $1 # encoding: [0x2b,0x20,0x81,0x00]
677 sltu $
4, 0xFFFFFFFFFFFFFFFF
678 # CHECK-NEXT: sltiu $4, $4, -0x1 # encoding: [0xff,0xff,0x84,0x2c]
679 sltu $
4, 0xF000000000000000
680 # CHECK-NEXT: ori $1, $zero, 0xf000 # encoding: [0x00,0xf0,0x01,0x34]
681 # CHECK-NEXT: dsll $1, $1, 0x30 # encoding: [0x3c,0x0c,0x01,0x00]
682 # CHECK-NEXT: sltu $4, $4, $1 # encoding: [0x2b,0x20,0x81,0x00]
683 sltu $
4, ~
(0xf0000000|
0x0f000000|
0x000000f0)
684 # CHECK-NEXT: addiu $1, $zero, -0x1 # encoding: [0xff,0xff,0x01,0x24]
685 # CHECK-NEXT: dsll $1, $1, 0x10 # encoding: [0x38,0x0c,0x01,0x00]
686 # CHECK-NEXT: ori $1, $1, 0xff # encoding: [0xff,0x00,0x21,0x34]
687 # CHECK-NEXT: dsll $1, $1, 0x10 # encoding: [0x38,0x0c,0x01,0x00]
688 # CHECK-NEXT: ori $1, $1, 0xff0f # encoding: [0x0f,0xff,0x21,0x34]
689 # CHECK-NEXT: sltu $4, $4, $1 # encoding: [0x2b,0x20,0x81,0x00]
691 sltu $
4, $
5, -0x80000000
692 # CHECK: lui $4, 0x8000 # encoding: [0x00,0x80,0x04,0x3c]
693 # CHECK-NEXT: sltu $4, $4, $5 # encoding: [0x2b,0x20,0x85,0x00]
695 # CHECK-NEXT: lui $4, 0xffff # encoding: [0xff,0xff,0x04,0x3c]
696 # CHECK-NEXT: ori $4, $4, 0x7fff # encoding: [0xff,0x7f,0x84,0x34]
697 # CHECK-NEXT: sltu $4, $4, $5 # encoding: [0x2b,0x20,0x85,0x00]
699 # CHECK-NEXT: sltiu $4, $5, -0x8000 # encoding: [0x00,0x80,0xa4,0x2c]
701 # CHECK-NEXT: sltiu $4, $5, 0x0 # encoding: [0x00,0x00,0xa4,0x2c]
703 # CHECK-NEXT: ori $4, $zero, 0xffff # encoding: [0xff,0xff,0x04,0x34]
704 # CHECK-NEXT: sltu $4, $4, $5 # encoding: [0x2b,0x20,0x85,0x00]
706 # CHECK-NEXT: lui $4, 0x1 # encoding: [0x01,0x00,0x04,0x3c]
707 # CHECK-NEXT: sltu $4, $4, $5 # encoding: [0x2b,0x20,0x85,0x00]
708 sltu $
4, $
5, 0xFFFFFFFF
709 # CHECK-NEXT: lui $4, 0xffff # encoding: [0xff,0xff,0x04,0x3c]
710 # CHECK-NEXT: dsrl32 $4, $4, 0x0 # encoding: [0x3e,0x20,0x04,0x00]
711 # CHECK-NEXT: sltu $4, $4, $5 # encoding: [0x2b,0x20,0x85,0x00]
712 sltu $
4, $
5, 0xF0000000
713 # CHECK-NEXT: ori $4, $zero, 0xf000 # encoding: [0x00,0xf0,0x04,0x34]
714 # CHECK-NEXT: dsll $4, $4, 0x10 # encoding: [0x38,0x24,0x04,0x00]
715 # CHECK-NEXT: sltu $4, $4, $5 # encoding: [0x2b,0x20,0x85,0x00]
716 sltu $
4, $
5, 0x7FFFFFFF
717 # CHECK-NEXT: lui $4, 0x7fff # encoding: [0xff,0x7f,0x04,0x3c]
718 # CHECK-NEXT: ori $4, $4, 0xffff # encoding: [0xff,0xff,0x84,0x34]
719 # CHECK-NEXT: sltu $4, $4, $5 # encoding: [0x2b,0x20,0x85,0x00]
720 sltu $
4, $
5, 0x7FFFFFFFFFFFFFFF
721 # FIXME: this is awfully inefficient...
722 # CHECK-NEXT: lui $4, 0x7fff # encoding: [0xff,0x7f,0x04,0x3c]
723 # CHECK-NEXT: ori $4, $4, 0xffff # encoding: [0xff,0xff,0x84,0x34]
724 # CHECK-NEXT: dsll $4, $4, 0x10 # encoding: [0x38,0x24,0x04,0x00]
725 # CHECK-NEXT: ori $4, $4, 0xffff # encoding: [0xff,0xff,0x84,0x34]
726 # CHECK-NEXT: dsll $4, $4, 0x10 # encoding: [0x38,0x24,0x04,0x00]
727 # CHECK-NEXT: ori $4, $4, 0xffff # encoding: [0xff,0xff,0x84,0x34]
728 # CHECK-NEXT: sltu $4, $4, $5 # encoding: [0x2b,0x20,0x85,0x00]
729 sltu $
4, $
5, 0xFFFFFFFFFFFFFFFF
730 # CHECK-NEXT: sltiu $4, $5, -0x1 # encoding: [0xff,0xff,0xa4,0x2c]
731 sltu $
4, $
5, 0xF000000000000000
732 # CHECK-NEXT: ori $4, $zero, 0xf000 # encoding: [0x00,0xf0,0x04,0x34]
733 # CHECK-NEXT: dsll $4, $4, 0x30 # encoding: [0x3c,0x24,0x04,0x00]
734 # CHECK-NEXT: sltu $4, $4, $5 # encoding: [0x2b,0x20,0x85,0x00]
735 sltu $
4, $
5, ~
(0xf0000000|
0x0f000000|
0x000000f0)
736 # CHECK-NEXT: addiu $4, $zero, -0x1 # encoding: [0xff,0xff,0x04,0x24]
737 # CHECK-NEXT: dsll $4, $4, 0x10 # encoding: [0x38,0x24,0x04,0x00]
738 # CHECK-NEXT: ori $4, $4, 0xff # encoding: [0xff,0x00,0x84,0x34]
739 # CHECK-NEXT: dsll $4, $4, 0x10 # encoding: [0x38,0x24,0x04,0x00]
740 # CHECK-NEXT: ori $4, $4, 0xff0f # encoding: [0x0f,0xff,0x84,0x34]
741 # CHECK-NEXT: sltu $4, $4, $5 # encoding: [0x2b,0x20,0x85,0x00]