15 for (op
= AND
; op
<= XORI
; op
++) {
16 for (i
= 0; i
< N
; i
++) {
19 /* No Integer Overflow exception occurs under any
21 TEST1("and $t0, $t1, $t2", reg_val1
[i
], reg_val1
[N
-i
-1],
23 TEST1("and $s0, $s1, $s2", reg_val2
[i
], reg_val2
[N
-i
-1],
28 /* No Integer Overflow exception occurs under any
30 TEST2("andi $t0, $t1, 0xff", reg_val1
[i
], 0xff, t0
, t1
);
31 TEST2("andi $t2, $t3, 0xffff", reg_val1
[i
], 0xffff, t2
, t3
);
32 TEST2("andi $a0, $a1, 0x0", reg_val1
[i
], 0x0, a0
, a1
);
33 TEST2("andi $s0, $s1, 0x23", reg_val1
[i
], 0x23, s0
, s1
);
34 TEST2("andi $t0, $t1, 0xff", reg_val2
[i
], 0xff, t0
, t1
);
35 TEST2("andi $t2, $t3, 0xffff", reg_val2
[i
], 0xffff, t2
, t3
);
36 TEST2("andi $a0, $a1, 0x0", reg_val2
[i
], 0x0, a0
, a1
);
37 TEST2("andi $s0, $s1, 0x23", reg_val2
[i
], 0x23, s0
, s1
);
41 /* No Integer Overflow exception occurs under any
44 TEST6("lui $t0, 0xffff", 0xffff, t0
);
45 TEST6("lui $a0, 0x0", 0x0, a0
);
46 TEST6("lui $t9, 0xff", 0xff, t9
);
47 TEST6("lui $v0, 0xfff", 0xfff, v0
);
48 TEST6("lui $s0, 0x2", 0x2, s0
);
53 /* No arithmetic exception occurs under any circumstances. */
54 TEST1("nor $t0, $t1, $t2", reg_val1
[i
], reg_val1
[N
-i
-1],
56 TEST1("nor $s0, $s1, $s2", reg_val2
[i
], reg_val2
[N
-i
-1],
61 /* No arithmetic exception occurs under any circumstances. */
62 TEST1("or $t0, $t1, $t2", reg_val1
[i
], reg_val1
[N
-i
-1],
64 TEST1("or $s0, $s1, $s2", reg_val2
[i
], reg_val2
[N
-i
-1],
69 /* No arithmetic exception occurs under any circumstances. */
70 TEST2("ori $t0, $t1, 0xff", reg_val1
[i
], 0xff, t0
, t1
);
71 TEST2("ori $t2, $t3, 0xffff", reg_val1
[i
], 0xffff, t2
, t3
);
72 TEST2("ori $a0, $a1, 0x0", reg_val1
[i
], 0x0, a0
, a1
);
73 TEST2("ori $s0, $s1, 0x23", reg_val1
[i
], 0x23, s0
, s1
);
74 TEST2("ori $t0, $t1, 0xff", reg_val2
[i
], 0xff, t0
, t1
);
75 TEST2("ori $t2, $t3, 0xffff", reg_val2
[i
], 0xffff, t2
, t3
);
76 TEST2("ori $a0, $a1, 0x0", reg_val2
[i
], 0x0, a0
, a1
);
77 TEST2("ori $s0, $s1, 0x23", reg_val2
[i
], 0x23, s0
, s1
);
81 /* No arithmetic exception occurs under any circumstances. */
82 TEST1("xor $t0, $t1, $t2", reg_val1
[i
], reg_val1
[N
-i
-1],
84 TEST1("xor $s0, $s1, $s2", reg_val2
[i
], reg_val2
[N
-i
-1],
89 /* No arithmetic exception occurs under any circumstances. */
90 TEST2("xori $t0, $t1, 0xff", reg_val1
[i
], 0xff, t0
, t1
);
91 TEST2("xori $t2, $t3, 0xffff", reg_val1
[i
], 0xffff, t2
, t3
);
92 TEST2("xori $a0, $a1, 0x0", reg_val1
[i
], 0x0, a0
, a1
);
93 TEST2("xori $s0, $s1, 0x23", reg_val1
[i
], 0x23, s0
, s1
);
94 TEST2("xori $t0, $t1, 0xff", reg_val2
[i
], 0xff, t0
, t1
);
95 TEST2("xori $t2, $t3, 0xffff", reg_val2
[i
], 0xffff, t2
, t3
);
96 TEST2("xori $a0, $a1, 0x0", reg_val2
[i
], 0x0, a0
, a1
);
97 TEST2("xori $s0, $s1, 0x23", reg_val2
[i
], 0x23, s0
, s1
);