mul.c revision b32f58018498ea2225959b0ba11c18f0c433deef
1#include <stdio.h>
2#include "mul.h"
3#include "opcodes.h"
4
5static void do_imm_insns(void)
6{
7	immsweep(mhi, 0);
8	immsweep(mhi, -1);
9	immsweep(mhi, -32768);
10	immsweep(mhi, 32767);
11	immsweep(mghi, 0);
12	immsweep(mghi, -1);
13	immsweep(mghi, -32768);
14	immsweep(mghi, 32767);
15}
16
17
18static void do_regmem_insns(unsigned long m2)
19{
20	memsweep(m, m2);
21	regsweep(mr, m2);
22	memsweep(mh, m2);
23	memsweep(mlg, m2);
24	regsweep(mlgr, m2);
25	memsweep(ml, m2);
26	regsweep(mlr, m2);
27	memsweep(ms, m2);
28	regsweep(msr, m2);
29	memsweep(msg, m2);
30	regsweep(msgr, m2);
31	memsweep(msgf, m2);
32	regsweep(msgfr, m2);
33	msysweep(m2);
34}
35
36int main()
37{
38	do_regmem_insns(0x0ul);
39	do_regmem_insns(0x7ffffffffffffffful);
40	do_regmem_insns(0x8000000000000000ul);
41	do_regmem_insns(0xfffffffffffffffful);
42	do_regmem_insns(0x7fffffff00000000ul);
43	do_regmem_insns(0x8000000000000000ul);
44	do_regmem_insns(0xffffffff00000000ul);
45	do_regmem_insns(0x000000007ffffffful);
46	do_regmem_insns(0x0000000080000000ul);
47	do_regmem_insns(0x00000000fffffffful);
48	do_regmem_insns(0x000000000000fffful);
49	do_regmem_insns(0x0000000000007ffful);
50	do_regmem_insns(0x0000000000008000ul);
51	do_regmem_insns(0x000000000000fffful);
52	do_imm_insns();
53	return 0;
54}
55