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