add.c revision 8f943afc22a6a683b78271836c8ddc462b4824a9
1#include <stdio.h>
2#include "add.h"
3#include "opcodes.h"
4
5static void do_imm_insns(void)
6{
7	immsweep(ahi, 0, 0);
8	immsweep(ahi, -1, 0);
9	immsweep(ahi, -32768, 0);
10	immsweep(ahi, 32767, 0);
11	immsweep(aghi, 0, 0);
12	immsweep(aghi, -1, 0);
13	immsweep(aghi, -32768, 0);
14	immsweep(aghi, 32767, 0);
15}
16
17
18static void do_regmem_insns(unsigned long s2)
19{
20	memsweep(a, s2, 0);
21	memsweep(ah, s2, 0);
22	memsweep(ag, s2, 0);
23	memsweep(agf, s2, 0);
24	memsweep(al, s2, 0);
25	memsweep(alg, s2, 0);
26	memsweep(agf, s2, 0);
27	memsweep(algf, s2, 0);
28	regsweep(ar, s2, 0);
29	regsweep(agr, s2, 0);
30	regsweep(agfr, s2, 0);
31	regsweep(alr, s2, 0);
32	regsweep(algr, s2, 0);
33	regsweep(algfr, s2, 0);
34	memsweep(alc, s2, 0);
35	memsweep(alcg, s2, 0);
36	regsweep(alcr, s2, 0);
37	regsweep(alcgr, s2, 0);
38	memsweep(alc, s2, 1);
39	memsweep(alcg, s2, 1);
40	regsweep(alcr, s2, 1);
41	regsweep(alcgr, s2, 1);
42	ldispsweep(AHY, s2, 0);
43	ldispsweep(AY, s2, 0);
44	ldispsweep(ALY, s2, 0);
45}
46
47int main()
48{
49	do_regmem_insns(0x0ul);
50	do_regmem_insns(0x7ffffffffffffffful);
51	do_regmem_insns(0x8000000000000000ul);
52	do_regmem_insns(0xfffffffffffffffful);
53	do_regmem_insns(0x7fffffff00000000ul);
54	do_regmem_insns(0x8000000000000000ul);
55	do_regmem_insns(0xffffffff00000000ul);
56	do_regmem_insns(0x000000007ffffffful);
57	do_regmem_insns(0x0000000080000000ul);
58	do_regmem_insns(0x00000000fffffffful);
59	do_regmem_insns(0x000000000000fffful);
60	do_regmem_insns(0x0000000000007ffful);
61	do_regmem_insns(0x0000000000008000ul);
62	do_regmem_insns(0x000000000000fffful);
63
64	do_imm_insns();
65
66	return 0;
67}
68