1e584b0e99b31e6d257cc58c630cd6067550539e3sewardj#include <stdio.h> 2e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 3e584b0e99b31e6d257cc58c630cd6067550539e3sewardj#define TESTINST1(instruction, RSval, RTval, RD, RS, RT) \ 4e584b0e99b31e6d257cc58c630cd6067550539e3sewardj{ \ 5e584b0e99b31e6d257cc58c630cd6067550539e3sewardj unsigned int out; \ 6e584b0e99b31e6d257cc58c630cd6067550539e3sewardj __asm__ volatile( \ 7e584b0e99b31e6d257cc58c630cd6067550539e3sewardj "li $" #RD ", 0\n\t" \ 8e584b0e99b31e6d257cc58c630cd6067550539e3sewardj "move $" #RS ", %1\n\t" \ 9e584b0e99b31e6d257cc58c630cd6067550539e3sewardj "move $" #RT ", %2\n\t" \ 10e584b0e99b31e6d257cc58c630cd6067550539e3sewardj instruction "\n\t" \ 11e584b0e99b31e6d257cc58c630cd6067550539e3sewardj "move %0, $" #RD "\n\t" \ 12e584b0e99b31e6d257cc58c630cd6067550539e3sewardj : "=&r" (out) \ 13e584b0e99b31e6d257cc58c630cd6067550539e3sewardj : "r" (RSval), "r" (RTval) \ 14e584b0e99b31e6d257cc58c630cd6067550539e3sewardj : #RD, #RS, #RT, "cc", "memory" \ 15e584b0e99b31e6d257cc58c630cd6067550539e3sewardj ); \ 16e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("%s :: rd 0x%08x rs 0x%08x, rt 0x%08x\n", \ 17e584b0e99b31e6d257cc58c630cd6067550539e3sewardj instruction, out, RSval, RTval); \ 18e584b0e99b31e6d257cc58c630cd6067550539e3sewardj} 19e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 20e584b0e99b31e6d257cc58c630cd6067550539e3sewardj#define TESTINST2(instruction, RSval, imm, RT, RS) \ 21e584b0e99b31e6d257cc58c630cd6067550539e3sewardj{ \ 22e584b0e99b31e6d257cc58c630cd6067550539e3sewardj unsigned int out; \ 23e584b0e99b31e6d257cc58c630cd6067550539e3sewardj __asm__ volatile( \ 24e584b0e99b31e6d257cc58c630cd6067550539e3sewardj "move $" #RS ", %1\n\t" \ 25e584b0e99b31e6d257cc58c630cd6067550539e3sewardj instruction "\n\t" \ 26e584b0e99b31e6d257cc58c630cd6067550539e3sewardj "move %0, $" #RT "\n\t" \ 27e584b0e99b31e6d257cc58c630cd6067550539e3sewardj : "=&r" (out) \ 28e584b0e99b31e6d257cc58c630cd6067550539e3sewardj : "r" (RSval) \ 29e584b0e99b31e6d257cc58c630cd6067550539e3sewardj : #RT, #RS, "cc", "memory" \ 30e584b0e99b31e6d257cc58c630cd6067550539e3sewardj ); \ 31e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("%s :: rt 0x%08x rs 0x%08x, imm 0x%08x\n", \ 32e584b0e99b31e6d257cc58c630cd6067550539e3sewardj instruction, out, RSval, imm); \ 33e584b0e99b31e6d257cc58c630cd6067550539e3sewardj} 34e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 35e584b0e99b31e6d257cc58c630cd6067550539e3sewardj#define TESTINST3(instruction, RSval, RD, RS) \ 36e584b0e99b31e6d257cc58c630cd6067550539e3sewardj{ \ 37e584b0e99b31e6d257cc58c630cd6067550539e3sewardj unsigned int out; \ 38e584b0e99b31e6d257cc58c630cd6067550539e3sewardj __asm__ volatile( \ 39e584b0e99b31e6d257cc58c630cd6067550539e3sewardj "move $" #RS ", %1\n\t" \ 40e584b0e99b31e6d257cc58c630cd6067550539e3sewardj instruction "\n\t" \ 41e584b0e99b31e6d257cc58c630cd6067550539e3sewardj "move %0, $" #RD "\n\t" \ 42e584b0e99b31e6d257cc58c630cd6067550539e3sewardj : "=&r" (out) \ 43e584b0e99b31e6d257cc58c630cd6067550539e3sewardj : "r" (RSval) \ 44e584b0e99b31e6d257cc58c630cd6067550539e3sewardj : #RD, #RS, "cc", "memory" \ 45e584b0e99b31e6d257cc58c630cd6067550539e3sewardj ); \ 46e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("%s :: rd 0x%08x rs 0x%08x\n", \ 47e584b0e99b31e6d257cc58c630cd6067550539e3sewardj instruction, out, RSval); \ 48e584b0e99b31e6d257cc58c630cd6067550539e3sewardj} 49e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 50e584b0e99b31e6d257cc58c630cd6067550539e3sewardj#define TESTINST3a(instruction, RSval, RTval, RS, RT) \ 51e584b0e99b31e6d257cc58c630cd6067550539e3sewardj{ \ 52e584b0e99b31e6d257cc58c630cd6067550539e3sewardj unsigned int HI; \ 53e584b0e99b31e6d257cc58c630cd6067550539e3sewardj unsigned int LO; \ 54e584b0e99b31e6d257cc58c630cd6067550539e3sewardj __asm__ volatile( \ 55e584b0e99b31e6d257cc58c630cd6067550539e3sewardj "li $" #RS ", 0x0\n\t" \ 56e584b0e99b31e6d257cc58c630cd6067550539e3sewardj "mthi $" #RS"\n\t" \ 57e584b0e99b31e6d257cc58c630cd6067550539e3sewardj "mtlo $" #RS"\n\t" \ 58e584b0e99b31e6d257cc58c630cd6067550539e3sewardj "move $" #RS ", %2\n\t" \ 59e584b0e99b31e6d257cc58c630cd6067550539e3sewardj "move $" #RT ", %3\n\t" \ 60e584b0e99b31e6d257cc58c630cd6067550539e3sewardj instruction "\n\t" \ 61e584b0e99b31e6d257cc58c630cd6067550539e3sewardj "mfhi %0 \n\t" \ 62e584b0e99b31e6d257cc58c630cd6067550539e3sewardj "mflo %1 \n\t" \ 63e584b0e99b31e6d257cc58c630cd6067550539e3sewardj : "=&r" (HI), "=&r" (LO) \ 64e584b0e99b31e6d257cc58c630cd6067550539e3sewardj : "r" (RSval), "r"(RTval) \ 65e584b0e99b31e6d257cc58c630cd6067550539e3sewardj : #RS, #RT, "cc", "memory" \ 66e584b0e99b31e6d257cc58c630cd6067550539e3sewardj ); \ 67e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("%s :: rs 0x%08x rt 0x%08x HI 0x%08x LO 0x%08x \n", \ 68e584b0e99b31e6d257cc58c630cd6067550539e3sewardj instruction, RSval, RTval, HI, LO); \ 69e584b0e99b31e6d257cc58c630cd6067550539e3sewardj} 70e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 71e584b0e99b31e6d257cc58c630cd6067550539e3sewardj#define TESTINST4(instruction, RTval, RSval, RT, RS, pos, size) \ 72e584b0e99b31e6d257cc58c630cd6067550539e3sewardj{ \ 73e584b0e99b31e6d257cc58c630cd6067550539e3sewardj unsigned int out; \ 74e584b0e99b31e6d257cc58c630cd6067550539e3sewardj __asm__ volatile( \ 75e584b0e99b31e6d257cc58c630cd6067550539e3sewardj "move $" #RT ", %1\n\t" \ 76e584b0e99b31e6d257cc58c630cd6067550539e3sewardj "move $" #RS ", %2\n\t" \ 77e584b0e99b31e6d257cc58c630cd6067550539e3sewardj instruction "\n\t" \ 78e584b0e99b31e6d257cc58c630cd6067550539e3sewardj "move %0, $" #RT "\n\t" \ 79e584b0e99b31e6d257cc58c630cd6067550539e3sewardj : "=&r" (out) \ 80e584b0e99b31e6d257cc58c630cd6067550539e3sewardj : "r" (RTval), "r" (RSval) \ 81e584b0e99b31e6d257cc58c630cd6067550539e3sewardj : #RT, #RS, "cc", "memory" \ 82e584b0e99b31e6d257cc58c630cd6067550539e3sewardj ); \ 83e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("%s :: rt 0x%08x rs 0x%08x, pos 0x%08x, size 0x%08x\n", \ 84e584b0e99b31e6d257cc58c630cd6067550539e3sewardj instruction, out, RSval, pos, size); \ 85e584b0e99b31e6d257cc58c630cd6067550539e3sewardj} 86e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 87e584b0e99b31e6d257cc58c630cd6067550539e3sewardjconst unsigned int mem[] = { 88e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 0x121f1e1f, 0, 3, -1, 89e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 0x232f2e2f, 0x242c2b2b, 0x252a2e2b, 0x262d2d2a, 90e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 0x3f343f3e, 0x3e353d3c, 0x363a3c3b, 0x3b373b3a, 91e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 0x454f4e45, 0x4e464d46, 0x474d474c, 0x4a484a4c 92e584b0e99b31e6d257cc58c630cd6067550539e3sewardj}; 93e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 94e584b0e99b31e6d257cc58c630cd6067550539e3sewardj// load $t0, 0($t1) 95e584b0e99b31e6d257cc58c630cd6067550539e3sewardj#define TESTINSN5LOAD(instruction, RTval, offset, RT) \ 96e584b0e99b31e6d257cc58c630cd6067550539e3sewardj{ \ 97e584b0e99b31e6d257cc58c630cd6067550539e3sewardj unsigned int out; \ 98e584b0e99b31e6d257cc58c630cd6067550539e3sewardj __asm__ volatile( \ 99e584b0e99b31e6d257cc58c630cd6067550539e3sewardj "move $t1, %1\n\t" \ 100e584b0e99b31e6d257cc58c630cd6067550539e3sewardj "li $t0, " #RTval"\n\t" \ 101e584b0e99b31e6d257cc58c630cd6067550539e3sewardj instruction "\n\t" \ 102e584b0e99b31e6d257cc58c630cd6067550539e3sewardj "move %0, $" #RT "\n\t" \ 103e584b0e99b31e6d257cc58c630cd6067550539e3sewardj : "=&r" (out) \ 104e584b0e99b31e6d257cc58c630cd6067550539e3sewardj : "r" (mem), "r" (RTval) \ 105e584b0e99b31e6d257cc58c630cd6067550539e3sewardj : #RT, "cc", "memory" \ 106e584b0e99b31e6d257cc58c630cd6067550539e3sewardj ); \ 107e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("%s :: rt 0x%08x\n", \ 108e584b0e99b31e6d257cc58c630cd6067550539e3sewardj instruction, out); \ 109e584b0e99b31e6d257cc58c630cd6067550539e3sewardj} 110e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 111e584b0e99b31e6d257cc58c630cd6067550539e3sewardj#define TESTINSN_HILO(RSval) \ 112e584b0e99b31e6d257cc58c630cd6067550539e3sewardj{ \ 113e584b0e99b31e6d257cc58c630cd6067550539e3sewardj unsigned int HI; \ 114e584b0e99b31e6d257cc58c630cd6067550539e3sewardj unsigned int LO; \ 115e584b0e99b31e6d257cc58c630cd6067550539e3sewardj __asm__ volatile( \ 116e584b0e99b31e6d257cc58c630cd6067550539e3sewardj "move $t0, %2\n\t" \ 117e584b0e99b31e6d257cc58c630cd6067550539e3sewardj "mthi $t0\n\t" \ 118e584b0e99b31e6d257cc58c630cd6067550539e3sewardj "addiu $t0, $t0, 0xffff\n\t" \ 119e584b0e99b31e6d257cc58c630cd6067550539e3sewardj "mtlo $t0\n\t" \ 120e584b0e99b31e6d257cc58c630cd6067550539e3sewardj "mfhi %0\n\t" \ 121e584b0e99b31e6d257cc58c630cd6067550539e3sewardj "mflo %1\n\t" \ 122e584b0e99b31e6d257cc58c630cd6067550539e3sewardj : "=&r" (HI), "=&r" (LO) \ 123e584b0e99b31e6d257cc58c630cd6067550539e3sewardj : "r" (RSval)\ 124e584b0e99b31e6d257cc58c630cd6067550539e3sewardj : "cc", "memory" \ 125e584b0e99b31e6d257cc58c630cd6067550539e3sewardj ); \ 126e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("mfhi mflo :: HI: 0x%x, LO: 0x%x\n", \ 127e584b0e99b31e6d257cc58c630cd6067550539e3sewardj HI, LO); \ 128e584b0e99b31e6d257cc58c630cd6067550539e3sewardj} 129e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 130e584b0e99b31e6d257cc58c630cd6067550539e3sewardjint main(int argc, char **argv) 131e584b0e99b31e6d257cc58c630cd6067550539e3sewardj{ 132e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("ADD\n"); 133e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("add $t0, $t1, $t2", 0, 0, t0, t1, t2); 134e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("add $t0, $t1, $t2", 0, 1, t0, t1, t2); 135e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("add $t0, $t1, $t2", 1, 0, t0, t1, t2); 136e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("add $t0, $t1, $t2", 1, 1, t0, t1, t2); 137e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("add $t0, $t1, $t2", 0, -1, t0, t1, t2); 138e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("add $t0, $t1, $t2", 1, -1, t0, t1, t2); 139e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("add $t0, $t1, $t2", 0x80000000, 0, t0, t1, t2); 140e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("add $t0, $t1, $t2", 0x31415927, 0x27181728, t0, t1, t2); 141e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("add $t0, $t1, $t2", 0x31415927, 0x97181728, t0, t1, t2); 142e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("add $t0, $t1, $t2", -1, 0, t0, t1, t2); 143e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("add $t0, $t1, $t2", 0, 0x80000000, t0, t1, t2); 144e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("add $t0, $t1, $t2", 0x7fffffff, 0x80000000, t0, t1, t2); 145e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 146e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("ADDI\n"); 147e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("addi $t0, $t1, 0", 0, 0, t0, t1); 148e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("addi $t0, $t1, 1", 0, 1, t0, t1); 149e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("addi $t0, $t1, 1", 1, 0, t0, t1); 150e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("addi $t0, $t1, 1", 1, 1, t0, t1); 151e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("addi $t0, $t1, -1", 0, -1, t0, t1); 152e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("addi $t0, $t1, -1", 1, -1, t0, t1); 153e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("addi $t0, $t1, 0", 0x80000000, 0, t0, t1); 154e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("addi $t0, $t1, 0", -1, 0, t0, t1); 155e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("addi $t0, $t1, 0", 0x80000000, 0, t0, t1); 156e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 157e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("ADDIU\n"); 158e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("addiu $t0, $t1, 0", 0, 0, t0, t1); 159e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("addiu $t0, $t1, 1", 0, 1, t0, t1); 160e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("addiu $t0, $t1, 1", 1, 0, t0, t1); 161e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("addiu $t0, $t1, 1", 1, 1, t0, t1); 162e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("addiu $t0, $t1, -1", 0, -1, t0, t1); 163e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("addiu $t0, $t1, -1", 1, -1, t0, t1); 164e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("addiu $t0, $t1, 0", 0x80000000, 0, t0, t1); 165e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("addiu $t0, $t1, 0", -1, 0, t0, t1); 166e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("addiu $t0, $t1, 0", 0x80000000, 0, t0, t1); 167e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 168e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("ADDU\n"); 169e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("addu $t0, $t1, $t2", 0, 0, t0, t1, t2); 170e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("addu $t0, $t1, $t2", 0, 1, t0, t1, t2); 171e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("addu $t0, $t1, $t2", 1, 0, t0, t1, t2); 172e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("addu $t0, $t1, $t2", 1, 1, t0, t1, t2); 173e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("addu $t0, $t1, $t2", 0, -1, t0, t1, t2); 174e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("addu $t0, $t1, $t2", 1, -1, t0, t1, t2); 175e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("addu $t0, $t1, $t2", 0x31415927, 0x27181728, t0, t1, t2); 176e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("addu $t0, $t1, $t2", 0x31415927, 0x97181728, t0, t1, t2); 177e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("addu $t0, $t1, $t2", 0, 0, t0, t1, t2); 178e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("addu $t0, $t1, $t2", 1, 0, t0, t1, t2); 179e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("addu $t0, $t1, $t2", 0, 1, t0, t1, t2); 180e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("addu $t0, $t1, $t2", -1, 0, t0, t1, t2); 181e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("addu $t0, $t1, $t2", 0, -1, t0, t1, t2); 182e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("addu $t0, $t1, $t2", 0, 0x80000000, t0, t1, t2); 183e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("addu $t0, $t1, $t2", 0x80000000, 0, t0, t1, t2); 184e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("addu $t0, $t1, $t2", 0x80000000, 0x80000000, t0, t1, t2); 185e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("addu $t0, $t1, $t2", 0x7fffffff, 0x80000000, t0, t1, t2); 186e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("addu $t0, $t1, $t2", 0x80000000, 0x7fffffff, t0, t1, t2); 187e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("addu $t0, $t1, $t2", 0x7fffffff, 0x7fffffff, t0, t1, t2); 188e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 189e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("AND\n"); 190e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("and $t0, $t1, $t2", 0x31415927, 0xffffffff, t0, t1, t2); 191e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("and $t0, $t1, $t2", 0x31415927, 0xee00ee00, t0, t1, t2); 192e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("and $t0, $t1, $t2", 0, 255, t0, t1, t2); 193e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("and $t0, $t1, $t2", -1, 0, t0, t1, t2); 194e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("and $t0, $t1, $t2", 0, 1, t0, t1, t2); 195e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("and $t0, $t1, $t2", 0, 0, t0, t1, t2); 196e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("and $t0, $t1, $t2", 0x80000000, -1, t0, t1, t2); 197e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("and $t0, $t1, $t2", 0x80000000, 0x80000000, t0, t1, t2); 198e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("and $t0, $t1, $t2", 0x7fffffff, 0, t0, t1, t2); 199e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("and $t0, $t1, $t2", 0x80000000, 0x80000000, t0, t1, t2); 200e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("and $t0, $t1, $t2", 0x7fffffff, 0x80000000, t0, t1, t2); 201e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("and $t0, $t1, $t2", 0x80000000, 0xff000000, t0, t1, t2); 202e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("and $t0, $t1, $t2", 0x7fffffff, 0x0dd00000, t0, t1, t2); 203e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("and $t0, $t1, $t2", 0x31415927, 0xffffffff, t0, t1, t2); 204e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("and $t0, $t1, $t2", 0x31415927, 0xee00ee00, t0, t1, t2); 205e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("and $t0, $t1, $t2", 0, 255, t0, t1, t2); 206e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("and $t0, $t1, $t2", 1, 0, t0, t1, t2); 207e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("and $t0, $t1, $t2", 0, 1, t0, t1, t2); 208e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("and $t0, $t1, $t2", -1, 0, t0, t1, t2); 209e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("and $t0, $t1, $t2", 0, -1, t0, t1, t2); 210e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("and $t0, $t1, $t2", 0, 0x80000000, t0, t1, t2); 211e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("and $t0, $t1, $t2", 0x80000000, 0, t0, t1, t2); 212e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("and $t0, $t1, $t2", 0x80000000, 0x80000000, t0, t1, t2); 213e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("and $t0, $t1, $t2", 0x7fffffff, 0x80000000, t0, t1, t2); 214e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("and $t0, $t1, $t2", 0x80000000, 0xff000000, t0, t1, t2); 215e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("and $t0, $t1, $t2", 0x7fffffff, 0x0dd00000, t0, t1, t2); 216e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 217e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("ANDI\n"); 218e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("andi $t0, $t1, 1", 0, 1, t0, t1); 219e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("andi $t0, $t1, 0", 1, 0, t0, t1); 220e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("andi $t0, $t1, 1", 1, 1, t0, t1); 221e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("andi $t0, $t1, 1", 0x7fffffff, 0, t0, t1); 222e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("andi $t0, $t1, 0", 0x80000000, 0, t0, t1); 223e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("andi $t0, $t1, 0x3145", 0xffffffff, 0x3145, t0, t1); 224e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 225e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("CLO\n"); 226e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("clo $t0, $t1", 0, t0, t1); 227e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("clo $t0, $t1", 1, t0, t1); 228e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("clo $t0, $t1", 0x10, t0, t1); 229e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("clo $t0, $t1", 0xffffffff, t0, t1); 230e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 231e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("CLZ\n"); 232e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("clz $t0, $t1", 0, t0, t1); 233e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("clz $t0, $t1", 1, t0, t1); 234e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("clz $t0, $t1", 0x10, t0, t1); 235e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("clz $t0, $t1", 0xffffffff, t0, t1); 236e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 237e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("DIV\n"); 238e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("div $t0, $t1", 0x6, 0x2, t0, t1); 239e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("div $t0, $t1", 0x7fffffff, 0x7fffffff, t0, t1); 240e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("div $t0, $t1", 0xffffffff, 0x1, t0, t1); 241e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("div $t0, $t1", 0x1, 0xffffffff, t0, t1); 242e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("div $t0, $t1", 0x2, 0x6, t0, t1); 243e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 244e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("DIVU\n"); 245e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("divu $t0, $t1", 0x6, 0x2, t0, t1); 246e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("divu $t0, $t1", 0x7fffffff, 0x7fffffff, t0, t1); 247e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("divu $t0, $t1", 0xffffffff, 0x1, t0, t1); 248e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("divu $t0, $t1", 0x1, 0xffffffff, t0, t1); 249e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("divu $t0, $t1", 0x2, 0x6, t0, t1); 250e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("divu $t0, $t1", 0x0, 0x2, t0, t1); 251e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 2524931c0dbc3912b97beb3784122d1ea7825a2c882petarj#if (__mips==32) && (__mips_isa_rev>=2) 253e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("EXT\n"); 2547ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 1", 0x0, 0x0, t0, t1, 0, 1); 2557ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 1", 0x0, 0xffffffff, t0, t1, 0, 1); 2567ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 1", 0x0, 0x98765432, t0, t1, 0, 1); 2577ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 1", 0x0, 0xff865421, t0, t1, 0, 1); 2587ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 1", 0xffffffff, 0x0, t0, t1, 0, 1); 2597ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 1", 0xffffffff, 0xffffffff, t0, t1, 0, 1); 2607ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 1", 0xffffffff, 0x98765432, t0, t1, 0, 1); 2617ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 1", 0xffffffff, 0xff865421, t0, t1, 0, 1); 2627ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 1", 0x98765432, 0x0, t0, t1, 0, 1); 2637ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 1", 0x98765432, 0xffffffff, t0, t1, 0, 1); 2647ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 1", 0x98765432, 0x98765432, t0, t1, 0, 1); 2657ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 1", 0x98765432, 0xff865421, t0, t1, 0, 1); 2667ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 1", 0xff865421, 0x0, t0, t1, 0, 1); 2677ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 1", 0xff865421, 0xffffffff, t0, t1, 0, 1); 2687ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 1", 0xff865421, 0x98765432, t0, t1, 0, 1); 2697ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 1", 0xff865421, 0xff865421, t0, t1, 0, 1); 2707ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 4", 0x0, 0x0, t0, t1, 0, 4); 2717ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 4", 0x0, 0xffffffff, t0, t1, 0, 4); 2727ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 4", 0x0, 0x98765432, t0, t1, 0, 4); 2737ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 4", 0x0, 0xff865421, t0, t1, 0, 4); 2747ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 4", 0xffffffff, 0x0, t0, t1, 0, 4); 2757ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 4", 0xffffffff, 0xffffffff, t0, t1, 0, 4); 2767ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 4", 0xffffffff, 0x98765432, t0, t1, 0, 4); 2777ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 4", 0xffffffff, 0xff865421, t0, t1, 0, 4); 2787ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 4", 0x98765432, 0x0, t0, t1, 0, 4); 2797ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 4", 0x98765432, 0xffffffff, t0, t1, 0, 4); 2807ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 4", 0x98765432, 0x98765432, t0, t1, 0, 4); 2817ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 4", 0x98765432, 0xff865421, t0, t1, 0, 4); 2827ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 4", 0xff865421, 0x0, t0, t1, 0, 4); 2837ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 4", 0xff865421, 0xffffffff, t0, t1, 0, 4); 2847ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 4", 0xff865421, 0x98765432, t0, t1, 0, 4); 2857ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 4", 0xff865421, 0xff865421, t0, t1, 0, 4); 2867ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 16", 0x0, 0x0, t0, t1, 0, 16); 2877ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 16", 0x0, 0xffffffff, t0, t1, 0, 16); 2887ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 16", 0x0, 0x98765432, t0, t1, 0, 16); 2897ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 16", 0x0, 0xff865421, t0, t1, 0, 16); 2907ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 16", 0xffffffff, 0x0, t0, t1, 0, 16); 2917ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 16", 0xffffffff, 0xffffffff, t0, t1, 0, 16); 2927ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 16", 0xffffffff, 0x98765432, t0, t1, 0, 16); 2937ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 16", 0xffffffff, 0xff865421, t0, t1, 0, 16); 2947ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 16", 0x98765432, 0x0, t0, t1, 0, 16); 2957ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 16", 0x98765432, 0xffffffff, t0, t1, 0, 16); 2967ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 16", 0x98765432, 0x98765432, t0, t1, 0, 16); 2977ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 16", 0x98765432, 0xff865421, t0, t1, 0, 16); 2987ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 16", 0xff865421, 0x0, t0, t1, 0, 16); 2997ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 16", 0xff865421, 0xffffffff, t0, t1, 0, 16); 3007ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 16", 0xff865421, 0x98765432, t0, t1, 0, 16); 3017ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 16", 0xff865421, 0xff865421, t0, t1, 0, 16); 3027ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 32", 0x0, 0x0, t0, t1, 0, 32); 3037ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 32", 0x0, 0xffffffff, t0, t1, 0, 32); 3047ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 32", 0x0, 0x98765432, t0, t1, 0, 32); 3057ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 32", 0x0, 0xff865421, t0, t1, 0, 32); 3067ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 32", 0xffffffff, 0x0, t0, t1, 0, 32); 3077ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 32", 0xffffffff, 0xffffffff, t0, t1, 0, 32); 3087ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 32", 0xffffffff, 0x98765432, t0, t1, 0, 32); 3097ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 32", 0xffffffff, 0xff865421, t0, t1, 0, 32); 3107ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 32", 0x98765432, 0x0, t0, t1, 0, 32); 3117ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 32", 0x98765432, 0xffffffff, t0, t1, 0, 32); 3127ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 32", 0x98765432, 0x98765432, t0, t1, 0, 32); 3137ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 32", 0x98765432, 0xff865421, t0, t1, 0, 32); 3147ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 32", 0xff865421, 0x0, t0, t1, 0, 32); 3157ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 32", 0xff865421, 0xffffffff, t0, t1, 0, 32); 3167ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 32", 0xff865421, 0x98765432, t0, t1, 0, 32); 3177ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 0, 32", 0xff865421, 0xff865421, t0, t1, 0, 32); 3187ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj 3197ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 1", 0x0, 0x0, t0, t1, 4, 1); 3207ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 1", 0x0, 0xffffffff, t0, t1, 4, 1); 3217ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 1", 0x0, 0x98765432, t0, t1, 4, 1); 3227ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 1", 0x0, 0xff865421, t0, t1, 4, 1); 3237ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 1", 0xffffffff, 0x0, t0, t1, 4, 1); 3247ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 1", 0xffffffff, 0xffffffff, t0, t1, 4, 1); 3257ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 1", 0xffffffff, 0x98765432, t0, t1, 4, 1); 3267ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 1", 0xffffffff, 0xff865421, t0, t1, 4, 1); 3277ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 1", 0x98765432, 0x0, t0, t1, 4, 1); 3287ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 1", 0x98765432, 0xffffffff, t0, t1, 4, 1); 3297ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 1", 0x98765432, 0x98765432, t0, t1, 4, 1); 3307ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 1", 0x98765432, 0xff865421, t0, t1, 4, 1); 3317ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 1", 0xff865421, 0x0, t0, t1, 4, 1); 3327ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 1", 0xff865421, 0xffffffff, t0, t1, 4, 1); 3337ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 1", 0xff865421, 0x98765432, t0, t1, 4, 1); 3347ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 1", 0xff865421, 0xff865421, t0, t1, 4, 1); 3357ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 4", 0x0, 0x0, t0, t1, 4, 4); 3367ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 4", 0x0, 0xffffffff, t0, t1, 4, 4); 3377ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 4", 0x0, 0x98765432, t0, t1, 4, 4); 3387ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 4", 0x0, 0xff865421, t0, t1, 4, 4); 3397ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 4", 0xffffffff, 0x0, t0, t1, 4, 4); 3407ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 4", 0xffffffff, 0xffffffff, t0, t1, 4, 4); 3417ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 4", 0xffffffff, 0x98765432, t0, t1, 4, 4); 3427ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 4", 0xffffffff, 0xff865421, t0, t1, 4, 4); 3437ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 4", 0x98765432, 0x0, t0, t1, 4, 4); 3447ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 4", 0x98765432, 0xffffffff, t0, t1, 4, 4); 3457ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 4", 0x98765432, 0x98765432, t0, t1, 4, 4); 3467ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 4", 0x98765432, 0xff865421, t0, t1, 4, 4); 3477ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 4", 0xff865421, 0x0, t0, t1, 4, 4); 3487ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 4", 0xff865421, 0xffffffff, t0, t1, 4, 4); 3497ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 4", 0xff865421, 0x98765432, t0, t1, 4, 4); 3507ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 4", 0xff865421, 0xff865421, t0, t1, 4, 4); 3517ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 16", 0x0, 0x0, t0, t1, 4, 16); 3527ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 16", 0x0, 0xffffffff, t0, t1, 4, 16); 3537ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 16", 0x0, 0x98765432, t0, t1, 4, 16); 3547ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 16", 0x0, 0xff865421, t0, t1, 4, 16); 3557ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 16", 0xffffffff, 0x0, t0, t1, 4, 16); 3567ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 16", 0xffffffff, 0xffffffff, t0, t1, 4, 16); 3577ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 16", 0xffffffff, 0x98765432, t0, t1, 4, 16); 3587ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 16", 0xffffffff, 0xff865421, t0, t1, 4, 16); 3597ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 16", 0x98765432, 0x0, t0, t1, 4, 16); 3607ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 16", 0x98765432, 0xffffffff, t0, t1, 4, 16); 3617ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 16", 0x98765432, 0x98765432, t0, t1, 4, 16); 3627ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 16", 0x98765432, 0xff865421, t0, t1, 4, 16); 3637ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 16", 0xff865421, 0x0, t0, t1, 4, 16); 3647ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 16", 0xff865421, 0xffffffff, t0, t1, 4, 16); 3657ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 16", 0xff865421, 0x98765432, t0, t1, 4, 16); 3667ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 16", 0xff865421, 0xff865421, t0, t1, 4, 16); 3677ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 28", 0x0, 0x0, t0, t1, 4, 28); 3687ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 28", 0x0, 0xffffffff, t0, t1, 4, 28); 3697ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 28", 0x0, 0x98765432, t0, t1, 4, 28); 3707ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 28", 0x0, 0xff865421, t0, t1, 4, 28); 3717ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 28", 0xffffffff, 0x0, t0, t1, 4, 28); 3727ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 28", 0xffffffff, 0xffffffff, t0, t1, 4, 28); 3737ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 28", 0xffffffff, 0x98765432, t0, t1, 4, 28); 3747ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 28", 0xffffffff, 0xff865421, t0, t1, 4, 28); 3757ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 28", 0x98765432, 0x0, t0, t1, 4, 28); 3767ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 28", 0x98765432, 0xffffffff, t0, t1, 4, 28); 3777ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 28", 0x98765432, 0x98765432, t0, t1, 4, 28); 3787ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 28", 0x98765432, 0xff865421, t0, t1, 4, 28); 3797ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 28", 0xff865421, 0x0, t0, t1, 4, 28); 3807ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 28", 0xff865421, 0xffffffff, t0, t1, 4, 28); 3817ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 28", 0xff865421, 0x98765432, t0, t1, 4, 28); 3827ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 4, 28", 0xff865421, 0xff865421, t0, t1, 4, 28); 3837ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj 3847ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 1", 0x0, 0x0, t0, t1, 1, 16); 3857ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 1", 0x0, 0xffffffff, t0, t1, 1, 16); 3867ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 1", 0x0, 0x98765432, t0, t1, 1, 16); 3877ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 1", 0x0, 0xff865421, t0, t1, 1, 16); 3887ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 1", 0xffffffff, 0x0, t0, t1, 1, 16); 3897ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 1", 0xffffffff, 0xffffffff, t0, t1, 1, 16); 3907ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 1", 0xffffffff, 0x98765432, t0, t1, 1, 16); 3917ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 1", 0xffffffff, 0xff865421, t0, t1, 1, 16); 3927ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 1", 0x98765432, 0x0, t0, t1, 1, 16); 3937ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 1", 0x98765432, 0xffffffff, t0, t1, 1, 16); 3947ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 1", 0x98765432, 0x98765432, t0, t1, 1, 16); 3957ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 1", 0x98765432, 0xff865421, t0, t1, 1, 16); 3967ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 1", 0xff865421, 0x0, t0, t1, 1, 16); 3977ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 1", 0xff865421, 0xffffffff, t0, t1, 1, 16); 3987ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 1", 0xff865421, 0x98765432, t0, t1, 1, 16); 3997ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 1", 0xff865421, 0xff865421, t0, t1, 1, 16); 4007ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 4", 0x0, 0x0, t0, t1, 16, 4); 4017ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 4", 0x0, 0xffffffff, t0, t1, 16, 4); 4027ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 4", 0x0, 0x98765432, t0, t1, 16, 4); 4037ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 4", 0x0, 0xff865421, t0, t1, 16, 4); 4047ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 4", 0xffffffff, 0x0, t0, t1, 16, 4); 4057ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 4", 0xffffffff, 0xffffffff, t0, t1, 16, 4); 4067ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 4", 0xffffffff, 0x98765432, t0, t1, 16, 4); 4077ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 4", 0xffffffff, 0xff865421, t0, t1, 16, 4); 4087ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 4", 0x98765432, 0x0, t0, t1, 16, 4); 4097ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 4", 0x98765432, 0xffffffff, t0, t1, 16, 4); 4107ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 4", 0x98765432, 0x98765432, t0, t1, 16, 4); 4117ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 4", 0x98765432, 0xff865421, t0, t1, 16, 4); 4127ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 4", 0xff865421, 0x0, t0, t1, 16, 4); 4137ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 4", 0xff865421, 0xffffffff, t0, t1, 16, 4); 4147ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 4", 0xff865421, 0x98765432, t0, t1, 16, 4); 4157ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 4", 0xff865421, 0xff865421, t0, t1, 16, 4); 4167ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 16", 0x0, 0x0, t0, t1, 16, 16); 4177ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 16", 0x0, 0xffffffff, t0, t1, 16, 16); 4187ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 16", 0x0, 0x98765432, t0, t1, 16, 16); 4197ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 16", 0x0, 0xff865421, t0, t1, 16, 16); 4207ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 16", 0xffffffff, 0x0, t0, t1, 16, 16); 4217ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 16", 0xffffffff, 0xffffffff, t0, t1, 16, 16); 4227ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 16", 0xffffffff, 0x98765432, t0, t1, 16, 16); 4237ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 16", 0xffffffff, 0xff865421, t0, t1, 16, 16); 4247ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 16", 0x98765432, 0x0, t0, t1, 16, 16); 4257ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 16", 0x98765432, 0xffffffff, t0, t1, 16, 16); 4267ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 16", 0x98765432, 0x98765432, t0, t1, 16, 16); 4277ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 16", 0x98765432, 0xff865421, t0, t1, 16, 16); 4287ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 16", 0xff865421, 0x0, t0, t1, 16, 16); 4297ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 16", 0xff865421, 0xffffffff, t0, t1, 16, 16); 4307ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 16", 0xff865421, 0x98765432, t0, t1, 16, 16); 4317ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 16, 16", 0xff865421, 0xff865421, t0, t1, 16, 16); 4327ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj 4337ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 31, 1", 0x0, 0x0, t0, t1, 31, 1); 4347ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 31, 1", 0x0, 0xffffffff, t0, t1, 31, 1); 4357ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 31, 1", 0x0, 0x98765432, t0, t1, 31, 1); 4367ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 31, 1", 0x0, 0xff865421, t0, t1, 31, 1); 4377ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 31, 1", 0xffffffff, 0x0, t0, t1, 31, 1); 4387ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 31, 1", 0xffffffff, 0xffffffff, t0, t1, 31, 1); 4397ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 31, 1", 0xffffffff, 0x98765432, t0, t1, 31, 1); 4407ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 31, 1", 0xffffffff, 0xff865421, t0, t1, 31, 1); 4417ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 31, 1", 0x98765432, 0x0, t0, t1, 31, 1); 4427ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 31, 1", 0x98765432, 0xffffffff, t0, t1, 31, 1); 4437ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 31, 1", 0x98765432, 0x98765432, t0, t1, 31, 1); 4447ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 31, 1", 0x98765432, 0xff865421, t0, t1, 31, 1); 4457ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 31, 1", 0xff865421, 0x0, t0, t1, 31, 1); 4467ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 31, 1", 0xff865421, 0xffffffff, t0, t1, 31, 1); 4477ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 31, 1", 0xff865421, 0x98765432, t0, t1, 31, 1); 4487ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ext $t0, $t1, 31, 1", 0xff865421, 0xff865421, t0, t1, 31, 1); 449e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 450e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("INS\n"); 4517ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 1", 0x0, 0x0, t0, t1, 0, 1); 4527ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 1", 0x0, 0xffffffff, t0, t1, 0, 1); 4537ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 1", 0x0, 0x98765432, t0, t1, 0, 1); 4547ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 1", 0x0, 0xff865421, t0, t1, 0, 1); 4557ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 1", 0xffffffff, 0x0, t0, t1, 0, 1); 4567ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 1", 0xffffffff, 0xffffffff, t0, t1, 0, 1); 4577ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 1", 0xffffffff, 0x98765432, t0, t1, 0, 1); 4587ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 1", 0xffffffff, 0xff865421, t0, t1, 0, 1); 4597ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 1", 0x98765432, 0x0, t0, t1, 0, 1); 4607ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 1", 0x98765432, 0xffffffff, t0, t1, 0, 1); 4617ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 1", 0x98765432, 0x98765432, t0, t1, 0, 1); 4627ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 1", 0x98765432, 0xff865421, t0, t1, 0, 1); 4637ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 1", 0xff865421, 0x0, t0, t1, 0, 1); 4647ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 1", 0xff865421, 0xffffffff, t0, t1, 0, 1); 4657ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 1", 0xff865421, 0x98765432, t0, t1, 0, 1); 4667ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 1", 0xff865421, 0xff865421, t0, t1, 0, 1); 4677ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 4", 0x0, 0x0, t0, t1, 0, 4); 4687ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 4", 0x0, 0xffffffff, t0, t1, 0, 4); 4697ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 4", 0x0, 0x98765432, t0, t1, 0, 4); 4707ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 4", 0x0, 0xff865421, t0, t1, 0, 4); 4717ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 4", 0xffffffff, 0x0, t0, t1, 0, 4); 4727ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 4", 0xffffffff, 0xffffffff, t0, t1, 0, 4); 4737ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 4", 0xffffffff, 0x98765432, t0, t1, 0, 4); 4747ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 4", 0xffffffff, 0xff865421, t0, t1, 0, 4); 4757ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 4", 0x98765432, 0x0, t0, t1, 0, 4); 4767ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 4", 0x98765432, 0xffffffff, t0, t1, 0, 4); 4777ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 4", 0x98765432, 0x98765432, t0, t1, 0, 4); 4787ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 4", 0x98765432, 0xff865421, t0, t1, 0, 4); 4797ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 4", 0xff865421, 0x0, t0, t1, 0, 4); 4807ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 4", 0xff865421, 0xffffffff, t0, t1, 0, 4); 4817ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 4", 0xff865421, 0x98765432, t0, t1, 0, 4); 4827ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 4", 0xff865421, 0xff865421, t0, t1, 0, 4); 4837ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 16", 0x0, 0x0, t0, t1, 0, 16); 4847ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 16", 0x0, 0xffffffff, t0, t1, 0, 16); 4857ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 16", 0x0, 0x98765432, t0, t1, 0, 16); 4867ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 16", 0x0, 0xff865421, t0, t1, 0, 16); 4877ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 16", 0xffffffff, 0x0, t0, t1, 0, 16); 4887ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 16", 0xffffffff, 0xffffffff, t0, t1, 0, 16); 4897ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 16", 0xffffffff, 0x98765432, t0, t1, 0, 16); 4907ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 16", 0xffffffff, 0xff865421, t0, t1, 0, 16); 4917ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 16", 0x98765432, 0x0, t0, t1, 0, 16); 4927ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 16", 0x98765432, 0xffffffff, t0, t1, 0, 16); 4937ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 16", 0x98765432, 0x98765432, t0, t1, 0, 16); 4947ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 16", 0x98765432, 0xff865421, t0, t1, 0, 16); 4957ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 16", 0xff865421, 0x0, t0, t1, 0, 16); 4967ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 16", 0xff865421, 0xffffffff, t0, t1, 0, 16); 4977ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 16", 0xff865421, 0x98765432, t0, t1, 0, 16); 4987ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 16", 0xff865421, 0xff865421, t0, t1, 0, 16); 4997ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 32", 0x0, 0x0, t0, t1, 0, 32); 5007ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 32", 0x0, 0xffffffff, t0, t1, 0, 32); 5017ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 32", 0x0, 0x98765432, t0, t1, 0, 32); 5027ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 32", 0x0, 0xff865421, t0, t1, 0, 32); 5037ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 32", 0xffffffff, 0x0, t0, t1, 0, 32); 5047ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 32", 0xffffffff, 0xffffffff, t0, t1, 0, 32); 5057ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 32", 0xffffffff, 0x98765432, t0, t1, 0, 32); 5067ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 32", 0xffffffff, 0xff865421, t0, t1, 0, 32); 5077ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 32", 0x98765432, 0x0, t0, t1, 0, 32); 5087ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 32", 0x98765432, 0xffffffff, t0, t1, 0, 32); 5097ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 32", 0x98765432, 0x98765432, t0, t1, 0, 32); 5107ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 32", 0x98765432, 0xff865421, t0, t1, 0, 32); 5117ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 32", 0xff865421, 0x0, t0, t1, 0, 32); 5127ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 32", 0xff865421, 0xffffffff, t0, t1, 0, 32); 5137ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 32", 0xff865421, 0x98765432, t0, t1, 0, 32); 5147ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 0, 32", 0xff865421, 0xff865421, t0, t1, 0, 32); 5157ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj 5167ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 1", 0x0, 0x0, t0, t1, 4, 1); 5177ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 1", 0x0, 0xffffffff, t0, t1, 4, 1); 5187ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 1", 0x0, 0x98765432, t0, t1, 4, 1); 5197ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 1", 0x0, 0xff865421, t0, t1, 4, 1); 5207ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 1", 0xffffffff, 0x0, t0, t1, 4, 1); 5217ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 1", 0xffffffff, 0xffffffff, t0, t1, 4, 1); 5227ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 1", 0xffffffff, 0x98765432, t0, t1, 4, 1); 5237ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 1", 0xffffffff, 0xff865421, t0, t1, 4, 1); 5247ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 1", 0x98765432, 0x0, t0, t1, 4, 1); 5257ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 1", 0x98765432, 0xffffffff, t0, t1, 4, 1); 5267ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 1", 0x98765432, 0x98765432, t0, t1, 4, 1); 5277ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 1", 0x98765432, 0xff865421, t0, t1, 4, 1); 5287ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 1", 0xff865421, 0x0, t0, t1, 4, 1); 5297ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 1", 0xff865421, 0xffffffff, t0, t1, 4, 1); 5307ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 1", 0xff865421, 0x98765432, t0, t1, 4, 1); 5317ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 1", 0xff865421, 0xff865421, t0, t1, 4, 1); 5327ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 4", 0x0, 0x0, t0, t1, 4, 4); 5337ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 4", 0x0, 0xffffffff, t0, t1, 4, 4); 5347ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 4", 0x0, 0x98765432, t0, t1, 4, 4); 5357ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 4", 0x0, 0xff865421, t0, t1, 4, 4); 5367ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 4", 0xffffffff, 0x0, t0, t1, 4, 4); 5377ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 4", 0xffffffff, 0xffffffff, t0, t1, 4, 4); 5387ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 4", 0xffffffff, 0x98765432, t0, t1, 4, 4); 5397ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 4", 0xffffffff, 0xff865421, t0, t1, 4, 4); 5407ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 4", 0x98765432, 0x0, t0, t1, 4, 4); 5417ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 4", 0x98765432, 0xffffffff, t0, t1, 4, 4); 5427ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 4", 0x98765432, 0x98765432, t0, t1, 4, 4); 5437ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 4", 0x98765432, 0xff865421, t0, t1, 4, 4); 5447ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 4", 0xff865421, 0x0, t0, t1, 4, 4); 5457ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 4", 0xff865421, 0xffffffff, t0, t1, 4, 4); 5467ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 4", 0xff865421, 0x98765432, t0, t1, 4, 4); 5477ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 4", 0xff865421, 0xff865421, t0, t1, 4, 4); 5487ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 16", 0x0, 0x0, t0, t1, 4, 16); 5497ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 16", 0x0, 0xffffffff, t0, t1, 4, 16); 5507ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 16", 0x0, 0x98765432, t0, t1, 4, 16); 5517ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 16", 0x0, 0xff865421, t0, t1, 4, 16); 5527ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 16", 0xffffffff, 0x0, t0, t1, 4, 16); 5537ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 16", 0xffffffff, 0xffffffff, t0, t1, 4, 16); 5547ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 16", 0xffffffff, 0x98765432, t0, t1, 4, 16); 5557ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 16", 0xffffffff, 0xff865421, t0, t1, 4, 16); 5567ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 16", 0x98765432, 0x0, t0, t1, 4, 16); 5577ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 16", 0x98765432, 0xffffffff, t0, t1, 4, 16); 5587ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 16", 0x98765432, 0x98765432, t0, t1, 4, 16); 5597ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 16", 0x98765432, 0xff865421, t0, t1, 4, 16); 5607ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 16", 0xff865421, 0x0, t0, t1, 4, 16); 5617ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 16", 0xff865421, 0xffffffff, t0, t1, 4, 16); 5627ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 16", 0xff865421, 0x98765432, t0, t1, 4, 16); 5637ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 16", 0xff865421, 0xff865421, t0, t1, 4, 16); 5647ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 28", 0x0, 0x0, t0, t1, 4, 28); 5657ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 28", 0x0, 0xffffffff, t0, t1, 4, 28); 5667ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 28", 0x0, 0x98765432, t0, t1, 4, 28); 5677ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 28", 0x0, 0xff865421, t0, t1, 4, 28); 5687ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 28", 0xffffffff, 0x0, t0, t1, 4, 28); 5697ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 28", 0xffffffff, 0xffffffff, t0, t1, 4, 28); 5707ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 28", 0xffffffff, 0x98765432, t0, t1, 4, 28); 5717ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 28", 0xffffffff, 0xff865421, t0, t1, 4, 28); 5727ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 28", 0x98765432, 0x0, t0, t1, 4, 28); 5737ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 28", 0x98765432, 0xffffffff, t0, t1, 4, 28); 5747ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 28", 0x98765432, 0x98765432, t0, t1, 4, 28); 5757ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 28", 0x98765432, 0xff865421, t0, t1, 4, 28); 5767ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 28", 0xff865421, 0x0, t0, t1, 4, 28); 5777ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 28", 0xff865421, 0xffffffff, t0, t1, 4, 28); 5787ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 28", 0xff865421, 0x98765432, t0, t1, 4, 28); 5797ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 4, 28", 0xff865421, 0xff865421, t0, t1, 4, 28); 5807ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj 5817ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 1", 0x0, 0x0, t0, t1, 1, 16); 5827ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 1", 0x0, 0xffffffff, t0, t1, 1, 16); 5837ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 1", 0x0, 0x98765432, t0, t1, 1, 16); 5847ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 1", 0x0, 0xff865421, t0, t1, 1, 16); 5857ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 1", 0xffffffff, 0x0, t0, t1, 1, 16); 5867ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 1", 0xffffffff, 0xffffffff, t0, t1, 1, 16); 5877ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 1", 0xffffffff, 0x98765432, t0, t1, 1, 16); 5887ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 1", 0xffffffff, 0xff865421, t0, t1, 1, 16); 5897ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 1", 0x98765432, 0x0, t0, t1, 1, 16); 5907ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 1", 0x98765432, 0xffffffff, t0, t1, 1, 16); 5917ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 1", 0x98765432, 0x98765432, t0, t1, 1, 16); 5927ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 1", 0x98765432, 0xff865421, t0, t1, 1, 16); 5937ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 1", 0xff865421, 0x0, t0, t1, 1, 16); 5947ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 1", 0xff865421, 0xffffffff, t0, t1, 1, 16); 5957ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 1", 0xff865421, 0x98765432, t0, t1, 1, 16); 5967ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 1", 0xff865421, 0xff865421, t0, t1, 1, 16); 5977ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 4", 0x0, 0x0, t0, t1, 16, 4); 5987ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 4", 0x0, 0xffffffff, t0, t1, 16, 4); 5997ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 4", 0x0, 0x98765432, t0, t1, 16, 4); 6007ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 4", 0x0, 0xff865421, t0, t1, 16, 4); 6017ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 4", 0xffffffff, 0x0, t0, t1, 16, 4); 6027ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 4", 0xffffffff, 0xffffffff, t0, t1, 16, 4); 6037ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 4", 0xffffffff, 0x98765432, t0, t1, 16, 4); 6047ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 4", 0xffffffff, 0xff865421, t0, t1, 16, 4); 6057ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 4", 0x98765432, 0x0, t0, t1, 16, 4); 6067ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 4", 0x98765432, 0xffffffff, t0, t1, 16, 4); 6077ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 4", 0x98765432, 0x98765432, t0, t1, 16, 4); 6087ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 4", 0x98765432, 0xff865421, t0, t1, 16, 4); 6097ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 4", 0xff865421, 0x0, t0, t1, 16, 4); 6107ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 4", 0xff865421, 0xffffffff, t0, t1, 16, 4); 6117ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 4", 0xff865421, 0x98765432, t0, t1, 16, 4); 6127ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 4", 0xff865421, 0xff865421, t0, t1, 16, 4); 6137ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 16", 0x0, 0x0, t0, t1, 16, 16); 6147ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 16", 0x0, 0xffffffff, t0, t1, 16, 16); 6157ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 16", 0x0, 0x98765432, t0, t1, 16, 16); 6167ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 16", 0x0, 0xff865421, t0, t1, 16, 16); 6177ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 16", 0xffffffff, 0x0, t0, t1, 16, 16); 6187ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 16", 0xffffffff, 0xffffffff, t0, t1, 16, 16); 6197ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 16", 0xffffffff, 0x98765432, t0, t1, 16, 16); 6207ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 16", 0xffffffff, 0xff865421, t0, t1, 16, 16); 6217ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 16", 0x98765432, 0x0, t0, t1, 16, 16); 6227ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 16", 0x98765432, 0xffffffff, t0, t1, 16, 16); 6237ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 16", 0x98765432, 0x98765432, t0, t1, 16, 16); 6247ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 16", 0x98765432, 0xff865421, t0, t1, 16, 16); 6257ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 16", 0xff865421, 0x0, t0, t1, 16, 16); 6267ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 16", 0xff865421, 0xffffffff, t0, t1, 16, 16); 6277ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 16", 0xff865421, 0x98765432, t0, t1, 16, 16); 6287ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 16, 16", 0xff865421, 0xff865421, t0, t1, 16, 16); 6297ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj 6307ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 31, 1", 0x0, 0x0, t0, t1, 31, 1); 6317ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 31, 1", 0x0, 0xffffffff, t0, t1, 31, 1); 6327ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 31, 1", 0x0, 0x98765432, t0, t1, 31, 1); 6337ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 31, 1", 0x0, 0xff865421, t0, t1, 31, 1); 6347ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 31, 1", 0xffffffff, 0x0, t0, t1, 31, 1); 6357ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 31, 1", 0xffffffff, 0xffffffff, t0, t1, 31, 1); 6367ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 31, 1", 0xffffffff, 0x98765432, t0, t1, 31, 1); 6377ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 31, 1", 0xffffffff, 0xff865421, t0, t1, 31, 1); 6387ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 31, 1", 0x98765432, 0x0, t0, t1, 31, 1); 6397ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 31, 1", 0x98765432, 0xffffffff, t0, t1, 31, 1); 6407ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 31, 1", 0x98765432, 0x98765432, t0, t1, 31, 1); 6417ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 31, 1", 0x98765432, 0xff865421, t0, t1, 31, 1); 6427ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 31, 1", 0xff865421, 0x0, t0, t1, 31, 1); 6437ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 31, 1", 0xff865421, 0xffffffff, t0, t1, 31, 1); 6447ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 31, 1", 0xff865421, 0x98765432, t0, t1, 31, 1); 6457ca65aeabb690ae6db35e700c73452bb310f1a0fpetarj TESTINST4("ins $t0, $t1, 31, 1", 0xff865421, 0xff865421, t0, t1, 31, 1); 6464931c0dbc3912b97beb3784122d1ea7825a2c882petarj#endif 647e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 648e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("LB\n"); 649e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lb $t0, 0($t1)", 0, 0, t0); 650e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lb $t0, 4($t1)", 0, 4, t0); 651e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lb $t0, 8($t1)", 0, 8, t0); 652e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lb $t0, 12($t1)", 0, 12, t0); 653e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lb $t0, 16($t1)", 0, 16, t0); 654e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lb $t0, 20($t1)", 0, 20, t0); 655e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lb $t0, 24($t1)", 0, 24, t0); 656e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lb $t0, 28($t1)", 0, 28, t0); 657e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lb $t0, 32($t1)", 0, 32, t0); 658e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lb $t0, 36($t1)", 0, 36, t0); 659e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lb $t0, 40($t1)", 0, 40, t0); 660e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lb $t0, 44($t1)", 0, 44, t0); 661e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lb $t0, 48($t1)", 0, 48, t0); 662e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lb $t0, 52($t1)", 0, 52, t0); 663e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lb $t0, 56($t1)", 0, 56, t0); 664e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lb $t0, 60($t1)", 0, 60, t0); 665e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lb $t0, 64($t1)", 0, 64, t0); 666e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lb $t0, 2($t1)", 0, 2, t0); 667e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lb $t0, 6($t1)", 0, 6, t0); 668e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lb $t0, 10($t1)", 0, 10, t0); 669e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lb $t0, 14($t1)", 0, 14, t0); 670e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lb $t0, 18($t1)", 0, 18, t0); 671e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lb $t0, 22($t1)", 0, 22, t0); 672e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lb $t0, 26($t1)", 0, 26, t0); 673e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lb $t0, 30($t1)", 0, 30, t0); 674e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lb $t0, 34($t1)", 0, 34, t0); 675e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lb $t0, 38($t1)", 0, 38, t0); 676e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 677e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("LBU\n"); 678e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lbu $t0, 0($t1)", 0, 0, t0); 679e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lbu $t0, 4($t1)", 0, 4, t0); 680e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lbu $t0, 8($t1)", 0, 8, t0); 681e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lbu $t0, 12($t1)", 0, 12, t0); 682e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lbu $t0, 16($t1)", 0, 16, t0); 683e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lbu $t0, 20($t1)", 0, 20, t0); 684e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lbu $t0, 24($t1)", 0, 24, t0); 685e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lbu $t0, 28($t1)", 0, 28, t0); 686e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lbu $t0, 32($t1)", 0, 32, t0); 687e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lbu $t0, 36($t1)", 0, 36, t0); 688e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lbu $t0, 40($t1)", 0, 40, t0); 689e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lbu $t0, 44($t1)", 0, 44, t0); 690e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lbu $t0, 48($t1)", 0, 48, t0); 691e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lbu $t0, 52($t1)", 0, 52, t0); 692e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lbu $t0, 56($t1)", 0, 56, t0); 693e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lbu $t0, 60($t1)", 0, 60, t0); 694e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lbu $t0, 64($t1)", 0, 64, t0); 695e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lbu $t0, 2($t1)", 0, 2, t0); 696e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lbu $t0, 6($t1)", 0, 6, t0); 697e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lbu $t0, 10($t1)", 0, 10, t0); 698e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lbu $t0, 14($t1)", 0, 14, t0); 699e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lbu $t0, 18($t1)", 0, 18, t0); 700e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lbu $t0, 22($t1)", 0, 22, t0); 701e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lbu $t0, 26($t1)", 0, 26, t0); 702e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lbu $t0, 30($t1)", 0, 30, t0); 703e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lbu $t0, 34($t1)", 0, 34, t0); 704e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lbu $t0, 38($t1)", 0, 38, t0); 705e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 706e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("LH\n"); 707e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lh $t0, 0($t1)", 0, 0, t0); 708e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lh $t0, 4($t1)", 0, 4, t0); 709e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lh $t0, 8($t1)", 0, 8, t0); 710e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lh $t0, 12($t1)", 0, 12, t0); 711e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lh $t0, 16($t1)", 0, 16, t0); 712e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lh $t0, 20($t1)", 0, 20, t0); 713e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lh $t0, 24($t1)", 0, 24, t0); 714e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lh $t0, 28($t1)", 0, 28, t0); 715e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lh $t0, 32($t1)", 0, 32, t0); 716e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lh $t0, 36($t1)", 0, 36, t0); 717e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lh $t0, 40($t1)", 0, 40, t0); 718e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lh $t0, 44($t1)", 0, 44, t0); 719e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lh $t0, 48($t1)", 0, 48, t0); 720e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lh $t0, 52($t1)", 0, 52, t0); 721e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lh $t0, 56($t1)", 0, 56, t0); 722e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lh $t0, 60($t1)", 0, 60, t0); 723e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lh $t0, 64($t1)", 0, 64, t0); 724e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lh $t0, 2($t1)", 0, 2, t0); 725e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lh $t0, 6($t1)", 0, 6, t0); 726e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lh $t0, 10($t1)", 0, 10, t0); 727e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lh $t0, 14($t1)", 0, 14, t0); 728e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lh $t0, 18($t1)", 0, 18, t0); 729e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lh $t0, 22($t1)", 0, 22, t0); 730e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lh $t0, 26($t1)", 0, 26, t0); 731e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lh $t0, 30($t1)", 0, 30, t0); 732e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lh $t0, 34($t1)", 0, 34, t0); 733e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lh $t0, 38($t1)", 0, 38, t0); 734e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 735e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("LHU\n"); 736e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lhu $t0, 0($t1)", 0, 0, t0); 737e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lhu $t0, 4($t1)", 0, 4, t0); 738e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lhu $t0, 8($t1)", 0, 8, t0); 739e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lhu $t0, 12($t1)", 0, 12, t0); 740e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lhu $t0, 16($t1)", 0, 16, t0); 741e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lhu $t0, 20($t1)", 0, 20, t0); 742e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lhu $t0, 24($t1)", 0, 24, t0); 743e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lhu $t0, 28($t1)", 0, 28, t0); 744e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lhu $t0, 32($t1)", 0, 32, t0); 745e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lhu $t0, 36($t1)", 0, 36, t0); 746e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lhu $t0, 40($t1)", 0, 40, t0); 747e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lhu $t0, 44($t1)", 0, 44, t0); 748e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lhu $t0, 48($t1)", 0, 48, t0); 749e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lhu $t0, 52($t1)", 0, 52, t0); 750e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lhu $t0, 56($t1)", 0, 56, t0); 751e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lhu $t0, 60($t1)", 0, 60, t0); 752e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lhu $t0, 64($t1)", 0, 64, t0); 753e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lhu $t0, 2($t1)", 0, 2, t0); 754e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lhu $t0, 6($t1)", 0, 6, t0); 755e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lhu $t0, 10($t1)", 0, 10, t0); 756e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lhu $t0, 14($t1)", 0, 14, t0); 757e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lhu $t0, 18($t1)", 0, 18, t0); 758e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lhu $t0, 22($t1)", 0, 22, t0); 759e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lhu $t0, 26($t1)", 0, 26, t0); 760e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lhu $t0, 30($t1)", 0, 30, t0); 761e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lhu $t0, 34($t1)", 0, 34, t0); 762e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lhu $t0, 38($t1)", 0, 38, t0); 763e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 764e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("LUI\n"); 765e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("lui $t0, 0xffff", 0xffff, t0, t1); 766e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("lui $t0, 0xff00", 0xff00, t0, t1); 767e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("lui $t0, 0xff", 0xff, t0, t1); 768e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("lui $t0, 0x0", 0x0, t0, t1); 769e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("lui $t0, 0x5", 0x5, t0, t1); 770e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("lui $t0, 0x387", 0x387, t0, t1); 771e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 772e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("LW\n"); 773e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lw $t0, 0($t1)", 0, 0, t0); 774e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lw $t0, 4($t1)", 0, 4, t0); 775e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lw $t0, 8($t1)", 0, 8, t0); 776e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lw $t0, 12($t1)", 0, 12, t0); 777e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lw $t0, 16($t1)", 0, 16, t0); 778e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lw $t0, 20($t1)", 0, 20, t0); 779e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lw $t0, 24($t1)", 0, 24, t0); 780e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lw $t0, 28($t1)", 0, 28, t0); 781e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lw $t0, 32($t1)", 0, 32, t0); 782e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lw $t0, 36($t1)", 0, 36, t0); 783e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lw $t0, 40($t1)", 0, 40, t0); 784e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lw $t0, 44($t1)", 0, 44, t0); 785e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lw $t0, 48($t1)", 0, 48, t0); 786e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lw $t0, 52($t1)", 0, 52, t0); 787e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lw $t0, 56($t1)", 0, 56, t0); 788e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lw $t0, 60($t1)", 0, 60, t0); 789e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lw $t0, 64($t1)", 0, 64, t0); 790e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lw $t0, 2($t1)", 0, 2, t0); 791e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lw $t0, 6($t1)", 0, 6, t0); 792e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lw $t0, 10($t1)", 0, 10, t0); 793e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lw $t0, 14($t1)", 0, 14, t0); 794e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lw $t0, 18($t1)", 0, 18, t0); 795e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lw $t0, 22($t1)", 0, 22, t0); 796e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lw $t0, 26($t1)", 0, 26, t0); 797e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lw $t0, 30($t1)", 0, 30, t0); 798e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lw $t0, 34($t1)", 0, 34, t0); 799e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lw $t0, 38($t1)", 0, 38, t0); 800e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 801e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("LWL\n"); 802e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwl $t0, 0($t1)", 0, 0, t0); 803e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwl $t0, 4($t1)", 0, 4, t0); 804e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwl $t0, 8($t1)", 0, 8, t0); 805e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwl $t0, 12($t1)", 0, 12, t0); 806e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwl $t0, 16($t1)", 0, 16, t0); 807e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwl $t0, 20($t1)", 0, 20, t0); 808e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwl $t0, 24($t1)", 0, 24, t0); 809e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwl $t0, 28($t1)", 0, 28, t0); 810e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwl $t0, 32($t1)", 0, 32, t0); 811e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwl $t0, 36($t1)", 0, 36, t0); 812e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwl $t0, 40($t1)", 0, 40, t0); 813e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwl $t0, 44($t1)", 0, 44, t0); 814e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwl $t0, 48($t1)", 0, 48, t0); 815e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwl $t0, 52($t1)", 0, 52, t0); 816e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwl $t0, 56($t1)", 0, 56, t0); 817e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwl $t0, 60($t1)", 0, 60, t0); 818e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwl $t0, 64($t1)", 0, 64, t0); 819e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwl $t0, 2($t1)", 0, 2, t0); 820e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwl $t0, 6($t1)", 0, 6, t0); 821e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwl $t0, 10($t1)", 0, 10, t0); 822e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwl $t0, 14($t1)", 0, 14, t0); 823e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwl $t0, 18($t1)", 0, 18, t0); 824e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwl $t0, 22($t1)", 0, 22, t0); 825e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwl $t0, 26($t1)", 0, 26, t0); 826e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwl $t0, 30($t1)", 0, 30, t0); 827e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwl $t0, 34($t1)", 0, 34, t0); 828e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwl $t0, 38($t1)", 0, 38, t0); 829e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 830e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("LWR\n"); 831e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwr $t0, 0($t1)", 0, 0, t0); 832e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwr $t0, 4($t1)", 0, 4, t0); 833e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwr $t0, 8($t1)", 0, 8, t0); 834e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwr $t0, 12($t1)", 0, 12, t0); 835e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwr $t0, 16($t1)", 0, 16, t0); 836e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwr $t0, 20($t1)", 0, 20, t0); 837e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwr $t0, 24($t1)", 0, 24, t0); 838e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwr $t0, 28($t1)", 0, 28, t0); 839e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwr $t0, 32($t1)", 0, 32, t0); 840e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwr $t0, 36($t1)", 0, 36, t0); 841e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwr $t0, 40($t1)", 0, 40, t0); 842e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwr $t0, 44($t1)", 0, 44, t0); 843e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwr $t0, 48($t1)", 0, 48, t0); 844e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwr $t0, 52($t1)", 0, 52, t0); 845e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwr $t0, 56($t1)", 0, 56, t0); 846e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwr $t0, 60($t1)", 0, 60, t0); 847e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwr $t0, 64($t1)", 0, 64, t0); 848e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwr $t0, 2($t1)", 0, 2, t0); 849e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwr $t0, 6($t1)", 0, 6, t0); 850e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwr $t0, 10($t1)", 0, 10, t0); 851e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwr $t0, 14($t1)", 0, 14, t0); 852e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwr $t0, 18($t1)", 0, 18, t0); 853e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwr $t0, 22($t1)", 0, 22, t0); 854e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwr $t0, 26($t1)", 0, 26, t0); 855e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwr $t0, 30($t1)", 0, 30, t0); 856e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwr $t0, 34($t1)", 0, 34, t0); 857e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN5LOAD("lwr $t0, 38($t1)", 0, 38, t0); 858e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 859e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("MADD\n"); 860e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("madd $t0, $t1", 0x6, 0x2, t0, t1); 861e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("madd $t0, $t1", 0x55, 0x28, t0, t1); 862e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("madd $t0, $t1", 0x18, 0xfff, t0, t1); 863e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("madd $t0, $t1", 0x7fffffff, 0x7fffffff, t0, t1); 864e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("madd $t0, $t1", 0xffffffff, 0x1, t0, t1); 865e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("madd $t0, $t1", 0x1, 0xffffffff, t0, t1); 866e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("madd $t0, $t1", 0x2, 0x6, t0, t1); 867e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("madd $t0, $t1", 0x356, 0x555, t0, t1); 868e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 869e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("MADDU\n"); 870e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("maddu $t0, $t1", 0x6, 0x2, t0, t1); 871e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("maddu $t0, $t1", 0x55, 0x28, t0, t1); 872e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("maddu $t0, $t1", 0x18, 0xfff, t0, t1); 873e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("maddu $t0, $t1", 0x7fffffff, 0x7fffffff, t0, t1); 874e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("maddu $t0, $t1", 0xffffffff, 0x1, t0, t1); 875e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("maddu $t0, $t1", 0x1, 0xffffffff, t0, t1); 876e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("maddu $t0, $t1", 0x2, 0x6, t0, t1); 877e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("maddu $t0, $t1", 0x356, 0x555, t0, t1); 878e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 879e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("MOVN\n"); 880e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movn $t0, $t1, $t2", 0x31415927, 0, t0, t1, t2); 881e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movn $t0, $t1, $t2", 0x31415927, 1, t0, t1, t2); 882e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movn $t0, $t1, $t2", 0, 255, t0, t1, t2); 883e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movn $t0, $t1, $t2", -1, 0, t0, t1, t2); 884e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movn $t0, $t1, $t2", 0, 1, t0, t1, t2); 885e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movn $t0, $t1, $t2", 0, 0, t0, t1, t2); 886e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movn $t0, $t1, $t2", 0x80000000, -1, t0, t1, t2); 887e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movn $t0, $t1, $t2", 0x80000000, 1, t0, t1, t2); 888e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movn $t0, $t1, $t2", 0x7fffffff, 1, t0, t1, t2); 889e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movn $t0, $t1, $t2", 0x80000000, 0, t0, t1, t2); 890e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movn $t0, $t1, $t2", 0x7fffffff, 0x80000000, t0, t1, t2); 891e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movn $t0, $t1, $t2", 0x80000000, 1, t0, t1, t2); 892e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movn $t0, $t1, $t2", 0x7fffffff, 0, t0, t1, t2); 893e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movn $t0, $t1, $t2", 0x31415927, 0, t0, t1, t2); 894e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movn $t0, $t1, $t2", 0x31415927, 0xee00ee00, t0, t1, t2); 895e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movn $t0, $t1, $t2", 0, 1, t0, t1, t2); 896e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movn $t0, $t1, $t2", 1, 0, t0, t1, t2); 897e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movn $t0, $t1, $t2", 0, 1, t0, t1, t2); 898e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movn $t0, $t1, $t2", -1, 0, t0, t1, t2); 899e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movn $t0, $t1, $t2", 0, -1, t0, t1, t2); 900e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movn $t0, $t1, $t2", 0, 0x80000000, t0, t1, t2); 901e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movn $t0, $t1, $t2", 0x80000000, 1, t0, t1, t2); 902e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movn $t0, $t1, $t2", 0x80000000, 0, t0, t1, t2); 903e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movn $t0, $t1, $t2", 0x7fffffff, 0x80000000, t0, t1, t2); 904e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movn $t0, $t1, $t2", 0x80000000, 1, t0, t1, t2); 905e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movn $t0, $t1, $t2", 0x7fffffff, 0, t0, t1, t2); 906e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 907e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("MOVZ\n"); 908e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movz $t0, $t1, $t2", 0x31415927, 0, t0, t1, t2); 909e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movz $t0, $t1, $t2", 0x31415927, 1, t0, t1, t2); 910e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movz $t0, $t1, $t2", 0, 255, t0, t1, t2); 911e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movz $t0, $t1, $t2", -1, 0, t0, t1, t2); 912e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movz $t0, $t1, $t2", 0, 1, t0, t1, t2); 913e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movz $t0, $t1, $t2", 0, 0, t0, t1, t2); 914e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movz $t0, $t1, $t2", 0x80000000, -1, t0, t1, t2); 915e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movz $t0, $t1, $t2", 0x80000000, 1, t0, t1, t2); 916e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movz $t0, $t1, $t2", 0x7fffffff, 1, t0, t1, t2); 917e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movz $t0, $t1, $t2", 0x80000000, 0, t0, t1, t2); 918e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movz $t0, $t1, $t2", 0x7fffffff, 0x80000000, t0, t1, t2); 919e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movz $t0, $t1, $t2", 0x80000000, 1, t0, t1, t2); 920e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movz $t0, $t1, $t2", 0x7fffffff, 0, t0, t1, t2); 921e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movz $t0, $t1, $t2", 0x31415927, 0, t0, t1, t2); 922e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movz $t0, $t1, $t2", 0x31415927, 0xee00ee00, t0, t1, t2); 923e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movz $t0, $t1, $t2", 0, 1, t0, t1, t2); 924e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movz $t0, $t1, $t2", 1, 0, t0, t1, t2); 925e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movz $t0, $t1, $t2", 0, 1, t0, t1, t2); 926e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movz $t0, $t1, $t2", -1, 0, t0, t1, t2); 927e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movz $t0, $t1, $t2", 0, -1, t0, t1, t2); 928e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movz $t0, $t1, $t2", 0, 0x80000000, t0, t1, t2); 929e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movz $t0, $t1, $t2", 0x80000000, 1, t0, t1, t2); 930e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movz $t0, $t1, $t2", 0x80000000, 0, t0, t1, t2); 931e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movz $t0, $t1, $t2", 0x7fffffff, 0x80000000, t0, t1, t2); 932e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movz $t0, $t1, $t2", 0x80000000, 1, t0, t1, t2); 933e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("movz $t0, $t1, $t2", 0x7fffffff, 0, t0, t1, t2); 934e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 935e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("MSUB\n"); 936e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("msub $t0, $t1", 0x6, 0x2, t0, t1); 937e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("msub $t0, $t1", 0x55, 0x28, t0, t1); 938e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("msub $t0, $t1", 0x18, 0xfff, t0, t1); 939e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("msub $t0, $t1", 0x7fffffff, 0x7fffffff, t0, t1); 940e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("msub $t0, $t1", 0xffffffff, 0x1, t0, t1); 941e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("msub $t0, $t1", 0x1, 0xffffffff, t0, t1); 942e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("msub $t0, $t1", 0x2, 0x6, t0, t1); 943e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("msub $t0, $t1", 0x356, 0x555, t0, t1); 944e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 945e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("MSUBU\n"); 946e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("msubu $t0, $t1", 0x31415927, 0xffffffff, t0, t1); 947e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("msubu $t0, $t1", 0x31415927, 0xee00ee00, t0, t1); 948e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("msubu $t0, $t1", 0, 255, t0, t1); 949e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("msubu $t0, $t1", -1, 0, t0, t1); 950e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("msubu $t0, $t1", 0, 1, t0, t1); 951e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("msubu $t0, $t1", 0, 0, t0, t1); 952e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("msubu $t0, $t1", 0x80000000, -1, t0, t1); 953e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("msubu $t0, $t1", 0x80000000, 0x80000000, t0, t1); 954e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("msubu $t0, $t1", 0x7fffffff, 0, t0, t1); 955e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("msubu $t0, $t1", 0x80000000, 0x80000000, t0, t1); 956e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("msubu $t0, $t1", 0x7fffffff, 0x80000000, t0, t1); 957e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("msubu $t0, $t1", 0x80000000, 0xff000000, t0, t1); 958e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("msubu $t0, $t1", 0x7fffffff, 0x0dd00000, t0, t1); 959e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("msubu $t0, $t1", 0x31415927, 0xffffffff, t0, t1); 960e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("msubu $t0, $t1", 0x31415927, 0xee00ee00, t0, t1); 961e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("msubu $t0, $t1", 0, 255, t0, t1); 962e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("msubu $t0, $t1", 1, 0, t0, t1); 963e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("msubu $t0, $t1", 0, 1, t0, t1); 964e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("msubu $t0, $t1", -1, 0, t0, t1); 965e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("msubu $t0, $t1", 0, -1, t0, t1); 966e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("msubu $t0, $t1", 0, 0x80000000, t0, t1); 967e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("msubu $t0, $t1", 0x80000000, 0, t0, t1); 968e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("msubu $t0, $t1", 0x80000000, 0x80000000, t0, t1); 969e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("msubu $t0, $t1", 0x7fffffff, 0x80000000, t0, t1); 970e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("msubu $t0, $t1", 0x80000000, 0xff000000, t0, t1); 971e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("msubu $t0, $t1", 0x7fffffff, 0x0dd00000, t0, t1); 972e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("msubu $t0, $t1", 0xffffffff, 0, t0, t1); 973e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("msubu $t0, $t1", 0, 0xffffffff, t0, t1); 974e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("msubu $t0, $t1", 0xffffffff, 0xffffffff, t0, t1); 975e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("msubu $t0, $t1", 0x7fffffff, 0x7fffffff, t0, t1); 976e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("msubu $t0, $t1", 0x0000ffff, 0x0000ffff, t0, t1); 977e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 978e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("MUL\n"); 979e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("mul $t0, $t1, $t2", 0x31415927, 0xffffffff, t0, t1, t2); 980e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("mul $t0, $t1, $t2", 0x31415927, 0xee00ee00, t0, t1, t2); 981e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("mul $t0, $t1, $t2", 0, 255, t0, t1, t2); 982e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("mul $t0, $t1, $t2", -1, 0, t0, t1, t2); 983e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("mul $t0, $t1, $t2", 0, 1, t0, t1, t2); 984e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("mul $t0, $t1, $t2", 0, 0, t0, t1, t2); 985e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("mul $t0, $t1, $t2", 0x80000000, -1, t0, t1, t2); 986e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("mul $t0, $t1, $t2", 0x80000000, 0x80000000, t0, t1, t2); 987e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("mul $t0, $t1, $t2", 0x7fffffff, 0, t0, t1, t2); 988e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("mul $t0, $t1, $t2", 0x80000000, 0x80000000, t0, t1, t2); 989e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("mul $t0, $t1, $t2", 0x7fffffff, 0x80000000, t0, t1, t2); 990e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("mul $t0, $t1, $t2", 0x80000000, 0xff000000, t0, t1, t2); 991e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("mul $t0, $t1, $t2", 0x7fffffff, 0x0dd00000, t0, t1, t2); 992e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("mul $t0, $t1, $t2", 0x31415927, 0xffffffff, t0, t1, t2); 993e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("mul $t0, $t1, $t2", 0x31415927, 0xee00ee00, t0, t1, t2); 994e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("mul $t0, $t1, $t2", 0, 255, t0, t1, t2); 995e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("mul $t0, $t1, $t2", 1, 0, t0, t1, t2); 996e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("mul $t0, $t1, $t2", 0, 1, t0, t1, t2); 997e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("mul $t0, $t1, $t2", -1, 0, t0, t1, t2); 998e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("mul $t0, $t1, $t2", 0, -1, t0, t1, t2); 999e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("mul $t0, $t1, $t2", 0, 0x80000000, t0, t1, t2); 1000e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("mul $t0, $t1, $t2", 0x80000000, 0, t0, t1, t2); 1001e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("mul $t0, $t1, $t2", 0x80000000, 0x80000000, t0, t1, t2); 1002e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("mul $t0, $t1, $t2", 0x7fffffff, 0x80000000, t0, t1, t2); 1003e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("mul $t0, $t1, $t2", 0x80000000, 0xff000000, t0, t1, t2); 1004e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("mul $t0, $t1, $t2", 0x7fffffff, 0x0dd00000, t0, t1, t2); 1005e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("mul $t0, $t1, $t2", 0xffffffff, 0, t0, t1, t2); 1006e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("mul $t0, $t1, $t2", 0, 0xffffffff, t0, t1, t2); 1007e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("mul $t0, $t1, $t2", 0xffffffff, 0xffffffff, t0, t1, t2); 1008e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("mul $t0, $t1, $t2", 0x7fffffff, 0x7fffffff, t0, t1, t2); 1009e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("mul $t0, $t1, $t2", 0x0000ffff, 0x0000ffff, t0, t1, t2); 1010e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 1011e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("MULT\n"); 1012e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("mult $t0, $t1", 0x31415927, 0xffffffff, t0, t1); 1013e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("mult $t0, $t1", 0x31415927, 0xee00ee00, t0, t1); 1014e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("mult $t0, $t1", 0, 255, t0, t1); 1015e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("mult $t0, $t1", -1, 0, t0, t1); 1016e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("mult $t0, $t1", 0, 1, t0, t1); 1017e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("mult $t0, $t1", 0, 0, t0, t1); 1018e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("mult $t0, $t1", 0x80000000, -1, t0, t1); 1019e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("mult $t0, $t1", 0x80000000, 0x80000000, t0, t1); 1020e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("mult $t0, $t1", 0x7fffffff, 0, t0, t1); 1021e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("mult $t0, $t1", 0x80000000, 0x80000000, t0, t1); 1022e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("mult $t0, $t1", 0x7fffffff, 0x80000000, t0, t1); 1023e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("mult $t0, $t1", 0x80000000, 0xff000000, t0, t1); 1024e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("mult $t0, $t1", 0x7fffffff, 0x0dd00000, t0, t1); 1025e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("mult $t0, $t1", 0x31415927, 0xffffffff, t0, t1); 1026e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("mult $t0, $t1", 0x31415927, 0xee00ee00, t0, t1); 1027e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("mult $t0, $t1", 0, 255, t0, t1); 1028e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("mult $t0, $t1", 1, 0, t0, t1); 1029e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("mult $t0, $t1", 0, 1, t0, t1); 1030e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("mult $t0, $t1", -1, 0, t0, t1); 1031e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("mult $t0, $t1", 0, -1, t0, t1); 1032e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("mult $t0, $t1", 0, 0x80000000, t0, t1); 1033e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("mult $t0, $t1", 0x80000000, 0, t0, t1); 1034e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("mult $t0, $t1", 0x80000000, 0x80000000, t0, t1); 1035e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("mult $t0, $t1", 0x7fffffff, 0x80000000, t0, t1); 1036e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("mult $t0, $t1", 0x80000000, 0xff000000, t0, t1); 1037e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("mult $t0, $t1", 0x7fffffff, 0x0dd00000, t0, t1); 1038e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("mult $t0, $t1", 0xffffffff, 0, t0, t1); 1039e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("mult $t0, $t1", 0, 0xffffffff, t0, t1); 1040e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("mult $t0, $t1", 0xffffffff, 0xffffffff, t0, t1); 1041e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("mult $t0, $t1", 0x7fffffff, 0x7fffffff, t0, t1); 1042e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("mult $t0, $t1", 0x0000ffff, 0x0000ffff, t0, t1); 1043e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 1044e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("MULTU\n"); 1045e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("multu $t0, $t1", 0x31415927, 0xffffffff, t0, t1); 1046e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("multu $t0, $t1", 0x31415927, 0xee00ee00, t0, t1); 1047e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("multu $t0, $t1", 0, 255, t0, t1); 1048e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("multu $t0, $t1", -1, 0, t0, t1); 1049e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("multu $t0, $t1", 0, 1, t0, t1); 1050e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("multu $t0, $t1", 0, 0, t0, t1); 1051e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("multu $t0, $t1", 0x80000000, -1, t0, t1); 1052e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("multu $t0, $t1", 0x80000000, 0x80000000, t0, t1); 1053e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("multu $t0, $t1", 0x7fffffff, 0, t0, t1); 1054e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("multu $t0, $t1", 0x80000000, 0x80000000, t0, t1); 1055e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("multu $t0, $t1", 0x7fffffff, 0x80000000, t0, t1); 1056e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("multu $t0, $t1", 0x80000000, 0xff000000, t0, t1); 1057e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("multu $t0, $t1", 0x7fffffff, 0x0dd00000, t0, t1); 1058e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("multu $t0, $t1", 0x31415927, 0xffffffff, t0, t1); 1059e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("multu $t0, $t1", 0x31415927, 0xee00ee00, t0, t1); 1060e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("multu $t0, $t1", 0, 255, t0, t1); 1061e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("multu $t0, $t1", 1, 0, t0, t1); 1062e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("multu $t0, $t1", 0, 1, t0, t1); 1063e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("multu $t0, $t1", -1, 0, t0, t1); 1064e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("multu $t0, $t1", 0, -1, t0, t1); 1065e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("multu $t0, $t1", 0, 0x80000000, t0, t1); 1066e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("multu $t0, $t1", 0x80000000, 0, t0, t1); 1067e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("multu $t0, $t1", 0x80000000, 0x80000000, t0, t1); 1068e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("multu $t0, $t1", 0x7fffffff, 0x80000000, t0, t1); 1069e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("multu $t0, $t1", 0x80000000, 0xff000000, t0, t1); 1070e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("multu $t0, $t1", 0x7fffffff, 0x0dd00000, t0, t1); 1071e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("multu $t0, $t1", 0xffffffff, 0, t0, t1); 1072e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("multu $t0, $t1", 0, 0xffffffff, t0, t1); 1073e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("multu $t0, $t1", 0xffffffff, 0xffffffff, t0, t1); 1074e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("multu $t0, $t1", 0x7fffffff, 0x7fffffff, t0, t1); 1075e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3a("multu $t0, $t1", 0x0000ffff, 0x0000ffff, t0, t1); 1076e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 1077e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("NOR\n"); 1078e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("nor $t0, $t1, $t2", 0x31415927, 0xffffffff, t0, t1, t2); 1079e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("nor $t0, $t1, $t2", 0x31415927, 0xee00ee00, t0, t1, t2); 1080e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("nor $t0, $t1, $t2", 0, 255, t0, t1, t2); 1081e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("nor $t0, $t1, $t2", -1, 0, t0, t1, t2); 1082e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("nor $t0, $t1, $t2", 0, 1, t0, t1, t2); 1083e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("nor $t0, $t1, $t2", 0, 0, t0, t1, t2); 1084e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("nor $t0, $t1, $t2", 0x80000000, -1, t0, t1, t2); 1085e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("nor $t0, $t1, $t2", 0x80000000, 0x80000000, t0, t1, t2); 1086e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("nor $t0, $t1, $t2", 0x7fffffff, 0, t0, t1, t2); 1087e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("nor $t0, $t1, $t2", 0x80000000, 0x80000000, t0, t1, t2); 1088e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("nor $t0, $t1, $t2", 0x7fffffff, 0x80000000, t0, t1, t2); 1089e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("nor $t0, $t1, $t2", 0x80000000, 0xff000000, t0, t1, t2); 1090e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("nor $t0, $t1, $t2", 0x7fffffff, 0x0dd00000, t0, t1, t2); 1091e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("nor $t0, $t1, $t2", 0x31415927, 0xffffffff, t0, t1, t2); 1092e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("nor $t0, $t1, $t2", 0x31415927, 0xee00ee00, t0, t1, t2); 1093e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("nor $t0, $t1, $t2", 0, 255, t0, t1, t2); 1094e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("nor $t0, $t1, $t2", 1, 0, t0, t1, t2); 1095e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("nor $t0, $t1, $t2", 0, 1, t0, t1, t2); 1096e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("nor $t0, $t1, $t2", -1, 0, t0, t1, t2); 1097e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("nor $t0, $t1, $t2", 0, -1, t0, t1, t2); 1098e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("nor $t0, $t1, $t2", 0, 0x80000000, t0, t1, t2); 1099e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("nor $t0, $t1, $t2", 0x80000000, 0, t0, t1, t2); 1100e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("nor $t0, $t1, $t2", 0x80000000, 0x80000000, t0, t1, t2); 1101e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("nor $t0, $t1, $t2", 0x7fffffff, 0x80000000, t0, t1, t2); 1102e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("nor $t0, $t1, $t2", 0x80000000, 0xff000000, t0, t1, t2); 1103e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("nor $t0, $t1, $t2", 0x7fffffff, 0x0dd00000, t0, t1, t2); 1104e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("nor $t0, $t1, $t2", 0xffffffff, 0, t0, t1, t2); 1105e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("nor $t0, $t1, $t2", 0, 0xffffffff, t0, t1, t2); 1106e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("nor $t0, $t1, $t2", 0xffffffff, 0xffffffff, t0, t1, t2); 1107e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("nor $t0, $t1, $t2", 0x7fffffff, 0x7fffffff, t0, t1, t2); 1108e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("nor $t0, $t1, $t2", 0x0000ffff, 0x0000ffff, t0, t1, t2); 1109e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 11104931c0dbc3912b97beb3784122d1ea7825a2c882petarj#if (__mips==32) && (__mips_isa_rev>=2) 1111e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("WSBH\n"); 1112e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("wsbh $t0, $t1", 0x2, t0, t1); 1113e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("wsbh $t0, $t1", 0x28, t0, t1); 1114e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("wsbh $t0, $t1", -258, t0, t1); 1115e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("wsbh $t0, $t1", 0x7fffffff, t0, t1); 1116e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("wsbh $t0, $t1", -11, t0, t1); 1117e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("wsbh $t0, $t1", 0xffffffff, t0, t1); 1118e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("wsbh $t0, $t1", 0x16, t0, t1); 1119e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("wsbh $t0, $t1", -1, t0, t1); 11204931c0dbc3912b97beb3784122d1ea7825a2c882petarj#endif 1121e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 1122e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("NOT\n"); 1123e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("not $t0, $t1", 0x2, t0, t1); 1124e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("not $t0, $t1", 0x28, t0, t1); 1125e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("not $t0, $t1", -258, t0, t1); 1126e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("not $t0, $t1", 0x7fffffff, t0, t1); 1127e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("not $t0, $t1", -11, t0, t1); 1128e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("not $t0, $t1", 0xffffffff, t0, t1); 1129e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("not $t0, $t1", 0x16, t0, t1); 1130e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("not $t0, $t1", -1, t0, t1); 1131e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 1132e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("NEGU\n"); 1133e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("negu $t0, $t1", 0x2, t0, t1); 1134e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("negu $t0, $t1", 0x28, t0, t1); 1135e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("negu $t0, $t1", -258, t0, t1); 1136e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("negu $t0, $t1", 0x7fffffff, t0, t1); 1137e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("negu $t0, $t1", -11, t0, t1); 1138e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("negu $t0, $t1", 0xffffffff, t0, t1); 1139e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("negu $t0, $t1", 0x16, t0, t1); 1140e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("negu $t0, $t1", -1, t0, t1); 1141e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 1142e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("OR\n"); 1143e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("or $t0, $t1, $t2", 0x31415927, 0xffffffff, t0, t1, t2); 1144e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("or $t0, $t1, $t2", 0x31415927, 0xee00ee00, t0, t1, t2); 1145e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("or $t0, $t1, $t2", 0, 255, t0, t1, t2); 1146e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("or $t0, $t1, $t2", -1, 0, t0, t1, t2); 1147e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("or $t0, $t1, $t2", 0, 1, t0, t1, t2); 1148e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("or $t0, $t1, $t2", 0, 0, t0, t1, t2); 1149e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("or $t0, $t1, $t2", 0x80000000, -1, t0, t1, t2); 1150e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("or $t0, $t1, $t2", 0x80000000, 0x80000000, t0, t1, t2); 1151e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("or $t0, $t1, $t2", 0x7fffffff, 0, t0, t1, t2); 1152e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("or $t0, $t1, $t2", 0x80000000, 0x80000000, t0, t1, t2); 1153e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("or $t0, $t1, $t2", 0x7fffffff, 0x80000000, t0, t1, t2); 1154e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("or $t0, $t1, $t2", 0x80000000, 0xff000000, t0, t1, t2); 1155e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("or $t0, $t1, $t2", 0x7fffffff, 0x0dd00000, t0, t1, t2); 1156e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("or $t0, $t1, $t2", 0x31415927, 0xffffffff, t0, t1, t2); 1157e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("or $t0, $t1, $t2", 0x31415927, 0xee00ee00, t0, t1, t2); 1158e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("or $t0, $t1, $t2", 0, 255, t0, t1, t2); 1159e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("or $t0, $t1, $t2", 1, 0, t0, t1, t2); 1160e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("or $t0, $t1, $t2", 0, 1, t0, t1, t2); 1161e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("or $t0, $t1, $t2", -1, 0, t0, t1, t2); 1162e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("or $t0, $t1, $t2", 0, -1, t0, t1, t2); 1163e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("or $t0, $t1, $t2", 0, 0x80000000, t0, t1, t2); 1164e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("or $t0, $t1, $t2", 0x80000000, 0, t0, t1, t2); 1165e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("or $t0, $t1, $t2", 0x80000000, 0x80000000, t0, t1, t2); 1166e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("or $t0, $t1, $t2", 0x7fffffff, 0x80000000, t0, t1, t2); 1167e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("or $t0, $t1, $t2", 0x80000000, 0xff000000, t0, t1, t2); 1168e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("or $t0, $t1, $t2", 0x7fffffff, 0x0dd00000, t0, t1, t2); 1169e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("or $t0, $t1, $t2", 0xffffffff, 0, t0, t1, t2); 1170e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("or $t0, $t1, $t2", 0, 0xffffffff, t0, t1, t2); 1171e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("or $t0, $t1, $t2", 0xffffffff, 0xffffffff, t0, t1, t2); 1172e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("or $t0, $t1, $t2", 0x7fffffff, 0x7fffffff, t0, t1, t2); 1173e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("or $t0, $t1, $t2", 0x0000ffff, 0x0000ffff, t0, t1, t2); 1174e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 1175e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("ORI\n"); 1176e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("ori $t0, $t1, 0xffff", 0x31415927, 0xffff, t0, t1); 1177e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("ori $t0, $t1, 0xee00", 0x31415927, 0xee00, t0, t1); 1178e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("ori $t0, $t1, 255", 0, 255, t0, t1); 1179e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("ori $t0, $t1, 0", -1, 0, t0, t1); 1180e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("ori $t0, $t1, 1", 0, 1, t0, t1); 1181e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("ori $t0, $t1, 0", 0, 0, t0, t1); 1182e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("ori $t0, $t1, 0x8000", 0x80000000, 0x8000, t0, t1); 1183e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("ori $t0, $t1, 0", 0x7fffffff, 0, t0, t1); 1184e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("ori $t0, $t1, 0x8000", 0x80000000, 0x8000, t0, t1); 1185e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("ori $t0, $t1, 0x8000", 0x7fffffff, 0x8000, t0, t1); 1186e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("ori $t0, $t1, 0xff00", 0x80000000, 0xff00, t0, t1); 1187e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("ori $t0, $t1, 0x0dd0", 0x7fffffff, 0x0dd0, t0, t1); 1188e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("ori $t0, $t1, 0xffff", 0x31415927, 0xffff, t0, t1); 1189e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("ori $t0, $t1, 0xee00", 0x31415927, 0xee00, t0, t1); 1190e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("ori $t0, $t1, 255", 0, 255, t0, t1); 1191e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("ori $t0, $t1, 0", 1, 0, t0, t1); 1192e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("ori $t0, $t1, 1", 0, 1, t0, t1); 1193e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("ori $t0, $t1, 0", -1, 0, t0, t1); 1194e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("ori $t0, $t1, 0x8000", 0, 0x8000, t0, t1); 1195e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("ori $t0, $t1, 0", 0x8000, 0, t0, t1); 1196e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("ori $t0, $t1, 0x8000", 0x80000000, 0x8000, t0, t1); 1197e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("ori $t0, $t1, 0x8000", 0x7fffffff, 0x8000, t0, t1); 1198e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("ori $t0, $t1, 0xff00", 0x80000000, 0xff00, t0, t1); 1199e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("ori $t0, $t1, 0x0dd0", 0x7fffffff, 0x0dd0, t0, t1); 1200e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("ori $t0, $t1, 0", 0xffff, 0, t0, t1); 1201e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("ori $t0, $t1, 0xffff", 0, 0xffff, t0, t1); 1202e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("ori $t0, $t1, 0xffff", 0xffffffff, 0xffff, t0, t1); 1203e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("ori $t0, $t1, 0x7fff", 0x7fffffff, 0x7fff, t0, t1); 1204e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("ori $t0, $t1, 0x0000", 0x0000ffff, 0x0000, t0, t1); 1205e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 12064931c0dbc3912b97beb3784122d1ea7825a2c882petarj#if (__mips==32) && (__mips_isa_rev>=2) 1207e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("ROTR\n"); 1208e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("rotr $t0, $t1, 0x00000000", 0x31415927, 0x00000000, t0, t1); 1209e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("rotr $t0, $t1, 0x00000001", 0x31415927, 0x00000001, t0, t1); 1210e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("rotr $t0, $t1, 0x00000002", 0x31415927, 0x00000002, t0, t1); 1211e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("rotr $t0, $t1, 0x0000000F", 0x31415927, 0x0000000F, t0, t1); 1212e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("rotr $t0, $t1, 0x00000010", 0x31415927, 0x00000010, t0, t1); 1213e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("rotr $t0, $t1, 0x0000001F", 0x31415927, 0x0000001F, t0, t1); 1214e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("rotr $t0, $t1, 0x00000020", 0x31415927, 0x00000020, t0, t1); 1215e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("rotr $t0, $t1, 0x00000021", 0x31415927, 0x00000021, t0, t1); 1216e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("rotr $t0, $t1, 0x00000000", 0x00088000, 0x00000000, t0, t1); 1217e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("rotr $t0, $t1, 0x00000001", 0x00088000, 0x00000001, t0, t1); 1218e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("rotr $t0, $t1, 31", 0x00088000, 31, t0, t1); 1219e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("rotr $t0, $t1, 16", 0x00010000, 16, t0, t1); 1220e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("rotr $t0, $t1, 17", 0x00010000, 17, t0, t1); 1221e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("rotr $t0, $t1, 18", 0x00010000, 18, t0, t1); 1222e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("rotr $t0, $t1, 0", 0, 0, t0, t1); 1223e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("rotr $t0, $t1, 0xffff", 0xffff, 0xffff, t0, t1); 12244931c0dbc3912b97beb3784122d1ea7825a2c882petarj#endif 1225e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 12264931c0dbc3912b97beb3784122d1ea7825a2c882petarj#if (__mips==32) && (__mips_isa_rev>=2) 1227e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("ROTRV\n"); 1228e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", 0x31415927, 0xffffffff, t0, t1, t2); 1229e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", 0x31415927, 0xee00ee00, t0, t1, t2); 1230e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", 0, 255, t0, t1, t2); 1231e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", -1, 0, t0, t1, t2); 1232e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", 0, 1, t0, t1, t2); 1233e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", 0, 0, t0, t1, t2); 1234e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", 0x80000000, -1, t0, t1, t2); 1235e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", 0x80000000, 0x80000000, t0, t1, t2); 1236e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", 0x7fffffff, 0, t0, t1, t2); 1237e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", 0x80000000, 0x80000000, t0, t1, t2); 1238e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", 0x7fffffff, 0x80000000, t0, t1, t2); 1239e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", 0x80000000, 0xff000000, t0, t1, t2); 1240e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", 0x7fffffff, 0x0dd00000, t0, t1, t2); 1241e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", 0x31415927, 0xffffffff, t0, t1, t2); 1242e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", 0x31415927, 0xee00ee00, t0, t1, t2); 1243e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", 0, 255, t0, t1, t2); 1244e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", 1, 0, t0, t1, t2); 1245e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", 0, 1, t0, t1, t2); 1246e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", -1, 0, t0, t1, t2); 1247e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", 0, -1, t0, t1, t2); 1248e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", 0, 0x80000000, t0, t1, t2); 1249e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", 0x80000000, 0, t0, t1, t2); 1250e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", 0x80000000, 0x80000000, t0, t1, t2); 1251e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", 0x7fffffff, 0x80000000, t0, t1, t2); 1252e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", 0x80000000, 0xff000000, t0, t1, t2); 1253e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", 0x7fffffff, 0x0dd00000, t0, t1, t2); 1254e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", 0xffffffff, 0, t0, t1, t2); 1255e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", 0, 0xffffffff, t0, t1, t2); 1256e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", 0xffffffff, 0xffffffff, t0, t1, t2); 1257e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", 0x7fffffff, 0x7fffffff, t0, t1, t2); 1258e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", 0x0000ffff, 0x0000ffff, t0, t1, t2); 1259e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", 0x31415927, 0x00000000, t0, t1, t2); 1260e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", 0x31415927, 0x00000001, t0, t1, t2); 1261e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", 0x31415927, 0x00000002, t0, t1, t2); 1262e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", 0x31415927, 0x0000000F, t0, t1, t2); 1263e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", 0x31415927, 0x00000010, t0, t1, t2); 1264e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", 0x31415927, 0x0000001F, t0, t1, t2); 1265e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", 0x31415927, 0x00000020, t0, t1, t2); 1266e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", 0x31415927, 0x00000021, t0, t1, t2); 1267e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", 0x00088000, 0x00000000, t0, t1, t2); 1268e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", 0x00088000, 0x00000001, t0, t1, t2); 1269e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", 0x00088000, 31, t0, t1, t2); 1270e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", 0x00010000, 16, t0, t1, t2); 1271e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", 0x00010000, 17, t0, t1, t2); 1272e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", 0x00010000, 18, t0, t1, t2); 1273e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", 0, 0, t0, t1, t2); 1274e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("rotrv $t0, $t1, $t2", 0xffff, 0xffff, t0, t1, t2); 1275e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 1276e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("SEB\n"); 1277e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("seb $t0, $t1", 0x2, t0, t1); 1278e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("seb $t0, $t1", 0x28, t0, t1); 1279e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("seb $t0, $t1", -258, t0, t1); 1280e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("seb $t0, $t1", 0x7fffffff, t0, t1); 1281e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("seb $t0, $t1", -11, t0, t1); 1282e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("seb $t0, $t1", 0xffffffff, t0, t1); 1283e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("seb $t0, $t1", 0x16, t0, t1); 1284e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("seb $t0, $t1", -1, t0, t1); 1285e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 1286e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("SEH\n"); 1287e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("seh $t0, $t1", 0x2, t0, t1); 1288e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("seh $t0, $t1", 0x28, t0, t1); 1289e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("seh $t0, $t1", -258, t0, t1); 1290e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("seh $t0, $t1", 0x7fffffff, t0, t1); 1291e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("seh $t0, $t1", -11, t0, t1); 1292e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("seh $t0, $t1", 0xffffffff, t0, t1); 1293e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("seh $t0, $t1", 0x16, t0, t1); 1294e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST3("seh $t0, $t1", -1, t0, t1); 12954931c0dbc3912b97beb3784122d1ea7825a2c882petarj#endif 1296e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 1297e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("SLL\n"); 1298e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("sll $t0, $t1, 0x00000000", 0x31415927, 0x00000000, t0, t1); 1299e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("sll $t0, $t1, 0x00000001", 0x31415927, 0x00000001, t0, t1); 1300e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("sll $t0, $t1, 0x00000002", 0x31415927, 0x00000002, t0, t1); 1301e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("sll $t0, $t1, 0x0000000F", 0x31415927, 0x0000000F, t0, t1); 1302e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("sll $t0, $t1, 0x00000010", 0x31415927, 0x00000010, t0, t1); 1303e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("sll $t0, $t1, 0x0000001F", 0x31415927, 0x0000001F, t0, t1); 1304e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("sll $t0, $t1, 0x00000009", 0x31415927, 0x00000009, t0, t1); 1305e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("sll $t0, $t1, 0x0000000A", 0x31415927, 0x0000000A, t0, t1); 1306e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("sll $t0, $t1, 0x00000000", 0x00088000, 0x00000000, t0, t1); 1307e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("sll $t0, $t1, 0x00000001", 0x00088000, 0x00000001, t0, t1); 1308e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("sll $t0, $t1, 31", 0x00088000, 31, t0, t1); 1309e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("sll $t0, $t1, 16", 0x00010000, 16, t0, t1); 1310e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("sll $t0, $t1, 17", 0x00010000, 17, t0, t1); 1311e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("sll $t0, $t1, 18", 0x00010000, 18, t0, t1); 1312e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("sll $t0, $t1, 0", 0, 0, t0, t1); 1313e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 1314e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("SLLV\n"); 1315e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", 0x31415927, 0xffffffff, t0, t1, t2); 1316e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", 0x31415927, 0xee00ee00, t0, t1, t2); 1317e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", 0, 255, t0, t1, t2); 1318e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", -1, 0, t0, t1, t2); 1319e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", 0, 1, t0, t1, t2); 1320e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", 0, 0, t0, t1, t2); 1321e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", 0x80000000, -1, t0, t1, t2); 1322e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", 0x80000000, 0x80000000, t0, t1, t2); 1323e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", 0x7fffffff, 0, t0, t1, t2); 1324e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", 0x80000000, 0x80000000, t0, t1, t2); 1325e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", 0x7fffffff, 0x80000000, t0, t1, t2); 1326e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", 0x80000000, 0xff000000, t0, t1, t2); 1327e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", 0x7fffffff, 0x0dd00000, t0, t1, t2); 1328e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", 0x31415927, 0xffffffff, t0, t1, t2); 1329e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", 0x31415927, 0xee00ee00, t0, t1, t2); 1330e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", 0, 255, t0, t1, t2); 1331e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", 1, 0, t0, t1, t2); 1332e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", 0, 1, t0, t1, t2); 1333e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", -1, 0, t0, t1, t2); 1334e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", 0, -1, t0, t1, t2); 1335e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", 0, 0x80000000, t0, t1, t2); 1336e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", 0x80000000, 0, t0, t1, t2); 1337e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", 0x80000000, 0x80000000, t0, t1, t2); 1338e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", 0x7fffffff, 0x80000000, t0, t1, t2); 1339e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", 0x80000000, 0xff000000, t0, t1, t2); 1340e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", 0x7fffffff, 0x0dd00000, t0, t1, t2); 1341e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", 0xffffffff, 0, t0, t1, t2); 1342e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", 0, 0xffffffff, t0, t1, t2); 1343e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", 0xffffffff, 0xffffffff, t0, t1, t2); 1344e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", 0x7fffffff, 0x7fffffff, t0, t1, t2); 1345e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", 0x0000ffff, 0x0000ffff, t0, t1, t2); 1346e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", 0x31415927, 0x00000000, t0, t1, t2); 1347e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", 0x31415927, 0x00000001, t0, t1, t2); 1348e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", 0x31415927, 0x00000002, t0, t1, t2); 1349e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", 0x31415927, 0x0000000F, t0, t1, t2); 1350e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", 0x31415927, 0x00000010, t0, t1, t2); 1351e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", 0x31415927, 0x0000001F, t0, t1, t2); 1352e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", 0x31415927, 0x00000020, t0, t1, t2); 1353e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", 0x31415927, 0x00000021, t0, t1, t2); 1354e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", 0x00088000, 0x00000000, t0, t1, t2); 1355e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", 0x00088000, 0x00000001, t0, t1, t2); 1356e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", 0x00088000, 31, t0, t1, t2); 1357e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", 0x00010000, 16, t0, t1, t2); 1358e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", 0x00010000, 17, t0, t1, t2); 1359e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", 0x00010000, 18, t0, t1, t2); 1360e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", 0, 0, t0, t1, t2); 1361e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sllv $t0, $t1, $t2", 0xffff, 0xffff, t0, t1, t2); 1362e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 1363e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("SLT\n"); 1364e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0x31415927, 0xffffffff, t0, t1, t2); 1365e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0x31415927, 0xee00ee00, t0, t1, t2); 1366e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0, 255, t0, t1, t2); 1367e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", -1, 0, t0, t1, t2); 1368e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0, 1, t0, t1, t2); 1369e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0, 0, t0, t1, t2); 1370e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0x80000000, -1, t0, t1, t2); 1371e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0x80000000, 0x80000000, t0, t1, t2); 1372e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0x7fffffff, 0, t0, t1, t2); 1373e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0x80000000, 0x80000000, t0, t1, t2); 1374e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0x7fffffff, 0x80000000, t0, t1, t2); 1375e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0x80000000, 0xff000000, t0, t1, t2); 1376e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0x7fffffff, 0x0dd00000, t0, t1, t2); 1377e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0x31415927, 0xffffffff, t0, t1, t2); 1378e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0x31415927, 0xee00ee00, t0, t1, t2); 1379e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0, 255, t0, t1, t2); 1380e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 1, 0, t0, t1, t2); 1381e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0, 1, t0, t1, t2); 1382e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", -1, 0, t0, t1, t2); 1383e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0, -1, t0, t1, t2); 1384e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0, 0x80000000, t0, t1, t2); 1385e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0x80000000, 0, t0, t1, t2); 1386e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0x80000000, 0x80000000, t0, t1, t2); 1387e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0x7fffffff, 0x80000000, t0, t1, t2); 1388e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0x80000000, 0xff000000, t0, t1, t2); 1389e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0x7fffffff, 0x0dd00000, t0, t1, t2); 1390e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0xffffffff, 0, t0, t1, t2); 1391e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0, 0xffffffff, t0, t1, t2); 1392e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0xffffffff, 0xffffffff, t0, t1, t2); 1393e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0x7fffffff, 0x7fffffff, t0, t1, t2); 1394e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0x0000ffff, 0x0000ffff, t0, t1, t2); 1395e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0xffffffff, 0, t0, t1, t2); 1396e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0, 0xffffffff, t0, t1, t2); 1397e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0xffffffff, 0xffffffff, t0, t1, t2); 1398e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0x7fffffff, 0x7fffffff, t0, t1, t2); 1399e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0x0000ffff, 0x0000ffff, t0, t1, t2); 1400e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0x31415927, 0x00000000, t0, t1, t2); 1401e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0x31415927, 0x00000001, t0, t1, t2); 1402e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0x31415927, 0x00000002, t0, t1, t2); 1403e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0x31415927, 0x0000000F, t0, t1, t2); 1404e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0x31415927, 0x00000010, t0, t1, t2); 1405e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0x31415927, 0x0000001F, t0, t1, t2); 1406e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0x31415927, 0x00000020, t0, t1, t2); 1407e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0x31415927, 0x00000021, t0, t1, t2); 1408e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0x00088000, 0x00000000, t0, t1, t2); 1409e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0x00088000, 0x00000001, t0, t1, t2); 1410e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0x00088000, 31, t0, t1, t2); 1411e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0x00010000, 16, t0, t1, t2); 1412e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0x00010000, 17, t0, t1, t2); 1413e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0x00010000, 18, t0, t1, t2); 1414e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0, 0, t0, t1, t2); 1415e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("slt $t0, $t1, $t2", 0xffff, 0xffff, t0, t1, t2); 1416e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 1417e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("SLTI\n"); 1418e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("slti $t0, $t1, 0x00000000", 0x00000001, 0x31415927, t0, t1); 1419e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("slti $t0, $t1, 0x00000001", 0x31415927, 0x00000001, t0, t1); 1420e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("slti $t0, $t1, 0x00000002", 0x31415927, 0x00000002, t0, t1); 1421e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("slti $t0, $t1, 0x0000000F", 0x31415927, 0x0000000F, t0, t1); 1422e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("slti $t0, $t1, 0x00000010", 0x00000010, 0x00000010, t0, t1); 1423e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("slti $t0, $t1, 0x0000001F", 0x00000010, 0x31415927, t0, t1); 1424e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("slti $t0, $t1, 0x00000009", 0x31415927, 0x00000009, t0, t1); 1425e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("slti $t0, $t1, 0x0000000A", 0x31415927, 0x0000000A, t0, t1); 1426e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("slti $t0, $t1, 0x00000000", 0x00088000, 0x0000000A, t0, t1); 1427e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("slti $t0, $t1, 0x00000001", 0x00000000, 0x00000001, t0, t1); 1428e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("slti $t0, $t1, 31", 0x00088000, 31, t0, t1); 1429e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("slti $t0, $t1, 16", 0x00010000, 16, t0, t1); 1430e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("slti $t0, $t1, 17", 0x00010000, 17, t0, t1); 1431e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("slti $t0, $t1, 18", 0x00010000, 18, t0, t1); 1432e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("slti $t0, $t1, 0", 0, 0, t0, t1); 1433e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 1434e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("SLTIU\n"); 1435e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("sltiu $t0, $t1, 0x00000000", 0x00000001, 0x31415927, t0, t1); 1436e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("sltiu $t0, $t1, 0x00000001", 0x31415927, 0x00000001, t0, t1); 1437e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("sltiu $t0, $t1, 0x00000002", 0x31415927, 0x00000002, t0, t1); 1438e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("sltiu $t0, $t1, 0x0000000F", 0x31415927, 0x0000000F, t0, t1); 1439e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("sltiu $t0, $t1, 0x00000010", 0x00000010, 0x00000010, t0, t1); 1440e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("sltiu $t0, $t1, 0x0000001F", 0x00000010, 0x31415927, t0, t1); 1441e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("sltiu $t0, $t1, 0x00000009", 0x31415927, 0x00000009, t0, t1); 1442e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("sltiu $t0, $t1, 0x0000000A", 0x31415927, 0x0000000A, t0, t1); 1443e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("sltiu $t0, $t1, 0x00000000", 0x00088000, 0x0000000A, t0, t1); 1444e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("sltiu $t0, $t1, 0x00000001", 0x00000000, 0x00000001, t0, t1); 1445e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("sltiu $t0, $t1, 31", 0x00088000, 31, t0, t1); 1446e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("sltiu $t0, $t1, 16", 0x00010000, 16, t0, t1); 1447e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("sltiu $t0, $t1, 17", 0x00010000, 17, t0, t1); 1448e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("sltiu $t0, $t1, 18", 0x00010000, 18, t0, t1); 1449e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("sltiu $t0, $t1, 0", 0, 0, t0, t1); 1450e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 1451e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("SLTU\n"); 1452e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0x31415927, 0xffffffff, t0, t1, t2); 1453e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0x31415927, 0xee00ee00, t0, t1, t2); 1454e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0, 255, t0, t1, t2); 1455e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", -1, 0, t0, t1, t2); 1456e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0, 1, t0, t1, t2); 1457e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0, 0, t0, t1, t2); 1458e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0x80000000, -1, t0, t1, t2); 1459e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0x80000000, 0x80000000, t0, t1, t2); 1460e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0x7fffffff, 0, t0, t1, t2); 1461e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0x80000000, 0x80000000, t0, t1, t2); 1462e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0x7fffffff, 0x80000000, t0, t1, t2); 1463e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0x80000000, 0xff000000, t0, t1, t2); 1464e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0x7fffffff, 0x0dd00000, t0, t1, t2); 1465e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0x31415927, 0xffffffff, t0, t1, t2); 1466e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0x31415927, 0xee00ee00, t0, t1, t2); 1467e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0, 255, t0, t1, t2); 1468e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 1, 0, t0, t1, t2); 1469e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0, 1, t0, t1, t2); 1470e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", -1, 0, t0, t1, t2); 1471e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0, -1, t0, t1, t2); 1472e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0, 0x80000000, t0, t1, t2); 1473e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0x80000000, 0, t0, t1, t2); 1474e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0x80000000, 0x80000000, t0, t1, t2); 1475e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0x7fffffff, 0x80000000, t0, t1, t2); 1476e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0x80000000, 0xff000000, t0, t1, t2); 1477e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0x7fffffff, 0x0dd00000, t0, t1, t2); 1478e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0xffffffff, 0, t0, t1, t2); 1479e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0, 0xffffffff, t0, t1, t2); 1480e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0xffffffff, 0xffffffff, t0, t1, t2); 1481e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0x7fffffff, 0x7fffffff, t0, t1, t2); 1482e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0x0000ffff, 0x0000ffff, t0, t1, t2); 1483e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0xffffffff, 0, t0, t1, t2); 1484e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0, 0xffffffff, t0, t1, t2); 1485e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0xffffffff, 0xffffffff, t0, t1, t2); 1486e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0x7fffffff, 0x7fffffff, t0, t1, t2); 1487e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0x0000ffff, 0x0000ffff, t0, t1, t2); 1488e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0x31415927, 0x00000000, t0, t1, t2); 1489e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0x31415927, 0x00000001, t0, t1, t2); 1490e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0x31415927, 0x00000002, t0, t1, t2); 1491e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0x31415927, 0x0000000F, t0, t1, t2); 1492e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0x31415927, 0x00000010, t0, t1, t2); 1493e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0x31415927, 0x0000001F, t0, t1, t2); 1494e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0x31415927, 0x00000020, t0, t1, t2); 1495e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0x31415927, 0x00000021, t0, t1, t2); 1496e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0x00088000, 0x00000000, t0, t1, t2); 1497e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0x00088000, 0x00000001, t0, t1, t2); 1498e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0x00088000, 31, t0, t1, t2); 1499e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0x00010000, 16, t0, t1, t2); 1500e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0x00010000, 17, t0, t1, t2); 1501e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0x00010000, 18, t0, t1, t2); 1502e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0, 0, t0, t1, t2); 1503e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("sltu $t0, $t1, $t2", 0xffff, 0xffff, t0, t1, t2); 1504e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 1505e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("SRA\n"); 1506e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("sra $t0, $t1, 0x00000000", 0x00000001, 0x31415927, t0, t1); 1507e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("sra $t0, $t1, 0x00000001", 0x31415927, 0x00000001, t0, t1); 1508e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("sra $t0, $t1, 0x00000002", 0x31415927, 0x00000002, t0, t1); 1509e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("sra $t0, $t1, 0x0000000F", 0x31415927, 0x0000000F, t0, t1); 1510e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("sra $t0, $t1, 0x00000010", 0x00000010, 0x00000010, t0, t1); 1511e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("sra $t0, $t1, 0x0000001F", 0x00000010, 0x31415927, t0, t1); 1512e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("sra $t0, $t1, 0x00000009", 0x31415927, 0x00000009, t0, t1); 1513e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("sra $t0, $t1, 0x0000000A", 0x31415927, 0x0000000A, t0, t1); 1514e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("sra $t0, $t1, 0x00000000", 0x00088000, 0x0000000A, t0, t1); 1515e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("sra $t0, $t1, 0x00000001", 0x00000000, 0x00000001, t0, t1); 1516e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("sra $t0, $t1, 31", 0x00088000, 31, t0, t1); 1517e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("sra $t0, $t1, 16", 0x00010000, 16, t0, t1); 1518e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("sra $t0, $t1, 17", 0x00010000, 17, t0, t1); 1519e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("sra $t0, $t1, 18", 0x00010000, 18, t0, t1); 1520e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("sra $t0, $t1, 0", 0, 0, t0, t1); 1521e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 1522e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("SRAV\n"); 1523e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0x31415927, 0xffffffff, t0, t1, t2); 1524e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0x31415927, 0xee00ee00, t0, t1, t2); 1525e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0, 255, t0, t1, t2); 1526e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", -1, 0, t0, t1, t2); 1527e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0, 1, t0, t1, t2); 1528e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0, 0, t0, t1, t2); 1529e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0x80000000, -1, t0, t1, t2); 1530e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0x80000000, 0x80000000, t0, t1, t2); 1531e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0x7fffffff, 0, t0, t1, t2); 1532e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0x80000000, 0x80000000, t0, t1, t2); 1533e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0x7fffffff, 0x80000000, t0, t1, t2); 1534e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0x80000000, 0xff000000, t0, t1, t2); 1535e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0x7fffffff, 0x0dd00000, t0, t1, t2); 1536e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0x31415927, 0xffffffff, t0, t1, t2); 1537e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0x31415927, 0xee00ee00, t0, t1, t2); 1538e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0, 255, t0, t1, t2); 1539e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 1, 0, t0, t1, t2); 1540e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0, 1, t0, t1, t2); 1541e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", -1, 0, t0, t1, t2); 1542e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0, -1, t0, t1, t2); 1543e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0, 0x80000000, t0, t1, t2); 1544e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0x80000000, 0, t0, t1, t2); 1545e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0x80000000, 0x80000000, t0, t1, t2); 1546e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0x7fffffff, 0x80000000, t0, t1, t2); 1547e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0x80000000, 0xff000000, t0, t1, t2); 1548e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0x7fffffff, 0x0dd00000, t0, t1, t2); 1549e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0xffffffff, 0, t0, t1, t2); 1550e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0, 0xffffffff, t0, t1, t2); 1551e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0xffffffff, 0xffffffff, t0, t1, t2); 1552e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0x7fffffff, 0x7fffffff, t0, t1, t2); 1553e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0x0000ffff, 0x0000ffff, t0, t1, t2); 1554e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0xffffffff, 0, t0, t1, t2); 1555e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0, 0xffffffff, t0, t1, t2); 1556e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0xffffffff, 0xffffffff, t0, t1, t2); 1557e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0x7fffffff, 0x7fffffff, t0, t1, t2); 1558e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0x0000ffff, 0x0000ffff, t0, t1, t2); 1559e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0x31415927, 0x00000000, t0, t1, t2); 1560e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0x31415927, 0x00000001, t0, t1, t2); 1561e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0x31415927, 0x00000002, t0, t1, t2); 1562e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0x31415927, 0x0000000F, t0, t1, t2); 1563e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0x31415927, 0x00000010, t0, t1, t2); 1564e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0x31415927, 0x0000001F, t0, t1, t2); 1565e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0x31415927, 0x00000020, t0, t1, t2); 1566e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0x31415927, 0x00000021, t0, t1, t2); 1567e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0x00088000, 0x00000000, t0, t1, t2); 1568e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0x00088000, 0x00000001, t0, t1, t2); 1569e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0x00088000, 31, t0, t1, t2); 1570e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0x00010000, 16, t0, t1, t2); 1571e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0x00010000, 17, t0, t1, t2); 1572e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0x00010000, 18, t0, t1, t2); 1573e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0, 0, t0, t1, t2); 1574e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srav $t0, $t1, $t2", 0xffff, 0xffff, t0, t1, t2); 1575e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 1576e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("SRL\n"); 1577e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("srl $t0, $t1, 0x00000000", 0x00000001, 0x31415927, t0, t1); 1578e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("srl $t0, $t1, 0x00000001", 0x31415927, 0x00000001, t0, t1); 1579e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("srl $t0, $t1, 0x00000002", 0x31415927, 0x00000002, t0, t1); 1580e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("srl $t0, $t1, 0x0000000F", 0x31415927, 0x0000000F, t0, t1); 1581e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("srl $t0, $t1, 0x00000010", 0x00000010, 0x00000010, t0, t1); 1582e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("srl $t0, $t1, 0x0000001F", 0x00000010, 0x31415927, t0, t1); 1583e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("srl $t0, $t1, 0x00000009", 0x31415927, 0x00000009, t0, t1); 1584e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("srl $t0, $t1, 0x0000000A", 0x31415927, 0x0000000A, t0, t1); 1585e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("srl $t0, $t1, 0x00000000", 0x00088000, 0x0000000A, t0, t1); 1586e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("srl $t0, $t1, 0x00000001", 0x00000000, 0x00000001, t0, t1); 1587e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("srl $t0, $t1, 31", 0x00088000, 31, t0, t1); 1588e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("srl $t0, $t1, 16", 0x00010000, 16, t0, t1); 1589e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("srl $t0, $t1, 17", 0x00010000, 17, t0, t1); 1590e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("srl $t0, $t1, 18", 0x00010000, 18, t0, t1); 1591e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("srl $t0, $t1, 0", 0, 0, t0, t1); 1592e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 1593e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("SRLV\n"); 1594e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0x31415927, 0xffffffff, t0, t1, t2); 1595e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0x31415927, 0xee00ee00, t0, t1, t2); 1596e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0, 255, t0, t1, t2); 1597e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", -1, 0, t0, t1, t2); 1598e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0, 1, t0, t1, t2); 1599e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0, 0, t0, t1, t2); 1600e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0x80000000, -1, t0, t1, t2); 1601e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0x80000000, 0x80000000, t0, t1, t2); 1602e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0x7fffffff, 0, t0, t1, t2); 1603e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0x80000000, 0x80000000, t0, t1, t2); 1604e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0x7fffffff, 0x80000000, t0, t1, t2); 1605e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0x80000000, 0xff000000, t0, t1, t2); 1606e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0x7fffffff, 0x0dd00000, t0, t1, t2); 1607e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0x31415927, 0xffffffff, t0, t1, t2); 1608e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0x31415927, 0xee00ee00, t0, t1, t2); 1609e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0, 255, t0, t1, t2); 1610e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 1, 0, t0, t1, t2); 1611e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0, 1, t0, t1, t2); 1612e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", -1, 0, t0, t1, t2); 1613e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0, -1, t0, t1, t2); 1614e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0, 0x80000000, t0, t1, t2); 1615e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0x80000000, 0, t0, t1, t2); 1616e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0x80000000, 0x80000000, t0, t1, t2); 1617e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0x7fffffff, 0x80000000, t0, t1, t2); 1618e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0x80000000, 0xff000000, t0, t1, t2); 1619e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0x7fffffff, 0x0dd00000, t0, t1, t2); 1620e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0xffffffff, 0, t0, t1, t2); 1621e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0, 0xffffffff, t0, t1, t2); 1622e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0xffffffff, 0xffffffff, t0, t1, t2); 1623e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0x7fffffff, 0x7fffffff, t0, t1, t2); 1624e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0x0000ffff, 0x0000ffff, t0, t1, t2); 1625e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0xffffffff, 0, t0, t1, t2); 1626e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0, 0xffffffff, t0, t1, t2); 1627e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0xffffffff, 0xffffffff, t0, t1, t2); 1628e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0x7fffffff, 0x7fffffff, t0, t1, t2); 1629e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0x0000ffff, 0x0000ffff, t0, t1, t2); 1630e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0x31415927, 0x00000000, t0, t1, t2); 1631e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0x31415927, 0x00000001, t0, t1, t2); 1632e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0x31415927, 0x00000002, t0, t1, t2); 1633e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0x31415927, 0x0000000F, t0, t1, t2); 1634e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0x31415927, 0x00000010, t0, t1, t2); 1635e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0x31415927, 0x0000001F, t0, t1, t2); 1636e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0x31415927, 0x00000020, t0, t1, t2); 1637e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0x31415927, 0x00000021, t0, t1, t2); 1638e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0x00088000, 0x00000000, t0, t1, t2); 1639e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0x00088000, 0x00000001, t0, t1, t2); 1640e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0x00088000, 31, t0, t1, t2); 1641e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0x00010000, 16, t0, t1, t2); 1642e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0x00010000, 17, t0, t1, t2); 1643e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0x00010000, 18, t0, t1, t2); 1644e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0, 0, t0, t1, t2); 1645e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("srlv $t0, $t1, $t2", 0xffff, 0xffff, t0, t1, t2); 1646e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 1647e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("SUBU\n"); 1648e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0x31415927, 0x00000001, t0, t1, t2); 1649e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0x31415927, 0x00001110, t0, t1, t2); 1650e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0, 255, t0, t1, t2); 1651e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", -1, 0, t0, t1, t2); 1652e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0, 1, t0, t1, t2); 1653e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0, 0, t0, t1, t2); 1654e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0x80000000, -1, t0, t1, t2); 1655e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0x80000000, 0x80000000, t0, t1, t2); 1656e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0x7fffffff, 0, t0, t1, t2); 1657e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0x80000000, 0x80000000, t0, t1, t2); 1658e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0x7fffffff, 0x80000000, t0, t1, t2); 1659e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0x80000000, 0xff000000, t0, t1, t2); 1660e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0x7fffffff, 0x0dd00000, t0, t1, t2); 1661e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0x31415927, 0xffffffff, t0, t1, t2); 1662e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0x31415927, 0xee00ee00, t0, t1, t2); 1663e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0, 255, t0, t1, t2); 1664e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 1, 0, t0, t1, t2); 1665e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0, 1, t0, t1, t2); 1666e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", -1, 0, t0, t1, t2); 1667e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0, -1, t0, t1, t2); 1668e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0, 0x80000000, t0, t1, t2); 1669e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0x80000000, 0, t0, t1, t2); 1670e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0x80000000, 0x80000000, t0, t1, t2); 1671e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0x7fffffff, 0x80000000, t0, t1, t2); 1672e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0x80000000, 0xff000000, t0, t1, t2); 1673e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0x7fffffff, 0x0dd00000, t0, t1, t2); 1674e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0xffffffff, 0, t0, t1, t2); 1675e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0, 0xffffffff, t0, t1, t2); 1676e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0xffffffff, 0xffffffff, t0, t1, t2); 1677e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0x7fffffff, 0x7fffffff, t0, t1, t2); 1678e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0x0000ffff, 0x0000ffff, t0, t1, t2); 1679e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0xffffffff, 0, t0, t1, t2); 1680e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0, 0xffffffff, t0, t1, t2); 1681e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0xffffffff, 0xffffffff, t0, t1, t2); 1682e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0x7fffffff, 0x7fffffff, t0, t1, t2); 1683e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0x0000ffff, 0x0000ffff, t0, t1, t2); 1684e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0x31415927, 0x00000000, t0, t1, t2); 1685e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0x31415927, 0x00000001, t0, t1, t2); 1686e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0x31415927, 0x00000002, t0, t1, t2); 1687e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0x31415927, 0x0000000F, t0, t1, t2); 1688e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0x31415927, 0x00000010, t0, t1, t2); 1689e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0x31415927, 0x0000001F, t0, t1, t2); 1690e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0x31415927, 0x00000020, t0, t1, t2); 1691e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0x31415927, 0x00000021, t0, t1, t2); 1692e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0x00088000, 0x00000000, t0, t1, t2); 1693e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0x00088000, 0x00000001, t0, t1, t2); 1694e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0x00088000, 31, t0, t1, t2); 1695e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0x00010000, 16, t0, t1, t2); 1696e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0x00010000, 17, t0, t1, t2); 1697e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0x00010000, 18, t0, t1, t2); 1698e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0, 0, t0, t1, t2); 1699e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0xffff, 0xffff, t0, t1, t2); 1700e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 1701e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("SUB\n"); 1702e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0x31415927, 0xffffffff, t0, t1, t2); 1703e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0x31415927, 0x27181728, t0, t1, t2); 1704e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0x31415927, 0x97181728, t0, t1, t2); 1705e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0, 0, t0, t1, t2); 1706e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 1, 0, t0, t1, t2); 1707e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0, 1, t0, t1, t2); 1708e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", -1, 0, t0, t1, t2); 1709e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0, -1, t0, t1, t2); 1710e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0, 0x80000000, t0, t1, t2); 1711e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0x80000000, 0, t0, t1, t2); 1712e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0x80000000, 0x80000000, t0, t1, t2); 1713e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0x7fffffff, 0x80000000, t0, t1, t2); 1714e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0x80000000, 0x7fffffff, t0, t1, t2); 1715e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("subu $t0, $t1, $t2", 0x7fffffff, 0x7fffffff, t0, t1, t2); 1716e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 1717e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("XOR\n"); 1718e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("xor $t0, $t1, $t2", 0x31415927, 0xffffffff, t0, t1, t2); 1719e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("xor $t0, $t1, $t2", 0x31415927, 0xee00ee00, t0, t1, t2); 1720e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("xor $t0, $t1, $t2", 0, 255, t0, t1, t2); 1721e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("xor $t0, $t1, $t2", -1, 0, t0, t1, t2); 1722e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("xor $t0, $t1, $t2", 0, 1, t0, t1, t2); 1723e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("xor $t0, $t1, $t2", 0, 0, t0, t1, t2); 1724e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("xor $t0, $t1, $t2", 0x80000000, -1, t0, t1, t2); 1725e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("xor $t0, $t1, $t2", 0x80000000, 0x80000000, t0, t1, t2); 1726e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("xor $t0, $t1, $t2", 0x7fffffff, 0, t0, t1, t2); 1727e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("xor $t0, $t1, $t2", 0x80000000, 0x80000000, t0, t1, t2); 1728e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("xor $t0, $t1, $t2", 0x7fffffff, 0x80000000, t0, t1, t2); 1729e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("xor $t0, $t1, $t2", 0x80000000, 0xff000000, t0, t1, t2); 1730e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("xor $t0, $t1, $t2", 0x7fffffff, 0x0dd00000, t0, t1, t2); 1731e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("xor $t0, $t1, $t2", 0x31415927, 0xffffffff, t0, t1, t2); 1732e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("xor $t0, $t1, $t2", 0x31415927, 0xee00ee00, t0, t1, t2); 1733e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("xor $t0, $t1, $t2", 0, 255, t0, t1, t2); 1734e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("xor $t0, $t1, $t2", 1, 0, t0, t1, t2); 1735e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("xor $t0, $t1, $t2", 0, 1, t0, t1, t2); 1736e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("xor $t0, $t1, $t2", -1, 0, t0, t1, t2); 1737e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("xor $t0, $t1, $t2", 0, -1, t0, t1, t2); 1738e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("xor $t0, $t1, $t2", 0, 0x80000000, t0, t1, t2); 1739e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("xor $t0, $t1, $t2", 0x80000000, 0, t0, t1, t2); 1740e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("xor $t0, $t1, $t2", 0x80000000, 0x80000000, t0, t1, t2); 1741e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("xor $t0, $t1, $t2", 0x7fffffff, 0x80000000, t0, t1, t2); 1742e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("xor $t0, $t1, $t2", 0x80000000, 0xff000000, t0, t1, t2); 1743e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("xor $t0, $t1, $t2", 0x7fffffff, 0x0dd00000, t0, t1, t2); 1744e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("xor $t0, $t1, $t2", 0xffffffff, 0, t0, t1, t2); 1745e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("xor $t0, $t1, $t2", 0, 0xffffffff, t0, t1, t2); 1746e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("xor $t0, $t1, $t2", 0xffffffff, 0xffffffff, t0, t1, t2); 1747e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("xor $t0, $t1, $t2", 0x7fffffff, 0x7fffffff, t0, t1, t2); 1748e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST1("xor $t0, $t1, $t2", 0x0000ffff, 0x0000ffff, t0, t1, t2); 1749e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 1750e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("XORI\n"); 1751e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("xori $t0, $t1, 0xffff", 0x31415927, 0xffff, t0, t1); 1752e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("xori $t0, $t1, 0xee00", 0x31415927, 0xee00, t0, t1); 1753e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("xori $t0, $t1, 255", 0, 255, t0, t1); 1754e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("xori $t0, $t1, 0", -1, 0, t0, t1); 1755e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("xori $t0, $t1, 1", 0, 1, t0, t1); 1756e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("xori $t0, $t1, 0", 0, 0, t0, t1); 1757e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("xori $t0, $t1, 0x8000", 0x80000000, 0x8000, t0, t1); 1758e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("xori $t0, $t1, 0", 0x7fffffff, 0, t0, t1); 1759e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("xori $t0, $t1, 0x8000", 0x80000000, 0x8000, t0, t1); 1760e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("xori $t0, $t1, 0x8000", 0x7fffffff, 0x8000, t0, t1); 1761e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("xori $t0, $t1, 0xff00", 0x80000000, 0xff00, t0, t1); 1762e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("xori $t0, $t1, 0x0dd0", 0x7fffffff, 0x0dd0, t0, t1); 1763e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("xori $t0, $t1, 0xffff", 0x31415927, 0xffff, t0, t1); 1764e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("xori $t0, $t1, 0xee00", 0x31415927, 0xee00, t0, t1); 1765e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("xori $t0, $t1, 255", 0, 255, t0, t1); 1766e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("xori $t0, $t1, 0", 1, 0, t0, t1); 1767e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("xori $t0, $t1, 1", 0, 1, t0, t1); 1768e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("xori $t0, $t1, 0", -1, 0, t0, t1); 1769e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("xori $t0, $t1, 0x8000", 0, 0x8000, t0, t1); 1770e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("xori $t0, $t1, 0", 0x8000, 0, t0, t1); 1771e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("xori $t0, $t1, 0x8000", 0x80000000, 0x8000, t0, t1); 1772e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("xori $t0, $t1, 0x8000", 0x7fffffff, 0x8000, t0, t1); 1773e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("xori $t0, $t1, 0xff00", 0x80000000, 0xff00, t0, t1); 1774e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("xori $t0, $t1, 0x0dd0", 0x7fffffff, 0x0dd0, t0, t1); 1775e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("xori $t0, $t1, 0", 0xffff, 0, t0, t1); 1776e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("xori $t0, $t1, 0xffff", 0, 0xffff, t0, t1); 1777e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("xori $t0, $t1, 0xffff", 0xffffffff, 0xffff, t0, t1); 1778e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("xori $t0, $t1, 0x7fff", 0x7fffffff, 0x7fff, t0, t1); 1779e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINST2("xori $t0, $t1, 0x0000", 0x0000ffff, 0x0000, t0, t1); 1780e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 1781e584b0e99b31e6d257cc58c630cd6067550539e3sewardj printf("MFHI MFLO\n"); 1782e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN_HILO(0x31415927); 1783e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN_HILO(0); 1784e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN_HILO(-1); 1785e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN_HILO(0xffffffff); 1786e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN_HILO(0x8000); 1787e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN_HILO(0x80000000); 1788e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN_HILO(0x0000ffff); 1789e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN_HILO(0x7fff); 1790e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN_HILO(0x0dd0); 1791e584b0e99b31e6d257cc58c630cd6067550539e3sewardj TESTINSN_HILO(0xff00); 1792e584b0e99b31e6d257cc58c630cd6067550539e3sewardj 1793e584b0e99b31e6d257cc58c630cd6067550539e3sewardj return 0; 1794e584b0e99b31e6d257cc58c630cd6067550539e3sewardj} 1795