Add qemu 2.4.0
[kvmfornfv.git] / qemu / tests / tcg / cris / check_lsr.s
1 # mach: crisv0 crisv3 crisv8 crisv10 crisv32
2 # output: ffffffff\n1\n1\n1ffff\n5a67f\n1\n0\n0\n3699fc67\nffffffff\n1\n1\n1ffff\n5a67f\nda670000\nda670000\nda670000\nda673c67\nffffffff\nffff7fff\n1\nffff0000\nffff0001\n5a67000f\nda67f100\nda67f100\nda67f100\nda67f127\nffffffff\nffffff7f\n1\nffffff00\nffffff00\nffffff01\n5a67f100\n5a67f109\n
3
4  .include "testutils.inc"
5  start
6  moveq -1,r3
7  lsrq 0,r3
8  test_move_cc 1 0 0 0
9  checkr3 ffffffff
10
11  moveq 2,r3
12  lsrq 1,r3
13  test_move_cc 0 0 0 0
14  checkr3 1
15
16  moveq -1,r3
17  lsrq 31,r3
18  test_move_cc 0 0 0 0
19  checkr3 1
20
21  moveq -1,r3
22  lsrq 15,r3
23  test_move_cc 0 0 0 0
24  checkr3 1ffff
25
26  move.d 0x5a67f19f,r3
27  lsrq 12,r3
28  test_move_cc 0 0 0 0
29  checkr3 5a67f
30
31  move.d 0xda67f19f,r3
32  move.d 31,r4
33  lsr.d r4,r3
34  test_move_cc 0 0 0 0
35  checkr3 1
36
37  move.d 0xda67f19f,r3
38  move.d 32,r4
39  lsr.d r4,r3
40  test_move_cc 0 1 0 0
41  checkr3 0
42
43  move.d 0xda67f19f,r3
44  move.d 33,r4
45  lsr.d r4,r3
46  test_move_cc 0 1 0 0
47  checkr3 0
48
49  move.d 0xda67f19f,r3
50  move.d 66,r4
51  lsr.d r4,r3
52  test_move_cc 0 0 0 0
53  checkr3 3699fc67
54
55  moveq -1,r3
56  moveq 0,r4
57  lsr.d r4,r3
58  test_move_cc 1 0 0 0
59  checkr3 ffffffff
60
61  moveq 2,r3
62  moveq 1,r4
63  lsr.d r4,r3
64  test_move_cc 0 0 0 0
65  checkr3 1
66
67  moveq -1,r3
68  moveq 31,r4
69  lsr.d r4,r3
70  test_move_cc 0 0 0 0
71  checkr3 1
72
73  moveq -1,r3
74  moveq 15,r4
75  lsr.d r4,r3
76  test_move_cc 0 0 0 0
77  checkr3 1ffff
78
79  move.d 0x5a67f19f,r3
80  moveq 12,r4
81  lsr.d r4,r3
82  test_move_cc 0 0 0 0
83  checkr3 5a67f
84
85  move.d 0xda67f19f,r3
86  move.d 31,r4
87  lsr.w r4,r3
88  test_move_cc 0 1 0 0
89  checkr3 da670000
90
91  move.d 0xda67f19f,r3
92  move.d 32,r4
93  lsr.w r4,r3
94  test_move_cc 0 1 0 0
95  checkr3 da670000
96
97  move.d 0xda67f19f,r3
98  move.d 33,r4
99  lsr.w r4,r3
100  test_move_cc 0 1 0 0
101  checkr3 da670000
102
103  move.d 0xda67f19f,r3
104  move.d 66,r4
105  lsr.w r4,r3
106  test_move_cc 0 0 0 0
107  checkr3 da673c67
108
109  moveq -1,r3
110  moveq 0,r4
111  lsr.w r4,r3
112  test_move_cc 1 0 0 0
113  checkr3 ffffffff
114
115  moveq -1,r3
116  moveq 1,r4
117  lsr.w r4,r3
118  test_move_cc 0 0 0 0
119  checkr3 ffff7fff
120
121  moveq 2,r3
122  moveq 1,r4
123  lsr.w r4,r3
124  test_move_cc 0 0 0 0
125  checkr3 1
126
127 ;; FIXME: this was wrong. Z should be set.
128  moveq -1,r3
129  moveq 31,r4
130  lsr.w r4,r3
131  test_move_cc 0 1 0 0
132  checkr3 ffff0000
133
134  moveq -1,r3
135  moveq 15,r4
136  lsr.w r4,r3
137  test_move_cc 0 0 0 0
138  checkr3 ffff0001
139
140  move.d 0x5a67f19f,r3
141  moveq 12,r4
142  lsr.w r4,r3
143  test_move_cc 0 0 0 0
144  checkr3 5a67000f
145
146  move.d 0xda67f19f,r3
147  move.d 31,r4
148  lsr.b r4,r3
149  test_move_cc 0 1 0 0
150  checkr3 da67f100
151
152  move.d 0xda67f19f,r3
153  move.d 32,r4
154  lsr.b r4,r3
155  test_move_cc 0 1 0 0
156  checkr3 da67f100
157
158  move.d 0xda67f19f,r3
159  move.d 33,r4
160  lsr.b r4,r3
161  test_move_cc 0 1 0 0
162  checkr3 da67f100
163
164  move.d 0xda67f19f,r3
165  move.d 66,r4
166  lsr.b r4,r3
167  test_move_cc 0 0 0 0
168  checkr3 da67f127
169
170  moveq -1,r3
171  moveq 0,r4
172  lsr.b r4,r3
173  test_move_cc 1 0 0 0
174  checkr3 ffffffff
175
176  moveq -1,r3
177  moveq 1,r4
178  lsr.b r4,r3
179  test_move_cc 0 0 0 0
180  checkr3 ffffff7f
181
182  moveq 2,r3
183  moveq 1,r4
184  lsr.b r4,r3
185  test_move_cc 0 0 0 0
186  checkr3 1
187
188  moveq -1,r3
189  moveq 31,r4
190  lsr.b r4,r3
191  test_move_cc 0 1 0 0
192  checkr3 ffffff00
193
194  moveq -1,r3
195  moveq 15,r4
196  lsr.b r4,r3
197  test_move_cc 0 1 0 0
198  checkr3 ffffff00
199
200  moveq -1,r3
201  moveq 7,r4
202  lsr.b r4,r3
203  test_move_cc 0 0 0 0
204  checkr3 ffffff01
205
206  move.d 0x5a67f19f,r3
207  moveq 12,r4
208  lsr.b r4,r3
209  test_move_cc 0 1 0 0
210  checkr3 5a67f100
211
212  move.d 0x5a67f19f,r3
213  moveq 4,r4
214  lsr.b r4,r3
215  test_move_cc 0 0 0 0
216  checkr3 5a67f109
217
218  quit