OSDN Git Service

2004-02-29 Andrew Cagney <cagney@redhat.com>
[pf3gnuchains/pf3gnuchains4x.git] / sim / testsuite / sim / frv / rstd.cgs
1 # frv testcase for rstd $GRk,@($GRi,$GRj)
2 # mach: frv
3 # as(frv): -mcpu=frv
4
5         .include "testutils.inc"
6
7         start
8
9         .global add
10 add:
11         ; No nesr's active
12         set_gr_gr       sp,gr20
13         set_mem_limmed  0x2222,0x2222,gr20
14         set_gr_gr       gr20,gr27
15         inc_gr_immed    -4,gr27
16         set_mem_limmed  0x3333,0x3333,gr27
17         set_gr_gr       gr27,gr26
18         inc_gr_immed    -4,gr26
19         set_mem_limmed  0x4444,0x4444,gr26
20         set_gr_gr       gr26,gr25
21         inc_gr_immed    -4,gr25
22         set_mem_limmed  0x5555,0x5555,gr25
23         set_gr_gr       gr25,gr24
24         inc_gr_immed    -4,gr24
25         set_mem_limmed  0x6666,0x6666,gr24
26         set_gr_gr       gr24,gr23
27         inc_gr_immed    -4,gr23
28         set_mem_limmed  0x7777,0x7777,gr23
29         set_gr_gr       gr23,gr22
30         inc_gr_immed    -4,gr22
31         set_mem_limmed  0x8888,0x8888,gr22
32         set_gr_gr       gr22,gr21
33         inc_gr_immed    -4,gr21
34         set_mem_limmed  0x9999,0x9999,gr21
35         set_gr_limmed   0x1111,0x1111,gr40
36         set_gr_limmed   0x1111,0x1111,gr41
37         inc_gr_immed    -4,sp
38         set_gr_immed    0,gr7
39         set_gr_limmed   0xeeee,0xeeee,gr8
40         set_gr_limmed   0xffff,0xffff,gr9
41         rstd            gr8,@(sp,gr7)
42         test_mem_limmed 0xffff,0xffff,gr20
43         test_mem_limmed 0xeeee,0xeeee,gr27
44         test_mem_limmed 0x4444,0x4444,gr26
45         test_mem_limmed 0x5555,0x5555,gr25
46         test_mem_limmed 0x6666,0x6666,gr24
47         test_mem_limmed 0x7777,0x7777,gr23
48         test_mem_limmed 0x8888,0x8888,gr22
49         test_mem_limmed 0x9999,0x9999,gr21
50         test_gr_limmed  0x1111,0x1111,gr40
51         test_gr_limmed  0x1111,0x1111,gr41
52
53         ; 1 nesr active with the incorrect address in neear for gr
54         set_gr_gr       sp,gr10
55         nlddi           @(sp,0),gr40
56         test_spr_gr     neear0,gr10
57         set_mem_limmed  0x2222,0x2222,gr20
58         set_mem_limmed  0x3333,0x3333,gr27
59         set_mem_limmed  0x4444,0x4444,gr26
60         set_mem_limmed  0x5555,0x5555,gr25
61         set_mem_limmed  0x6666,0x6666,gr24
62         set_mem_limmed  0x7777,0x7777,gr23
63         set_mem_limmed  0x8888,0x8888,gr22
64         set_mem_limmed  0x9999,0x9999,gr21
65         set_gr_limmed   0xeeee,0xeeee,gr8
66         set_gr_limmed   0xffff,0xffff,gr9
67         set_gr_limmed   0x1111,0x1111,gr40
68         set_gr_limmed   0x1111,0x1111,gr41
69         set_gr_immed    -8,gr7
70         rstd            gr8,@(sp,gr7)
71         test_mem_limmed 0x2222,0x2222,gr20
72         test_mem_limmed 0x3333,0x3333,gr27
73         test_mem_limmed 0xffff,0xffff,gr26
74         test_mem_limmed 0xeeee,0xeeee,gr25
75         test_mem_limmed 0x6666,0x6666,gr24
76         test_mem_limmed 0x7777,0x7777,gr23
77         test_mem_limmed 0x8888,0x8888,gr22
78         test_mem_limmed 0x9999,0x9999,gr21
79         test_gr_limmed  0x1111,0x1111,gr40
80         test_gr_limmed  0x1111,0x1111,gr41
81
82         ; 1 nesr active with the incorrect address in neear for fr
83         inc_gr_immed    -8,gr10
84         nlddfi          @(sp,-8),fr40
85         test_spr_gr     neear1,gr10
86         set_mem_limmed  0x2222,0x2222,gr20
87         set_mem_limmed  0x3333,0x3333,gr27
88         set_mem_limmed  0x4444,0x4444,gr26
89         set_mem_limmed  0x5555,0x5555,gr25
90         set_mem_limmed  0x6666,0x6666,gr24
91         set_mem_limmed  0x7777,0x7777,gr23
92         set_mem_limmed  0x8888,0x8888,gr22
93         set_mem_limmed  0x9999,0x9999,gr21
94         set_gr_limmed   0xeeee,0xeeee,gr8
95         set_gr_limmed   0xffff,0xffff,gr9
96         set_fr_iimmed   0x1111,0x1111,fr40
97         set_fr_iimmed   0x1111,0x1111,fr41
98         inc_gr_immed    -8,sp
99         set_gr_immed    8,gr7
100         rstd            gr8,@(sp,gr7)
101         test_mem_limmed 0xffff,0xffff,gr20
102         test_mem_limmed 0xeeee,0xeeee,gr27
103         test_mem_limmed 0x4444,0x4444,gr26
104         test_mem_limmed 0x5555,0x5555,gr25
105         test_mem_limmed 0x6666,0x6666,gr24
106         test_mem_limmed 0x7777,0x7777,gr23
107         test_mem_limmed 0x8888,0x8888,gr22
108         test_mem_limmed 0x9999,0x9999,gr21
109         test_fr_limmed  0x1111,0x1111,fr40
110         test_fr_limmed  0x1111,0x1111,fr41
111
112         ; 1 nesr active with the correct address in neear for gr
113         inc_gr_immed    -8,gr10
114         nlddi           @(sp,-8),gr40
115         test_spr_gr     neear2,gr10
116         set_mem_limmed  0x2222,0x2222,gr20
117         set_mem_limmed  0x3333,0x3333,gr27
118         set_mem_limmed  0x4444,0x4444,gr26
119         set_mem_limmed  0x5555,0x5555,gr25
120         set_mem_limmed  0x6666,0x6666,gr24
121         set_mem_limmed  0x7777,0x7777,gr23
122         set_mem_limmed  0x8888,0x8888,gr22
123         set_mem_limmed  0x9999,0x9999,gr21
124         set_gr_limmed   0xeeee,0xeeee,gr8
125         set_gr_limmed   0xffff,0xffff,gr9
126         set_gr_limmed   0x1111,0x1111,gr40
127         set_gr_limmed   0x1111,0x1111,gr41
128         inc_gr_immed    -8,sp
129         set_gr_immed    0,gr7
130         rstd            gr8,@(sp,gr7)
131         test_mem_limmed 0x2222,0x2222,gr20
132         test_mem_limmed 0x3333,0x3333,gr27
133         test_mem_limmed 0x4444,0x4444,gr26
134         test_mem_limmed 0x5555,0x5555,gr25
135         test_mem_limmed 0xffff,0xffff,gr24
136         test_mem_limmed 0xeeee,0xeeee,gr23
137         test_mem_limmed 0x8888,0x8888,gr22
138         test_mem_limmed 0x9999,0x9999,gr21
139         test_gr_limmed  0xffff,0xffff,gr41
140         test_gr_limmed  0xeeee,0xeeee,gr40
141
142         ; 1 nesr active with the correct address in neear for fr
143         inc_gr_immed    -8,gr10
144         nlddfi          @(sp,-8),fr40
145         test_spr_gr     neear3,gr10
146         set_mem_limmed  0x2222,0x2222,gr20
147         set_mem_limmed  0x3333,0x3333,gr27
148         set_mem_limmed  0x4444,0x4444,gr26
149         set_mem_limmed  0x5555,0x5555,gr25
150         set_mem_limmed  0x6666,0x6666,gr24
151         set_mem_limmed  0x7777,0x7777,gr23
152         set_mem_limmed  0x8888,0x8888,gr22
153         set_mem_limmed  0x9999,0x9999,gr21
154         set_gr_limmed   0xeeee,0xeeee,gr8
155         set_gr_limmed   0xffff,0xffff,gr9
156         set_fr_iimmed   0x1111,0x1111,fr40
157         set_fr_iimmed   0x1111,0x1111,fr41
158         set_gr_immed    -8,gr7
159         rstd            gr8,@(sp,gr7)
160         test_mem_limmed 0x2222,0x2222,gr20
161         test_mem_limmed 0x3333,0x3333,gr27
162         test_mem_limmed 0x4444,0x4444,gr26
163         test_mem_limmed 0x5555,0x5555,gr25
164         test_mem_limmed 0x6666,0x6666,gr24
165         test_mem_limmed 0x7777,0x7777,gr23
166         test_mem_limmed 0xffff,0xffff,gr22
167         test_mem_limmed 0xeeee,0xeeee,gr21
168         test_fr_limmed  0xffff,0xffff,fr41
169         test_fr_limmed  0xeeee,0xeeee,fr40
170
171         pass