movua.s revision 1.1 1 1.1 christos # sh testcase for movua
2 1.1 christos # mach: all
3 1.1 christos # as(sh): -defsym sim_cpu=0
4 1.1 christos # as(shdsp): -defsym sim_cpu=1 -dsp
5 1.1 christos
6 1.1 christos .include "testutils.inc"
7 1.1 christos
8 1.1 christos start
9 1.1 christos movua_1:
10 1.1 christos set_grs_a5a5
11 1.1 christos mov.l srcp, r1
12 1.1 christos movua.l @r1, r0
13 1.1 christos .ifdef LITTLE
14 1.1 christos assertreg0 0x03020100
15 1.1 christos .else
16 1.1 christos assertreg0 0x00010203
17 1.1 christos .endif
18 1.1 christos
19 1.1 christos add #1, r1
20 1.1 christos movua.l @r1, r0
21 1.1 christos .ifdef LITTLE
22 1.1 christos assertreg0 0x04030201
23 1.1 christos .else
24 1.1 christos assertreg0 0x01020304
25 1.1 christos .endif
26 1.1 christos
27 1.1 christos add #1, r1
28 1.1 christos movua.l @r1, r0
29 1.1 christos .ifdef LITTLE
30 1.1 christos assertreg0 0x05040302
31 1.1 christos .else
32 1.1 christos assertreg0 0x02030405
33 1.1 christos .endif
34 1.1 christos
35 1.1 christos add #1, r1
36 1.1 christos movua.l @r1, r0
37 1.1 christos .ifdef LITTLE
38 1.1 christos assertreg0 0x06050403
39 1.1 christos .else
40 1.1 christos assertreg0 0x03040506
41 1.1 christos .endif
42 1.1 christos
43 1.1 christos add #1, r1
44 1.1 christos movua.l @r1, r0
45 1.1 christos .ifdef LITTLE
46 1.1 christos assertreg0 0x07060504
47 1.1 christos .else
48 1.1 christos assertreg0 0x04050607
49 1.1 christos .endif
50 1.1 christos
51 1.1 christos add #1, r1
52 1.1 christos movua.l @r1, r0
53 1.1 christos .ifdef LITTLE
54 1.1 christos assertreg0 0x08070605
55 1.1 christos .else
56 1.1 christos assertreg0 0x05060708
57 1.1 christos .endif
58 1.1 christos
59 1.1 christos add #1, r1
60 1.1 christos movua.l @r1, r0
61 1.1 christos .ifdef LITTLE
62 1.1 christos assertreg0 0x09080706
63 1.1 christos .else
64 1.1 christos assertreg0 0x06070809
65 1.1 christos .endif
66 1.1 christos
67 1.1 christos add #1, r1
68 1.1 christos movua.l @r1, r0
69 1.1 christos .ifdef LITTLE
70 1.1 christos assertreg0 0x0a090807
71 1.1 christos .else
72 1.1 christos assertreg0 0x0708090a
73 1.1 christos .endif
74 1.1 christos
75 1.1 christos add #1, r1
76 1.1 christos movua.l @r1, r0
77 1.1 christos .ifdef LITTLE
78 1.1 christos assertreg0 0x0b0a0908
79 1.1 christos .else
80 1.1 christos assertreg0 0x08090a0b
81 1.1 christos .endif
82 1.1 christos
83 1.1 christos add #1, r1
84 1.1 christos movua.l @r1, r0
85 1.1 christos .ifdef LITTLE
86 1.1 christos assertreg0 0x0c0b0a09
87 1.1 christos .else
88 1.1 christos assertreg0 0x090a0b0c
89 1.1 christos .endif
90 1.1 christos
91 1.1 christos add #1, r1
92 1.1 christos movua.l @r1, r0
93 1.1 christos .ifdef LITTLE
94 1.1 christos assertreg0 0x0d0c0b0a
95 1.1 christos .else
96 1.1 christos assertreg0 0x0a0b0c0d
97 1.1 christos .endif
98 1.1 christos
99 1.1 christos add #1, r1
100 1.1 christos movua.l @r1, r0
101 1.1 christos .ifdef LITTLE
102 1.1 christos assertreg0 0x0e0d0c0b
103 1.1 christos .else
104 1.1 christos assertreg0 0x0b0c0d0e
105 1.1 christos .endif
106 1.1 christos
107 1.1 christos add #1, r1
108 1.1 christos movua.l @r1, r0
109 1.1 christos .ifdef LITTLE
110 1.1 christos assertreg0 0x0f0e0d0c
111 1.1 christos .else
112 1.1 christos assertreg0 0x0c0d0e0f
113 1.1 christos .endif
114 1.1 christos
115 1.1 christos assertreg src+12, r1
116 1.1 christos test_gr_a5a5 r2
117 1.1 christos test_gr_a5a5 r3
118 1.1 christos test_gr_a5a5 r4
119 1.1 christos test_gr_a5a5 r5
120 1.1 christos test_gr_a5a5 r6
121 1.1 christos test_gr_a5a5 r7
122 1.1 christos test_gr_a5a5 r8
123 1.1 christos test_gr_a5a5 r9
124 1.1 christos test_gr_a5a5 r10
125 1.1 christos test_gr_a5a5 r11
126 1.1 christos test_gr_a5a5 r12
127 1.1 christos test_gr_a5a5 r13
128 1.1 christos test_gr_a5a5 r14
129 1.1 christos
130 1.1 christos bra movua_4:
131 1.1 christos nop
132 1.1 christos
133 1.1 christos .align 0
134 1.1 christos src: .byte 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16
135 1.1 christos .align 2
136 1.1 christos srcp: .long src
137 1.1 christos
138 1.1 christos movua_4:
139 1.1 christos set_grs_a5a5
140 1.1 christos mov.l srcp2, r1
141 1.1 christos movua.l @r1+, r0
142 1.1 christos .ifdef LITTLE
143 1.1 christos assertreg0 0x03020100
144 1.1 christos .else
145 1.1 christos assertreg0 0x00010203
146 1.1 christos .endif
147 1.1 christos assertreg src+4, r1
148 1.1 christos
149 1.1 christos mov.l srcp2, r1
150 1.1 christos add #1, r1
151 1.1 christos movua.l @r1+, r0
152 1.1 christos .ifdef LITTLE
153 1.1 christos assertreg0 0x04030201
154 1.1 christos .else
155 1.1 christos assertreg0 0x01020304
156 1.1 christos .endif
157 1.1 christos assertreg src+5, r1
158 1.1 christos
159 1.1 christos mov.l srcp2, r1
160 1.1 christos add #2, r1
161 1.1 christos movua.l @r1+, r0
162 1.1 christos .ifdef LITTLE
163 1.1 christos assertreg0 0x05040302
164 1.1 christos .else
165 1.1 christos assertreg0 0x02030405
166 1.1 christos .endif
167 1.1 christos assertreg src+6, r1
168 1.1 christos
169 1.1 christos mov.l srcp2, r1
170 1.1 christos add #3, r1
171 1.1 christos movua.l @r1+, r0
172 1.1 christos .ifdef LITTLE
173 1.1 christos assertreg0 0x06050403
174 1.1 christos .else
175 1.1 christos assertreg0 0x03040506
176 1.1 christos .endif
177 1.1 christos assertreg src+7, r1
178 1.1 christos
179 1.1 christos test_gr_a5a5 r2
180 1.1 christos test_gr_a5a5 r3
181 1.1 christos test_gr_a5a5 r4
182 1.1 christos test_gr_a5a5 r5
183 1.1 christos test_gr_a5a5 r6
184 1.1 christos test_gr_a5a5 r7
185 1.1 christos test_gr_a5a5 r8
186 1.1 christos test_gr_a5a5 r9
187 1.1 christos test_gr_a5a5 r10
188 1.1 christos test_gr_a5a5 r11
189 1.1 christos test_gr_a5a5 r12
190 1.1 christos test_gr_a5a5 r13
191 1.1 christos test_gr_a5a5 r14
192 1.1 christos
193 1.1 christos pass
194 1.1 christos exit 0
195 1.1 christos
196 1.1 christos srcp2: .long src
197 1.1 christos
198