xref: /netbsd-src/external/gpl3/gdb/dist/sim/testsuite/sh/and.s (revision 4b169a6ba595ae283ca507b26b15fdff40495b1c)
1# sh testcase for and
2# mach:	 all
3# as(sh):	-defsym sim_cpu=0
4# as(shdsp):	-defsym sim_cpu=1 -dsp
5
6	.include "testutils.inc"
7
8	.align 2
9_x:	.long	0xa5a5a5a5
10_y:	.long	0x55555555
11
12	start
13
14and_reg_reg_direct:
15	set_grs_a5a5
16	mov.l	i, r1
17	mov.l	j, r2
18	and	r1, r2
19	test_gr0_a5a5
20	assertreg 0xa5a5a5a5 r1
21	assertreg 0xa0a0a0a0 r2
22	test_gr_a5a5 r3
23	test_gr_a5a5 r4
24	test_gr_a5a5 r5
25	test_gr_a5a5 r6
26	test_gr_a5a5 r7
27	test_gr_a5a5 r8
28	test_gr_a5a5 r9
29	test_gr_a5a5 r10
30	test_gr_a5a5 r11
31	test_gr_a5a5 r12
32	test_gr_a5a5 r13
33	test_gr_a5a5 r14
34	bra	and_imm_reg
35	nop
36
37	.align	2
38i:	.long	0xa5a5a5a5
39j:	.long	0xaaaaaaaa
40
41and_imm_reg:
42	set_grs_a5a5
43	and	#0xff, r0
44	assertreg    0xa5, r0
45	test_gr_a5a5 r1
46	test_gr_a5a5 r2
47	test_gr_a5a5 r3
48	test_gr_a5a5 r4
49	test_gr_a5a5 r5
50	test_gr_a5a5 r6
51	test_gr_a5a5 r7
52	test_gr_a5a5 r8
53	test_gr_a5a5 r9
54	test_gr_a5a5 r10
55	test_gr_a5a5 r11
56	test_gr_a5a5 r12
57	test_gr_a5a5 r13
58	test_gr_a5a5 r14
59
60and_b_imm_ind:
61	set_grs_a5a5
62	mov.l	x, r0
63	and.b	#0x55, @(r0, GBR)
64	mov.l	@r0, r0
65
66	assertreg 0xa5a5a505, r0
67	test_gr_a5a5 r1
68	test_gr_a5a5 r2
69	test_gr_a5a5 r3
70	test_gr_a5a5 r4
71	test_gr_a5a5 r5
72	test_gr_a5a5 r6
73	test_gr_a5a5 r7
74	test_gr_a5a5 r8
75	test_gr_a5a5 r9
76	test_gr_a5a5 r10
77	test_gr_a5a5 r11
78	test_gr_a5a5 r12
79	test_gr_a5a5 r13
80	test_gr_a5a5 r14
81
82	pass
83
84	exit 0
85
86	.align 2
87x:	.long	_x
88y:	.long	_y
89
90