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