Automatic date update in version.in
[binutils-gdb.git] / sim / testsuite / frv / csllcc.cgs
blob0c5b9af8ae4f3bde4e30b0865f89cebb0f1e0a90
1 # frv testcase for csllcc $GRi,$GRj,$GRk,$CCi,$cond
2 # mach: all
4         .include "testutils.inc"
6         start
8         .global csllcc
9 csllcc:
10         set_spr_immed   0x1b1b,cccr
12         set_gr_limmed   0xdead,0xbee0,gr7       ; Shift by 0
13         set_gr_immed    2,gr8
14         set_icc         0x0f,0          ; Set mask opposite of expected
15         csllcc          gr8,gr7,gr8,cc0,1
16         test_icc        0 0 0 1 icc0
17         test_gr_immed   2,gr8
19         set_gr_limmed   0xdead,0xbee1,gr7       ; Shift by 1
20         set_gr_immed    2,gr8
21         set_icc         0x0f,0          ; Set mask opposite of expected
22         csllcc          gr8,gr7,gr8,cc0,1
23         test_icc        0 0 0 1 icc0
24         test_gr_immed   4,gr8
26         set_gr_limmed   0xdead,0xbeff,gr7       ; Shift by 31
27         set_gr_immed    1,gr8
28         set_icc         0x07,0          ; Set mask opposite of expected
29         csllcc          gr8,gr7,gr8,cc4,1
30         test_icc        1 0 0 1 icc0
31         test_gr_limmed  0x8000,0x0000,gr8
33         set_gr_limmed   0xdead,0xbeff,gr7       ; clear register
34         set_gr_immed    2,gr8
35         set_icc         0x08,0          ; Set mask opposite of expected
36         csllcc          gr8,gr7,gr8,cc4,1
37         test_icc        0 1 1 0 icc0
38         test_gr_immed   0x00000000,gr8
40         set_gr_limmed   0xdead,0xbee0,gr7       ; Shift by 0
41         set_gr_immed    2,gr8
42         set_icc         0x0d,0          ; Set mask opposite of expected
43         csllcc          gr8,gr7,gr8,cc0,0
44         test_icc        1 1 0 1 icc0
45         test_gr_immed   2,gr8
47         set_gr_limmed   0xdead,0xbee1,gr7       ; Shift by 1
48         set_gr_immed    2,gr8
49         set_icc         0x0f,0          ; Set mask opposite of expected
50         csllcc          gr8,gr7,gr8,cc0,0
51         test_icc        1 1 1 1 icc0
52         test_gr_immed   2,gr8
54         set_gr_limmed   0xdead,0xbeff,gr7       ; Shift by 31
55         set_gr_immed    1,gr8
56         set_icc         0x07,0          ; Set mask opposite of expected
57         csllcc          gr8,gr7,gr8,cc4,0
58         test_icc        0 1 1 1 icc0
59         test_gr_immed   1,gr8
61         set_gr_limmed   0xdead,0xbeff,gr7       ; clear register
62         set_gr_immed    2,gr8
63         set_icc         0x0a,0          ; Set mask opposite of expected
64         csllcc          gr8,gr7,gr8,cc4,0
65         test_icc        1 0 1 0 icc0
66         test_gr_immed   2,gr8
68         set_gr_limmed   0xdead,0xbee0,gr7       ; Shift by 0
69         set_gr_immed    2,gr8
70         set_icc         0x0f,1          ; Set mask opposite of expected
71         csllcc          gr8,gr7,gr8,cc1,0
72         test_icc        0 0 0 1 icc1
73         test_gr_immed   2,gr8
75         set_gr_limmed   0xdead,0xbee1,gr7       ; Shift by 1
76         set_gr_immed    2,gr8
77         set_icc         0x0f,1          ; Set mask opposite of expected
78         csllcc          gr8,gr7,gr8,cc1,0
79         test_icc        0 0 0 1 icc1
80         test_gr_immed   4,gr8
82         set_gr_limmed   0xdead,0xbeff,gr7       ; Shift by 31
83         set_gr_immed    1,gr8
84         set_icc         0x07,1          ; Set mask opposite of expected
85         csllcc          gr8,gr7,gr8,cc5,0
86         test_icc        1 0 0 1 icc1
87         test_gr_limmed  0x8000,0x0000,gr8
89         set_gr_limmed   0xdead,0xbeff,gr7       ; clear register
90         set_gr_immed    2,gr8
91         set_icc         0x08,1          ; Set mask opposite of expected
92         csllcc          gr8,gr7,gr8,cc5,0
93         test_icc        0 1 1 0 icc1
94         test_gr_immed   0x00000000,gr8
96         set_gr_limmed   0xdead,0xbee0,gr7       ; Shift by 0
97         set_gr_immed    2,gr8
98         set_icc         0x0d,1          ; Set mask opposite of expected
99         csllcc          gr8,gr7,gr8,cc1,1
100         test_icc        1 1 0 1 icc1
101         test_gr_immed   2,gr8
103         set_gr_limmed   0xdead,0xbee1,gr7       ; Shift by 1
104         set_gr_immed    2,gr8
105         set_icc         0x0f,1          ; Set mask opposite of expected
106         csllcc          gr8,gr7,gr8,cc1,1
107         test_icc        1 1 1 1 icc1
108         test_gr_immed   2,gr8
110         set_gr_limmed   0xdead,0xbeff,gr7       ; Shift by 31
111         set_gr_immed    1,gr8
112         set_icc         0x07,1          ; Set mask opposite of expected
113         csllcc          gr8,gr7,gr8,cc5,1
114         test_icc        0 1 1 1 icc1
115         test_gr_immed   1,gr8
117         set_gr_limmed   0xdead,0xbeff,gr7       ; clear register
118         set_gr_immed    2,gr8
119         set_icc         0x0a,1          ; Set mask opposite of expected
120         csllcc          gr8,gr7,gr8,cc5,1
121         test_icc        1 0 1 0 icc1
122         test_gr_immed   2,gr8
124         set_gr_limmed   0xdead,0xbee0,gr7       ; Shift by 0
125         set_gr_immed    2,gr8
126         set_icc         0x0d,2          ; Set mask opposite of expected
127         csllcc          gr8,gr7,gr8,cc2,0
128         test_icc        1 1 0 1 icc2
129         test_gr_immed   2,gr8
131         set_gr_limmed   0xdead,0xbee1,gr7       ; Shift by 1
132         set_gr_immed    2,gr8
133         set_icc         0x0f,2          ; Set mask opposite of expected
134         csllcc          gr8,gr7,gr8,cc2,0
135         test_icc        1 1 1 1 icc2
136         test_gr_immed   2,gr8
138         set_gr_limmed   0xdead,0xbeff,gr7       ; Shift by 31
139         set_gr_immed    1,gr8
140         set_icc         0x07,2          ; Set mask opposite of expected
141         csllcc          gr8,gr7,gr8,cc6,1
142         test_icc        0 1 1 1 icc2
143         test_gr_immed   1,gr8
145         set_gr_limmed   0xdead,0xbeff,gr7       ; clear register
146         set_gr_immed    2,gr8
147         set_icc         0x0a,2          ; Set mask opposite of expected
148         csllcc          gr8,gr7,gr8,cc6,1
149         test_icc        1 0 1 0 icc2
150         test_gr_immed   2,gr8
152         set_gr_limmed   0xdead,0xbee0,gr7       ; Shift by 0
153         set_gr_immed    2,gr8
154         set_icc         0x0d,3          ; Set mask opposite of expected
155         csllcc          gr8,gr7,gr8,cc3,0
156         test_icc        1 1 0 1 icc3
157         test_gr_immed   2,gr8
159         set_gr_limmed   0xdead,0xbee1,gr7       ; Shift by 1
160         set_gr_immed    2,gr8
161         set_icc         0x0f,3          ; Set mask opposite of expected
162         csllcc          gr8,gr7,gr8,cc3,0
163         test_icc        1 1 1 1 icc3
164         test_gr_immed   2,gr8
166         set_gr_limmed   0xdead,0xbeff,gr7       ; Shift by 31
167         set_gr_immed    1,gr8
168         set_icc         0x07,3          ; Set mask opposite of expected
169         csllcc          gr8,gr7,gr8,cc7,1
170         test_icc        0 1 1 1 icc3
171         test_gr_immed   1,gr8
173         set_gr_limmed   0xdead,0xbeff,gr7       ; clear register
174         set_gr_immed    2,gr8
175         set_icc         0x0a,3          ; Set mask opposite of expected
176         csllcc          gr8,gr7,gr8,cc7,1
177         test_icc        1 0 1 0 icc3
178         test_gr_immed   2,gr8
180         pass