Thu Dec 3 14:20:03 1998 Dave Brolley <brolley@cygnus.com>
[deliverable/binutils-gdb.git] / sim / testsuite / sim / fr30 / ld.cgs
CommitLineData
3bf97905
DB
1# fr30 testcase for
2# mach(): fr30
3# ld $Rj,$Ri
4# ld @($R13,$Rj),$Ri
5# ld @($R14,$disp10),$Ri
6# ld @($R15,$udisp6),$Ri
7# ld @$R15+,$Ri
8
9 .include "testutils.inc"
10
11 START
12
13 .text
14 .global ld
15ld:
16 ; Test ld $Rj,$Ri
17 mvi_h_mem #0x00000000,sp
18 set_cc 0x0f ; condition codes should not change
19 ld @sp,r7
20 test_cc 1 1 1 1
21 test_h_gr 0,r7
22
23 mvi_h_mem #0x00000001,sp
24 set_cc 0x07 ; condition codes should not change
25 ld @sp,r7
26 test_cc 0 1 1 1
27 test_h_gr 1,r7
28
29 mvi_h_mem #0x7fffffff,sp
30 set_cc 0x0b ; condition codes should not change
31 ld @sp,r7
32 test_cc 1 0 1 1
33 test_h_gr 0x7fffffff,r7
34
35 mvi_h_mem #0x80000000,sp
36 set_cc 0x0d ; condition codes should not change
37 ld @sp,r7
38 test_cc 1 1 0 1
39 test_h_gr 0x80000000,r7
40
41 mvi_h_mem #0xffffffff,sp
42 set_cc 0x0e ; condition codes should not change
43 ld @sp,r7
44 test_cc 1 1 1 0
45 test_h_gr -1,r7
46
47 ; Test ld @($R13,$Rj),$Ri
48 mvr_h_gr sp,r13
49 inci_h_gr -8,r13
50 mvi_h_gr 8,r8
51
52 mvi_h_mem #0x00000000,sp
53 set_cc 0x0f ; condition codes should not change
54 ld @(r13,r8),r7
55 test_cc 1 1 1 1
56 test_h_gr 0,r7
57
58 mvi_h_mem #0x00000001,sp
59 set_cc 0x07 ; condition codes should not change
60 ld @(r13,r8),r7
61 test_cc 0 1 1 1
62 test_h_gr 1,r7
63
64 mvi_h_mem #0x7fffffff,sp
65 set_cc 0x0b ; condition codes should not change
66 ld @(r13,r8),r7
67 test_cc 1 0 1 1
68 test_h_gr 0x7fffffff,r7
69
70 mvi_h_mem #0x80000000,sp
71 set_cc 0x0d ; condition codes should not change
72 ld @(r13,r8),r7
73 test_cc 1 1 0 1
74 test_h_gr 0x80000000,r7
75
76 mvi_h_mem #0xffffffff,sp
77 set_cc 0x0e ; condition codes should not change
78 ld @(r13,r8),r7
79 test_cc 1 1 1 0
80 test_h_gr -1,r7
81
82 ; Test ld @($R14,$disp10),$Ri
83 mvi_h_mem #0xdeadbeef,sp
84 mvr_h_gr sp,r14
85 mvi_h_gr -0x1fc,r8
86 add_h_gr r8,r14
87
88 set_cc 0x0f ; condition codes should not change
89 ld @(r14,0x1fc),r7
90 test_cc 1 1 1 1
91 test_h_gr 0xdeadbeef,r7
92
93 inci_h_gr 0xfc,r14
94 set_cc 0x07 ; condition codes should not change
95 ld @(r14,0x100),r7
96 test_cc 0 1 1 1
97 test_h_gr 0xdeadbeef,r7
98
99 inci_h_gr 0x100,r14
100 set_cc 0x0b ; condition codes should not change
101 ld @(r14,0x0),r7
102 test_cc 1 0 1 1
103 test_h_gr 0xdeadbeef,r7
104
105 inci_h_gr 0x100,r14
106 set_cc 0x0d ; condition codes should not change
107 ld @(r14,-0x100),r7
108 test_cc 1 1 0 1
109 test_h_gr 0xdeadbeef,r7
110
111 inci_h_gr 0x100,r14
112 set_cc 0x0e ; condition codes should not change
113 ld @(r14,-0x200),r7
114 test_cc 1 1 1 0
115 test_h_gr 0xdeadbeef,r7
116
117 ; Test ld @($R15,$udisp6),$Ri
118 mvi_h_mem #0xdeadbeef,sp
119 mvr_h_gr sp,r14
120 mvi_h_gr -0x3c,r8
121 add_h_gr r8,r14
122
123 set_cc 0x0f ; condition codes should not change
124 ld @(r14,0x3c),r7
125 test_cc 1 1 1 1
126 test_h_gr 0xdeadbeef,r7
127
128 inci_h_gr 0x1c,r14
129 set_cc 0x07 ; condition codes should not change
130 ld @(r14,0x20),r7
131 test_cc 0 1 1 1
132 test_h_gr 0xdeadbeef,r7
133
134 inci_h_gr 0x20,r14
135 set_cc 0x0b ; condition codes should not change
136 ld @(r14,0x0),r7
137 test_cc 1 0 1 1
138 test_h_gr 0xdeadbeef,r7
139
140 ; Test ld @$R15+,$Ri
141 mvr_h_gr sp,r8 ; save original stack pointer
142 mvr_h_gr r8,r9
143 inci_h_gr 4,r9 ; original stack pointer + 4
144 mvi_h_mem #0xdeadbeef,sp ; prime memory
145
146 set_cc 0x0f ; condition codes should not change
147 ld @r15+,r7
148 test_cc 1 1 1 1
149 test_h_gr 0xdeadbeef,r7
150 testr_h_gr sp,r9 ; should have been incremented
151
152 mvr_h_gr r8,sp ; save original stack pointer
153 ld @r15+,sp
154 test_cc 1 1 1 1
155 test_h_gr 0xdeadbeef,sp
156 testr_h_gr sp,r8 ; should not have been incremented
157
158 pass
This page took 0.028715 seconds and 4 git commands to generate.