1# frv testcase for nlddi @($GRi,$d12),$GRk
2# mach: frv
3
4	.include "testutils.inc"
5
6	start
7
8	.global nlddi
9nlddi:
10	set_mem_limmed	0xdead,0xbeef,sp
11	inc_gr_immed	-4,sp
12	set_mem_limmed	0xbeef,0xdead,sp
13	set_gr_limmed	0xdead,0xbeef,gr8
14	set_gr_limmed	0xbeef,0xdead,gr9
15
16	set_gr_gr	sp,gr20
17	nlddi 		@(sp,0),gr8
18	test_gr_limmed	0xbeef,0xdead,gr8
19	test_gr_limmed	0xdead,0xbeef,gr9
20	test_spr_limmed	0x88a0,0x0001,nesr0
21	test_spr_gr	neear0,gr20
22	test_spr_limmed	0x0000,0x0000,gner1
23	test_spr_limmed	0x0000,0x0000,gner0
24
25	set_gr_limmed	0xdead,0xbeef,gr8
26	set_gr_limmed	0xbeef,0xdead,gr9
27	inc_gr_immed	-8,sp
28	nlddi 		@(sp,8),gr8
29	test_gr_limmed	0xbeef,0xdead,gr8
30	test_gr_limmed	0xdead,0xbeef,gr9
31	test_spr_limmed	0x88a0,0x0401,nesr1
32	test_spr_gr	neear1,gr20
33	test_spr_limmed	0x0000,0x0000,gner1
34	test_spr_limmed	0x0000,0x0000,gner0
35
36	set_gr_limmed	0xdead,0xbeef,gr8
37	set_gr_limmed	0xbeef,0xdead,gr9
38	inc_gr_immed	16,sp
39	nlddi 		@(sp,-8),gr8
40	test_gr_limmed	0xbeef,0xdead,gr8
41	test_gr_limmed	0xdead,0xbeef,gr9
42	test_spr_limmed	0x88a0,0x0801,nesr2
43	test_spr_gr	neear2,gr20
44	test_spr_limmed	0x0000,0x0000,gner1
45	test_spr_limmed	0x0000,0x0000,gner0
46
47	pass
48