New sim testsuite for Fujitsu FRV. Contributed by Red Hat.
[external/binutils.git] / sim / testsuite / sim / frv / cldu.cgs
1 # frv testcase for cldu @($GRi,$GRj),$GRk,$CCi,$cond
2 # mach: all
3
4         .include "testutils.inc"
5
6         start
7
8         .global cldu
9 cldu:
10         set_spr_immed   0x1b1b,cccr
11         set_gr_gr       sp,gr20
12
13         set_mem_limmed  0xdead,0xbeef,sp
14         set_gr_limmed   0xbeef,0xdead,gr8
15
16         set_gr_gr       sp,gr9
17         set_gr_immed    0,gr7
18         cldu            @(sp,gr7),gr8,cc0,1
19         test_gr_limmed  0xdead,0xbeef,gr8
20         test_gr_gr      sp,gr9
21
22         set_gr_limmed   0xbeef,0xdead,gr8
23         inc_gr_immed    -4,sp
24         set_gr_immed    4,gr7
25         cldu            @(sp,gr7),gr8,cc0,1
26         test_gr_limmed  0xdead,0xbeef,gr8
27         test_gr_gr      sp,gr9
28
29         set_gr_limmed   0xbeef,0xdead,gr8
30         inc_gr_immed    4,sp
31         set_gr_immed    -4,gr7
32         cldu            @(sp,gr7),gr8,cc4,1
33         test_gr_limmed  0xdead,0xbeef,gr8
34         test_gr_gr      sp,gr9
35
36         set_gr_gr       sp,gr20
37         set_mem_limmed  0xdead,0xbeef,sp
38         set_gr_limmed   0xbeef,0xdead,gr8
39
40         set_gr_gr       sp,gr9
41         set_gr_immed    0,gr7
42         cldu            @(sp,gr7),gr8,cc0,0
43         test_gr_limmed  0xbeef,0xdead,gr8
44         test_gr_gr      sp,gr9
45
46         set_gr_limmed   0xbeef,0xdead,gr8
47         inc_gr_immed    -4,gr9
48         inc_gr_immed    -4,sp
49         set_gr_immed    4,gr7
50         cldu            @(sp,gr7),gr8,cc0,0
51         test_gr_limmed  0xbeef,0xdead,gr8
52         test_gr_gr      sp,gr9
53
54         set_gr_limmed   0xbeef,0xdead,gr8
55         inc_gr_immed    8,gr9
56         inc_gr_immed    8,sp
57         set_gr_immed    -4,gr7
58         cldu            @(sp,gr7),gr8,cc4,0
59         test_gr_limmed  0xbeef,0xdead,gr8
60         test_gr_gr      sp,gr9
61
62         set_gr_gr       sp,gr20
63         set_mem_limmed  0xdead,0xbeef,sp
64         set_gr_limmed   0xbeef,0xdead,gr8
65
66         set_gr_gr       sp,gr9
67         set_gr_immed    0,gr7
68         cldu            @(sp,gr7),gr8,cc1,0
69         test_gr_limmed  0xdead,0xbeef,gr8
70         test_gr_gr      sp,gr9
71
72         set_gr_limmed   0xbeef,0xdead,gr8
73         inc_gr_immed    -4,sp
74         set_gr_immed    4,gr7
75         cldu            @(sp,gr7),gr8,cc1,0
76         test_gr_limmed  0xdead,0xbeef,gr8
77         test_gr_gr      sp,gr9
78
79         set_gr_limmed   0xbeef,0xdead,gr8
80         inc_gr_immed    4,sp
81         set_gr_immed    -4,gr7
82         cldu            @(sp,gr7),gr8,cc5,0
83         test_gr_limmed  0xdead,0xbeef,gr8
84         test_gr_gr      sp,gr9
85
86         set_gr_gr       sp,gr20
87         set_mem_limmed  0xdead,0xbeef,sp
88         set_gr_limmed   0xbeef,0xdead,gr8
89
90         set_gr_gr       sp,gr9
91         set_gr_immed    0,gr7
92         cldu            @(sp,gr7),gr8,cc1,1
93         test_gr_limmed  0xbeef,0xdead,gr8
94         test_gr_gr      sp,gr9
95
96         set_gr_limmed   0xbeef,0xdead,gr8
97         inc_gr_immed    -4,gr9
98         inc_gr_immed    -4,sp
99         set_gr_immed    4,gr7
100         cldu            @(sp,gr7),gr8,cc1,1
101         test_gr_limmed  0xbeef,0xdead,gr8
102         test_gr_gr      sp,gr9
103
104         set_gr_limmed   0xbeef,0xdead,gr8
105         inc_gr_immed    8,gr9
106         inc_gr_immed    8,sp
107         set_gr_immed    -4,gr7
108         cldu            @(sp,gr7),gr8,cc5,1
109         test_gr_limmed  0xbeef,0xdead,gr8
110         test_gr_gr      sp,gr9
111
112         set_gr_gr       sp,gr20
113         set_mem_limmed  0xdead,0xbeef,sp
114         set_gr_limmed   0xbeef,0xdead,gr8
115
116         set_gr_gr       sp,gr9
117         set_gr_immed    0,gr7
118         cldu            @(sp,gr7),gr8,cc2,0
119         test_gr_limmed  0xbeef,0xdead,gr8
120         test_gr_gr      sp,gr9
121
122         set_gr_limmed   0xbeef,0xdead,gr8
123         inc_gr_immed    -4,gr9
124         inc_gr_immed    -4,sp
125         set_gr_immed    4,gr7
126         cldu            @(sp,gr7),gr8,cc2,1
127         test_gr_limmed  0xbeef,0xdead,gr8
128         test_gr_gr      sp,gr9
129
130         set_gr_limmed   0xbeef,0xdead,gr8
131         inc_gr_immed    8,gr9
132         inc_gr_immed    8,sp
133         set_gr_immed    -4,gr7
134         cldu            @(sp,gr7),gr8,cc6,0
135         test_gr_limmed  0xbeef,0xdead,gr8
136         test_gr_gr      sp,gr9
137
138         set_gr_gr       sp,gr20
139         set_mem_limmed  0xdead,0xbeef,sp
140         set_gr_limmed   0xbeef,0xdead,gr8
141
142         set_gr_gr       sp,gr9
143         set_gr_immed    0,gr7
144         cldu            @(sp,gr7),gr8,cc3,1
145         test_gr_limmed  0xbeef,0xdead,gr8
146         test_gr_gr      sp,gr9
147
148         set_gr_limmed   0xbeef,0xdead,gr8
149         inc_gr_immed    -4,gr9
150         inc_gr_immed    -4,sp
151         set_gr_immed    4,gr7
152         cldu            @(sp,gr7),gr8,cc3,0
153         test_gr_limmed  0xbeef,0xdead,gr8
154         test_gr_gr      sp,gr9
155
156         set_gr_limmed   0xbeef,0xdead,gr8
157         inc_gr_immed    8,gr9
158         inc_gr_immed    8,sp
159         set_gr_immed    -4,gr7
160         cldu            @(sp,gr7),gr8,cc7,1
161         test_gr_limmed  0xbeef,0xdead,gr8
162         test_gr_gr      sp,gr9
163
164         set_gr_gr       gr20,sp
165         set_mem_limmed  0xdead,0xbeef,sp
166         set_gr_gr       sp,gr8
167         inc_gr_immed    -4,gr8
168         set_gr_immed    4,gr7
169         cldu            @(gr8,gr7),gr8,cc0,1
170         test_gr_limmed  0xdead,0xbeef,gr8
171
172         pass