1.data 8 2ok: 3.c "ok\n" 4 5/* r0,r1 = r2 op r3 */ 6#define QALUR(N, T, OP, I0, I1, LO, HI, R0, R1, R2, R3) \ 7 movi %R2 I0 \ 8 movi %R3 I1 \ 9 OP##r##T %R0 %R1 %R2 %R3 \ 10 bnei OP##T##N##rlo##R0##R1##R2##R3 %R0 LO \ 11 bnei OP##T##N##rlo##R0##R1##R2##R3 %R1 HI \ 12 bnei OP##T##N##rlo##R0##R1##R2##R3 %R2 I0 \ 13 beqi OP##T##N##rhi##R0##R1##R2##R3 %R3 I1 \ 14OP##T##N##rlo##R0##R1##R2##R3: \ 15 calli @abort \ 16OP##T##N##rhi##R0##R1##R2##R3: 17 18/* r0,r1 = r2 op i0 */ 19#define QALUI(N, T, OP, I0, I1, LO, HI, R0, R1, R2, R3) \ 20 movi %R2 I0 \ 21 movi %R3 HI \ 22 OP##i##T %R0 %R1 %R2 I1 \ 23 bnei OP##T##N##ilo##R0##R1##R2##R3 %R0 LO \ 24 bner OP##T##N##ilo##R0##R1##R2##R3 %R1 %R3 \ 25 beqi OP##T##N##ihi##R0##R1##R2##R3 %R2 I0 \ 26OP##T##N##ilo##R0##R1##R2##R3: \ 27 calli @abort \ 28OP##T##N##ihi##R0##R1##R2##R3: 29 30/* r0,r1 = r0 op r1 */ 31#define QALUX(N, T, OP, I0, I1, LO, HI, R0, R1, R2, R3) \ 32 movi %R0 I0 \ 33 movi %R1 I1 \ 34 movi %R2 LO \ 35 movi %R3 HI \ 36 OP##r##T %R0 %R1 %R0 %R1 \ 37 bner OP##T##N##0lo##R0##R1##R2##R3 %R0 %R2 \ 38 beqr OP##T##N##0hi##R0##R1##R2##R3 %R1 %R3 \ 39OP##T##N##0lo##R0##R1##R2##R3: \ 40 calli @abort \ 41OP##T##N##0hi##R0##R1##R2##R3: 42 43/* r0,r1 = r1 op r0 */ 44#define QALUY(N, T, OP, I0, I1, LO, HI, R0, R1, R2, R3) \ 45 movi %R1 I0 \ 46 movi %R0 I1 \ 47 movi %R2 LO \ 48 movi %R3 HI \ 49 OP##r##T %R0 %R1 %R1 %R0 \ 50 bner OP##T##N##1lo##R0##R1##R2##R3 %R0 %R2 \ 51 beqr OP##T##N##1hi##R0##R1##R2##R3 %R1 %R3 \ 52OP##T##N##1lo##R0##R1##R2##R3: \ 53 calli @abort \ 54OP##T##N##1hi##R0##R1##R2##R3: 55 56/* r0,r1 = r0 op r3 */ 57#define QALUZ(N, T, OP, I0, I1, LO, HI, R0, R1, R2, R3) \ 58 movi %R0 I0 \ 59 movi %R3 I1 \ 60 movi %R2 LO \ 61 OP##r##T %R0 %R1 %R0 %R3 \ 62 bner OP##T##N##2lo##R0##R1##R2##R3 %R0 %R2 \ 63 bnei OP##T##N##2lo##R0##R1##R2##R3 %R1 HI \ 64 beqi OP##T##N##2hi##R0##R1##R2##R3 %R3 I1 \ 65OP##T##N##2lo##R0##R1##R2##R3: \ 66 calli @abort \ 67OP##T##N##2hi##R0##R1##R2##R3: 68 69/* r0,r1 = r2 op r1 */ 70#define QALUW(N, T, OP, I0, I1, LO, HI, R0, R1, R2, R3) \ 71 movi %R2 I0 \ 72 movi %R1 I1 \ 73 movi %R3 LO \ 74 OP##r##T %R0 %R1 %R2 %R1 \ 75 bner OP##T##N##3lo##R0##R1##R2##R3 %R0 %R3 \ 76 bnei OP##T##N##3lo##R0##R1##R2##R3 %R1 HI \ 77 beqi OP##T##N##3hi##R0##R1##R2##R3 %R2 I0 \ 78OP##T##N##3lo##R0##R1##R2##R3: \ 79 calli @abort \ 80OP##T##N##3hi##R0##R1##R2##R3: 81 82#define QALU2(N, T, OP, I0, I1, LO, HI, R0, R1, R2, R3) \ 83 QALUR(N, T, OP, I0, I1, LO, HI, R0, R1, R2, R3) \ 84 QALUI(N, T, OP, I0, I1, LO, HI, R0, R1, R2, R3) \ 85 QALUX(N, T, OP, I0, I1, LO, HI, R0, R1, R2, R3) \ 86 QALUY(N, T, OP, I0, I1, LO, HI, R0, R1, R2, R3) \ 87 QALUZ(N, T, OP, I0, I1, LO, HI, R0, R1, R2, R3) \ 88 QALUW(N, T, OP, I0, I1, LO, HI, R0, R1, R2, R3) 89 90#define QALU1(N, T, OP, I0, I1, LO, HI, R0, R1, R2, R3) \ 91 QALU2(N, T, OP, I0, I1, LO, HI, R0, R1, R2, R3) \ 92 QALU2(N, T, OP, I0, I1, LO, HI, R0, R1, R3, R2) \ 93 QALU2(N, T, OP, I0, I1, LO, HI, R0, R2, R1, R3) \ 94 QALU2(N, T, OP, I0, I1, LO, HI, R0, R2, R3, R1) \ 95 QALU2(N, T, OP, I0, I1, LO, HI, R0, R3, R1, R2) \ 96 QALU2(N, T, OP, I0, I1, LO, HI, R0, R3, R2, R1) \ 97 QALU2(N, T, OP, I0, I1, LO, HI, R1, R0, R2, R3) \ 98 QALU2(N, T, OP, I0, I1, LO, HI, R1, R0, R3, R2) \ 99 QALU2(N, T, OP, I0, I1, LO, HI, R1, R2, R0, R3) \ 100 QALU2(N, T, OP, I0, I1, LO, HI, R1, R2, R3, R0) \ 101 QALU2(N, T, OP, I0, I1, LO, HI, R1, R3, R0, R2) \ 102 QALU2(N, T, OP, I0, I1, LO, HI, R1, R3, R2, R0) \ 103 QALU2(N, T, OP, I0, I1, LO, HI, R2, R1, R0, R3) \ 104 QALU2(N, T, OP, I0, I1, LO, HI, R2, R1, R3, R0) \ 105 QALU2(N, T, OP, I0, I1, LO, HI, R2, R0, R1, R3) \ 106 QALU2(N, T, OP, I0, I1, LO, HI, R2, R0, R3, R1) \ 107 QALU2(N, T, OP, I0, I1, LO, HI, R2, R3, R1, R0) \ 108 QALU2(N, T, OP, I0, I1, LO, HI, R2, R3, R0, R1) \ 109 QALU2(N, T, OP, I0, I1, LO, HI, R3, R1, R2, R0) \ 110 QALU2(N, T, OP, I0, I1, LO, HI, R3, R1, R0, R2) \ 111 QALU2(N, T, OP, I0, I1, LO, HI, R3, R2, R1, R0) \ 112 QALU2(N, T, OP, I0, I1, LO, HI, R3, R2, R0, R1) \ 113 QALU2(N, T, OP, I0, I1, LO, HI, R3, R0, R1, R2) \ 114 QALU2(N, T, OP, I0, I1, LO, HI, R3, R0, R2, R1) 115 116#define QALU(N, T, OP, I0, I1, LO, HI) \ 117 QALU1(N, T, OP, I0, I1, LO, HI, v0, v1, v2, r0) \ 118 QALU1(N, T, OP, I0, I1, LO, HI, v0, v1, v2, r1) \ 119 QALU1(N, T, OP, I0, I1, LO, HI, v0, v1, v2, r2) \ 120 QALU1(N, T, OP, I0, I1, LO, HI, v1, v2, r0, r1) \ 121 QALU1(N, T, OP, I0, I1, LO, HI, v1, v2, r0, r2) \ 122 QALU1(N, T, OP, I0, I1, LO, HI, v2, r0, r1, r2) 123