1# mach:  crisv0 crisv3 crisv8 crisv10 crisv32
2# output: ffffffff\nffffffff\n0\n80000000\n1\nba987655\nffff\nffff\n0\n89ab8000\nffff0001\n45677655\nff\nff\n0\n89abae80\nffffff01\n45678955\n
3
4 .include "testutils.inc"
5 start
6 moveq 0,r3
7 moveq 1,r4
8 neg.d r4,r3
9 test_cc 1 0 0 1
10 dumpr3 ; ffffffff
11
12 moveq 1,r3
13 moveq 0,r4
14 neg.d r3,r3
15 test_cc 1 0 0 1
16 dumpr3 ; ffffffff
17
18 moveq 0,r3
19 neg.d r3,r3
20 test_cc 0 1 0 0
21 dumpr3 ; 0
22
23 move.d 0x80000000,r3
24 neg.d r3,r3
25 test_cc 1 0 1 1
26 dumpr3 ; 80000000
27
28 moveq -1,r3
29 neg.d r3,r3
30 test_cc 0 0 0 1
31 dumpr3 ; 1
32
33 move.d 0x456789ab,r3
34 neg.d r3,r3
35 test_cc 1 0 0 1
36 dumpr3 ; ba987655
37
38 moveq 0,r3
39 moveq 1,r4
40 neg.w r4,r3
41 test_cc 1 0 0 1
42 dumpr3 ; ffff
43
44 moveq 1,r3
45 moveq 0,r4
46 neg.w r3,r3
47 test_cc 1 0 0 1
48 dumpr3 ; ffff
49
50 moveq 0,r3
51 neg.w r3,r3
52 test_cc 0 1 0 0
53 dumpr3 ; 0
54
55 move.d 0x89ab8000,r3
56 neg.w r3,r3
57 test_cc 1 0 1 1
58 dumpr3 ; 89ab8000
59
60 moveq -1,r3
61 neg.w r3,r3
62 test_cc 0 0 0 1
63 dumpr3 ; ffff0001
64
65 move.d 0x456789ab,r3
66 neg.w r3,r3
67 test_cc 0 0 0 1
68 dumpr3 ; 45677655
69
70 moveq 0,r3
71 moveq 1,r4
72 neg.b r4,r3
73 test_cc 1 0 0 1
74 dumpr3 ; ff
75
76 moveq 1,r3
77 moveq 0,r4
78 neg.b r3,r3
79 test_cc 1 0 0 1
80 dumpr3 ; ff
81
82 moveq 0,r3
83 neg.b r3,r3
84 test_cc 0 1 0 0
85 dumpr3 ; 0
86
87 move.d 0x89abae80,r3
88 neg.b r3,r3
89 test_cc 1 0 1 1
90 dumpr3 ; 89abae80
91
92 moveq -1,r3
93 neg.b r3,r3
94 test_cc 0 0 0 1
95 dumpr3 ; ffffff01
96
97 move.d 0x456789ab,r3
98 neg.b r3,r3
99 test_cc 0 0 0 1
100 dumpr3 ; 45678955
101
102 quit
103