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