root / tests / tcg / cris / testutils.inc @ c09015dd
History | View | Annotate | Download (1.3 kB)
1 |
.syntax no_register_prefix |
---|---|
2 |
|
3 |
.macro start |
4 |
.text |
5 |
.global main |
6 |
main: |
7 |
.endm |
8 |
|
9 |
.macro quit |
10 |
jump pass |
11 |
nop |
12 |
.endm |
13 |
|
14 |
.macro pass |
15 |
jump pass |
16 |
nop |
17 |
.endm |
18 |
|
19 |
.macro startnostack |
20 |
start |
21 |
.endm |
22 |
|
23 |
.macro fail |
24 |
.data |
25 |
99: |
26 |
.asciz " checkr3 failed\n" |
27 |
.text |
28 |
move.d 99b, $r10 |
29 |
jsr _fail |
30 |
nop |
31 |
.endm |
32 |
|
33 |
.macro checkr3 val |
34 |
cmp.d 0x\val, $r3 |
35 |
beq 100f |
36 |
nop |
37 |
.data |
38 |
99: |
39 |
.asciz "checkr3 failed\n" |
40 |
.text |
41 |
move.d 99b, $r10 |
42 |
jsr _fail |
43 |
nop |
44 |
100: |
45 |
.endm |
46 |
|
47 |
; Test the condition codes |
48 |
.macro test_cc N Z V C |
49 |
.if \N |
50 |
bpl 9f |
51 |
nop |
52 |
.else |
53 |
bmi 9f |
54 |
nop |
55 |
.endif |
56 |
.if \Z |
57 |
bne 9f |
58 |
nop |
59 |
.else |
60 |
beq 9f |
61 |
nop |
62 |
.endif |
63 |
.if \V |
64 |
bvc 9f |
65 |
nop |
66 |
.else |
67 |
bvs 9f |
68 |
nop |
69 |
.endif |
70 |
.if \C |
71 |
bcc 9f |
72 |
nop |
73 |
.else |
74 |
bcs 9f |
75 |
nop |
76 |
.endif |
77 |
ba 8f |
78 |
nop |
79 |
9: |
80 |
.data |
81 |
99: |
82 |
.asciz "test_move_cc failed\n" |
83 |
.text |
84 |
move.d 99b, $r10 |
85 |
jsr _fail |
86 |
nop |
87 |
8: |
88 |
.endm |
89 |
|
90 |
|
91 |
.macro test_move_cc N Z V C |
92 |
.if \N |
93 |
bpl 9f |
94 |
nop |
95 |
.else |
96 |
bmi 9f |
97 |
nop |
98 |
.endif |
99 |
.if \Z |
100 |
bne 9f |
101 |
nop |
102 |
.else |
103 |
beq 9f |
104 |
nop |
105 |
.endif |
106 |
ba 8f |
107 |
nop |
108 |
9: |
109 |
.data |
110 |
99: |
111 |
.asciz "test_move_cc failed\n" |
112 |
.text |
113 |
move.d 99b, $r10 |
114 |
jsr _fail |
115 |
nop |
116 |
8: |
117 |
.endm |