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