1 #include <stdio.h> 2 #include "sub.h" 3 #include "opcodes.h" 4 5 static void do_regmem_insns(unsigned long s2) 6 { 7 memsweep(s, s2, 0); 8 memsweep(sh, s2, 0); 9 memsweep(sg, s2, 0); 10 memsweep(sgf, s2, 0); 11 memsweep(sl, s2, 0); 12 memsweep(slg, s2, 0); 13 memsweep(sgf, s2, 0); 14 memsweep(slgf, s2, 0); 15 regsweep(sr, s2, 0); 16 regsweep(sgr, s2, 0); 17 regsweep(sgfr, s2, 0); 18 regsweep(slr, s2, 0); 19 regsweep(slgr, s2, 0); 20 regsweep(slgfr, s2, 0); 21 memsweep(slb, s2, 0); 22 memsweep(slbg, s2, 0); 23 regsweep(slbr, s2, 0); 24 regsweep(slbgr, s2, 0); 25 memsweep(slb, s2, 1); 26 memsweep(slbg, s2, 1); 27 regsweep(slbr, s2, 1); 28 regsweep(slbgr, s2, 1); 29 ldispsweep(SHY, s2, 0); 30 ldispsweep(SLY, s2, 0); 31 ldispsweep(SY, s2, 0); 32 } 33 34 int main() 35 { 36 do_regmem_insns(0x0ul); 37 do_regmem_insns(0x7ffffffffffffffful); 38 do_regmem_insns(0x8000000000000000ul); 39 do_regmem_insns(0xfffffffffffffffful); 40 do_regmem_insns(0x7fffffff00000000ul); 41 do_regmem_insns(0x8000000000000000ul); 42 do_regmem_insns(0xffffffff00000000ul); 43 do_regmem_insns(0x000000007ffffffful); 44 do_regmem_insns(0x0000000080000000ul); 45 do_regmem_insns(0x00000000fffffffful); 46 do_regmem_insns(0x000000000000fffful); 47 do_regmem_insns(0x0000000000007ffful); 48 do_regmem_insns(0x0000000000008000ul); 49 do_regmem_insns(0x000000000000fffful); 50 51 return 0; 52 } 53