git subrepo pull --force deps/lightrec
[pcsx_rearmed.git] / deps / lightning / check / qalu_mul.tst
CommitLineData
4a71579b
PC
1#include "qalu.inc"
2
3.code
4 prolog
5#define QMUL(N, I0, I1, LO, HI) QALU(N, , qmul, I0, I1, LO, HI)
6#define UQMUL(N, I0, I1, LO, HI) QALU(N, _u, qmul, I0, I1, LO, HI)
7 QMUL(0, -2, -1, 2, 0)
8 QMUL(1, 0, -1, 0, 0)
9 QMUL(2, -1, 0, 0, 0)
10 QMUL(3, 1, -1, -1, -1)
11#if __WORDSIZE == 32
12 QMUL(4, 0x7ffff, 0x7ffff, 0xfff00001, 0x3f)
13 UQMUL(5, 0xffffff, 0xffffff, 0xfe000001, 0xffff)
14 QMUL(6, 0x80000000, -2, 0, 1)
15 QMUL(7, 0x80000000, 2, 0, -1)
16 QMUL(8, 0x80000001, 3, 0x80000003, -2)
17 QMUL(9, 0x80000001, -3, 0x7ffffffd, 1)
18#else
19 QMUL(4, 0x7ffffffff, 0x7ffffffff, 0xfffffff000000001, 0x3f)
20 UQMUL(5, 0xffffffffff, 0xffffffffff, 0xfffffe0000000001, 0xffff)
21 QMUL(6, 0x8000000000000000, -2, 0, 1)
22 QMUL(7, 0x8000000000000000, 2, 0, -1)
23 QMUL(8, 0x8000000000000001, 3, 0x8000000000000003, -2)
24 QMUL(9, 0x8000000000000001, -3, 0x7ffffffffffffffd, 1)
25#endif
26 prepare
27 pushargi ok
28 ellipsis
29 finishi @printf
30 ret
31 epilog