Merge pull request #718 from pcercuei/update-lightrec-20230224
[pcsx_rearmed.git] / deps / lightning / check / all.tst
CommitLineData
4a71579b
PC
1.disasm // only disassemble
2.code
3 prolog
4 allocai 32 $buf
79bfeef6
PC
5 arg_c $c
6 arg_c $uc
7 arg_s $s
8 arg_s $us
9 arg_i $i
10 arg_i $ui
4a71579b 11#if __WORDSIZE == 64
79bfeef6 12 arg_l $l
4a71579b 13#endif
79bfeef6 14 arg $a
4a71579b
PC
15 getarg_c %r0 $c
16 getarg_uc %r0 $uc
17 getarg_s %r0 $s
18 getarg_us %r0 $us
19 getarg_i %r0 $i
20#if __WORDSIZE == 64
21 getarg_ui %r0 $ui
22 getarg_l %r0 $l
23#endif
79bfeef6
PC
24 getarg %r0 $a
25 putargr_c %r0 $c
26 putargi_c 1 $c
27 putargr_uc %r0 $uc
28 putargi_uc 1 $uc
29 putargr_s %r0 $s
30 putargi_s 1 $s
31 putargr_us %r0 $us
32 putargi_us 1 $us
33 putargr_i %r0 $i
34 putargi_i 1 $ui
35#if __WORDSIZE == 64
36 putargr_ui %r0 $ui
37 putargi_ui 1 $ui
38 putargr_l %r0 $l
39 putargi_l 1 $l
40#endif
41 putargr %r0 $a
42 putargi 1 $a
4a71579b
PC
43 addr %r0 %r1 %r2
44 addi %r0 %r1 2
45 addcr %r0 %r1 %r2
46 addci %r0 %r1 2
47 addxr %r0 %r1 %r2
48 addxi %r0 %r1 2
49 subr %r0 %r1 %r2
50 subi %r0 %r1 2
51 subcr %r0 %r1 %r2
52 subci %r0 %r1 2
53 subxr %r0 %r1 %r2
54 subxi %r0 %r1 2
55 mulr %r0 %r1 %r2
56 muli %r0 %r1 2
57 qmulr %r0 %r1 %r2 %v0
58 qmuli %r0 %r1 %r2 3
59 qmulr_u %r0 %r1 %r2 %v0
60 qmuli_u %r0 %r1 %r2 3
61 divr %r0 %r1 %r2
62 divi %r0 %r1 2
63 divr_u %r0 %r1 %r2
64 divi_u %r0 %r1 2
65 qdivr %r0 %r1 %r2 %v0
66 qdivi %r0 %r1 %r2 3
67 qdivr_u %r0 %r1 %r2 %v0
68 qdivi_u %r0 %r1 %r2 3
69 remr %r0 %r1 %r2
70 remi %r0 %r1 2
71 remr_u %r0 %r1 %r2
72 remi_u %r0 %r1 2
73 andr %r0 %r1 %r2
74 andi %r0 %r1 2
75 orr %r0 %r1 %r2
76 ori %r0 %r1 2
77 xorr %r0 %r1 %r2
78 xori %r0 %r1 2
79 lshr %r0 %r1 %r2
80 lshi %r0 %r1 2
81 rshr %r0 %r1 %r2
82 rshi %r0 %r1 2
83 rshr_u %r0 %r1 %r2
84 rshi_u %r0 %r1 2
85 negr %r0 %r1
86 comr %r0 %r1
79bfeef6
PC
87 clor %r0 %r1
88 clzr %r0 %r1
89 ctor %r0 %r1
90 ctzr %r0 %r1
4a71579b
PC
91 ltr %r0 %r1 %r2
92 lti %r0 %r1 2
93 ltr_u %r0 %r1 %r2
94 lti_u %r0 %r1 2
95 ler %r0 %r1 %r2
96 lei %r0 %r1 2
97 ler_u %r0 %r1 %r2
98 lei_u %r0 %r1 2
99 eqr %r0 %r1 %r2
100 eqi %r0 %r1 2
101 ger %r0 %r1 %r2
102 gei %r0 %r1 2
103 ger_u %r0 %r1 %r2
104 gei_u %r0 %r1 2
105 gtr %r0 %r1 %r2
106 gti %r0 %r1 2
107 gtr_u %r0 %r1 %r2
108 gti_u %r0 %r1 2
109 ner %r0 %r1 %r2
110 nei %r0 %r1 2
111 movr %r0 %r1
112 movi %r0 1
113 extr_c %r0 %r1
114 extr_uc %r0 %r1
115 extr_s %r0 %r1
116 extr_us %r0 %r1
117#if __WORDSIZE == 64
118 extr_i %r0 %r1
119 extr_ui %r0 %r1
120#endif
121 htonr %r0 %r1
122 ntohr %r0 %r1
123 ldr_c %r0 %r1
124 ldi_c %r0 0x80000000
125 ldr_uc %r0 %r1
126 ldi_uc %r0 0x80000000
127 ldr_s %r0 %r1
128 ldi_s %r0 0x80000000
129 ldr_us %r0 %r1
130 ldi_us %r0 0x80000000
131 ldr_i %r0 %r1
132 ldi_i %r0 0x80000000
133#if __WORDSIZE == 64
134 ldr_ui %r0 %r1
135 ldi_ui %r0 0x80000000
136 ldr_l %r0 %r1
137 ldi_l %r0 0x80000000
138#endif
139 ldxr_c %r0 %r1 %r2
140 ldxi_c %r0 %r1 1
141 ldxr_uc %r0 %r1 %r2
142 ldxi_uc %r0 %r1 1
143 ldxr_s %r0 %r1 %r2
144 ldxi_s %r0 %r1 2
145 ldxr_us %r0 %r1 %r2
146 ldxi_us %r0 %r1 2
147 ldxr_i %r0 %r1 %r2
148 ldxi_i %r0 %r1 4
149#if __WORDSIZE == 64
150 ldxr_ui %r0 %r1 %r2
151 ldxi_ui %r0 %r1 4
152 ldxr_l %r0 %r1 %r2
153 ldxi_l %r0 %r1 8
154#endif
155 str_c %r1 %r0
156 sti_c 0x80000000 %r1
157 str_s %r1 %r0
158 sti_s 0x80000000 %r1
159 str_i %r1 %r0
160 sti_i 0x80000000 %r1
161#if __WORDSIZE == 64
162 str_l %r1 %r0
163 sti_l 0x80000000 %r1
164#endif
165 stxr_c %r2 %r1 %r0
166 stxi_c 1 %r1 %r0
167 stxr_s %r2 %r1 %r0
168 stxi_s 2 %r1 %r0
169 stxr_i %r2 %r1 %r0
170 stxi_i 4 %r1 %r0
171#if __WORDSIZE == 64
172 stxr_l %r2 %r1 %r0
173 stxi_l 8 %r1 %r0
174#endif
175cond:
176 bltr cond %r0 %r1
177condi:
178 blti condi %r0 1
179condu:
180 bltr_u condu %r0 %r1
181condiu:
182 blti_u condiu %r0 1
183 bler cond %r0 %r1
184 blei condi %r0 1
185 bler_u condu %r0 %r1
186 blei_u condiu %r0 1
187bool:
188 beqr bool %r0 %r1
189booli:
190 beqi booli %r0 1
191 bger cond %r0 %r1
192 bgei condi %r0 1
193 bger_u condu %r0 %r1
194 bgei_u condiu %r0 1
195 bgtr cond %r0 %r1
196 bgti condi %r0 1
197 bgtr_u condu %r0 %r1
198 bgti_u condiu %r0 1
199 bner bool %r0 %r1
200 bnei booli %r0 1
201mask:
202 bmsr mask %r0 %r1
203maski:
204 bmsi maski %r0 1
205 bmcr mask %r0 %r1
206 bmci maski %r0 1
207as:
208 boaddr as %r0 %r1
209asi:
210 boaddi asi %r0 1
211asu:
212 boaddr_u as %r0 %r1
213 boaddi_u asi %r0 1
214 bxaddr as %r0 %r1
215 bxaddi asi %r0 1
216 bxaddr_u as %r0 %r1
217 bxaddi_u asi %r0 1
218 bosubr as %r0 %r1
219 bosubi asi %r0 1
220 bosubr_u as %r0 %r1
221 bosubi_u asi %r0 1
222 bxsubr as %r0 %r1
223 bxsubi asi %r0 1
224 bxsubr_u as %r0 %r1
225 bxsubi_u asi %r0 1
226label:
227 jmpr %r0
228 jmpi label
229 callr %r0
230 calli label
231 prepare
79bfeef6
PC
232 pushargr_c %r0
233 pushargr_uc %r0
234 pushargr_s %r0
235 pushargr_us %r0
236 pushargr_i %r0
237#if __WORDSIZE == 64
238 pushargr_ui %r0
239 pushargr_l %r0
240#endif
4a71579b
PC
241 pushargr %r0
242 finishr %r0
243 prepare
244 pushargi 1
245 ellipsis
246 finishi 0x80000000
247 ret
79bfeef6
PC
248 retr_c %r1
249 retr_uc %r1
250 retr_s %r1
251 retr_us %r1
252 retr_i %r1
253#if __WORDSIZE == 64
254 retr_ui %r1
255 retr_l %r1
256#endif
4a71579b
PC
257 retr %r1
258 reti 2
259 retval_c %r1
260 retval_uc %r1
261 retval_s %r1
262 retval_us %r1
263 retval_i %r1
264#if __WORDSIZE == 64
265 retval_ui %r1
266 retval_l %r1
267#endif
268 arg_f $f
269 getarg_f %f1 $f
79bfeef6
PC
270 putargr_f %f1 $f
271 putargi_f 1.0 $f
4a71579b
PC
272 addr_f %f0 %f1 %f2
273 addi_f %f0 %f1 0.5
274 subr_f %f0 %f1 %f2
275 subi_f %f0 %f1 0.5
276 mulr_f %f0 %f1 %f2
277 muli_f %f0 %f1 0.5
278 divr_f %f0 %f1 %f2
279 divi_f %f0 %f1 0.5
280 negr_f %f0 %f1
281 absr_f %f0 %f1
282 sqrtr_f %f0 %f1
283 ltr_f %r0 %f0 %f1
284 lti_f %r0 %f0 0.5
285 ler_f %r0 %f0 %f1
286 lei_f %r0 %f0 0.5
287 eqr_f %r0 %f0 %f1
288 eqi_f %r0 %f0 0.5
289 ger_f %r0 %f0 %f1
290 gei_f %r0 %f0 0.5
291 gtr_f %r0 %f0 %f1
292 gti_f %r0 %f0 0.5
293 ner_f %r0 %f0 %f1
294 nei_f %r0 %f0 0.5
295 unltr_f %r0 %f0 %f1
296 unlti_f %r0 %f0 0.5
297 unler_f %r0 %f0 %f1
298 unlei_f %r0 %f0 0.5
299 uneqr_f %r0 %f0 %f1
300 uneqi_f %r0 %f0 0.5
301 unger_f %r0 %f0 %f1
302 ungei_f %r0 %f0 0.5
303 ungtr_f %r0 %f0 %f1
304 ungti_f %r0 %f0 0.5
305 ltgtr_f %r0 %f0 %f1
306 ltgti_f %r0 %f0 0.5
307 ordr_f %r0 %f0 %f1
308 ordi_f %r0 %f0 0.5
309 unordr_f %r0 %f0 %f1
310 unordi_f %r0 %f0 0.5
311 truncr_f_i %r0 %f0
312#if __WORDSIZE == 64
313 truncr_f_l %r0 %f0
314#endif
315 extr_f %f0 %r0
316 extr_d_f %f0 %f1
317 movr_f %f0 %f1
318 movi_f %f0 1.5
319 ldr_f %f0 %r0
320 ldi_f %f0 0x80000000
321 ldxr_f %f0 %r0 %r1
322 ldxi_f %f0 %r0 4
323 str_f %r0 %f0
324 sti_f 0x80000000 %f0
325 stxr_f %r1 %r0 %f0
326 stxi_f 4 %r0 %f0
327/* FIXME the bordr_d at the end will cause an assertion on riscv due to
328 * too distant jump (does not fit in a 12 bit signed int) */
329ord:
330 bltr_f ord %f0 %f1
331ordi:
332 blti_f ordi %f0 0.5
333 bler_f ord %f0 %f1
334 blei_f ordi %f0 0.5
335 beqr_f ord %f0 %f1
336 beqi_f ordi %f0 0.5
337 bger_f ord %f0 %f1
338 bgei_f ordi %f0 0.5
339 bgtr_f ord %f0 %f1
340 bgti_f ordi %f0 0.5
341 bner_f ord %f0 %f1
342 bnei_f ordi %f0 0.5
343unord:
344 bunltr_f unord %f0 %f1
345unordi:
346 bunlti_f unordi %f0 0.5
347 bunler_f unord %f0 %f1
348 bunlei_f unordi %f0 0.5
349 buneqr_f unord %f0 %f1
350 buneqi_f unordi %f0 0.5
351 bunger_f unord %f0 %f1
352 bungei_f unordi %f0 0.5
353 bungtr_f unord %f0 %f1
354 bungti_f unordi %f0 0.5
355 bltgtr_f unord %f0 %f1
356 bltgti_f unordi %f0 0.5
357 bordr_f unord %f0 %f1
358 bordi_f unordi %f0 0.5
359 bunordr_f unord %f0 %f1
360 bunordi_f unordi %f0 0.5
361 prepare
362 pushargr_f %f1
363 pushargi_f 0.5
364 finishi 0x80000000
365 retr_f %f1
366 reti_f 0.5
367 retval_f %f1
368 arg_d $f
369 getarg_d %f1 $f
79bfeef6
PC
370 putargr_d %f1 $f
371 putargi_d 1.0 $f
4a71579b
PC
372 addr_d %f0 %f1 %f2
373 addi_d %f0 %f1 0.5
374 subr_d %f0 %f1 %f2
375 subi_d %f0 %f1 0.5
376 mulr_d %f0 %f1 %f2
377 muli_d %f0 %f1 0.5
378 divr_d %f0 %f1 %f2
379 divi_d %f0 %f1 0.5
380 negr_d %f0 %f1
381 absr_d %f0 %f1
382 sqrtr_d %f0 %f1
383 ltr_d %r0 %f0 %f1
384 lti_d %r0 %f0 0.5
385 ler_d %r0 %f0 %f1
386 lei_d %r0 %f0 0.5
387 eqr_d %r0 %f0 %f1
388 eqi_d %r0 %f0 0.5
389 ger_d %r0 %f0 %f1
390 gei_d %r0 %f0 0.5
391 gtr_d %r0 %f0 %f1
392 gti_d %r0 %f0 0.5
393 ner_d %r0 %f0 %f1
394 nei_d %r0 %f0 0.5
395 unltr_d %r0 %f0 %f1
396 unlti_d %r0 %f0 0.5
397 unler_d %r0 %f0 %f1
398 unlei_d %r0 %f0 0.5
399 uneqr_d %r0 %f0 %f1
400 uneqi_d %r0 %f0 0.5
401 unger_d %r0 %f0 %f1
402 ungei_d %r0 %f0 0.5
403 ungtr_d %r0 %f0 %f1
404 ungti_d %r0 %f0 0.5
405 ltgtr_d %r0 %f0 %f1
406 ltgti_d %r0 %f0 0.5
407 ordr_d %r0 %f0 %f1
408 ordi_d %r0 %f0 0.5
409 unordr_d %r0 %f0 %f1
410 unordi_d %r0 %f0 0.5
411 truncr_d_i %r0 %f0
412#if __WORDSIZE == 64
413 truncr_d_l %r0 %f0
414#endif
415 extr_d %f0 %r0
416 extr_f_d %f0 %f1
417 movr_d %f0 %f1
418 movi_d %f0 1.5
419 ldr_d %f0 %r0
420 ldi_d %f0 0x80000000
421 ldxr_d %f0 %r0 %r1
422 ldxi_d %f0 %r0 8
423 str_d %r0 %f0
424 sti_d 0x80000000 %f0
425 stxr_d %r1 %r0 %f0
426 stxi_d 8 %r0 %f0
427 bltr_d ord %f0 %f1
428 blti_d ordi %f0 0.5
429 bler_d ord %f0 %f1
430 blei_d ordi %f0 0.5
431 beqr_d ord %f0 %f1
432 beqi_d ordi %f0 0.5
433 bger_d ord %f0 %f1
434 bgei_d ordi %f0 0.5
435 bgtr_d ord %f0 %f1
436 bgti_d ordi %f0 0.5
437 bner_d ord %f0 %f1
438 bnei_d ordi %f0 0.5
439 bunltr_d unord %f0 %f1
440 bunlti_d unordi %f0 0.5
441 bunler_d unord %f0 %f1
442 bunlei_d unordi %f0 0.5
443 buneqr_d unord %f0 %f1
444 buneqi_d unordi %f0 0.5
445 bunger_d unord %f0 %f1
446 bungei_d unordi %f0 0.5
447 bungtr_d unord %f0 %f1
448 bungti_d unordi %f0 0.5
449 bltgtr_d unord %f0 %f1
450 bltgti_d unordi %f0 0.5
451 bordr_d unord %f0 %f1
452 bordi_d unordi %f0 0.5
453 bunordr_d unord %f0 %f1
454 bunordi_d unordi %f0 0.5
455 prepare
456 pushargr_d %f1
457 pushargi_d 0.5
458 finishi 0x80000000
459 retr_d %f1
460 reti_d 0.5
461 retval_d %f1