5 # ld @($R14,$disp10),$Ri
6 # ld @($R15,$udisp6),$Ri
10 .include "testutils.inc"
18 mvi_h_mem #0x00000000,sp
19 set_cc 0x0f ; condition codes should not change
24 mvi_h_mem #0x00000001,sp
25 set_cc 0x07 ; condition codes should not change
30 mvi_h_mem #0x7fffffff,sp
31 set_cc 0x0b ; condition codes should not change
34 test_h_gr 0x7fffffff,r7
36 mvi_h_mem #0x80000000,sp
37 set_cc 0x0d ; condition codes should not change
40 test_h_gr 0x80000000,r7
42 mvi_h_mem #0xffffffff,sp
43 set_cc 0x0e ; condition codes should not change
48 ; Test ld @($R13,$Rj),$Ri
53 mvi_h_mem #0x00000000,sp
54 set_cc 0x0f ; condition codes should not change
59 mvi_h_mem #0x00000001,sp
60 set_cc 0x07 ; condition codes should not change
65 mvi_h_mem #0x7fffffff,sp
66 set_cc 0x0b ; condition codes should not change
69 test_h_gr 0x7fffffff,r7
71 mvi_h_mem #0x80000000,sp
72 set_cc 0x0d ; condition codes should not change
75 test_h_gr 0x80000000,r7
77 mvi_h_mem #0xffffffff,sp
78 set_cc 0x0e ; condition codes should not change
83 ; Test ld @($R14,$disp10),$Ri
84 mvi_h_mem #0xdeadbeef,sp
89 set_cc 0x0f ; condition codes should not change
92 test_h_gr 0xdeadbeef,r7
95 set_cc 0x07 ; condition codes should not change
98 test_h_gr 0xdeadbeef,r7
101 set_cc 0x0b ; condition codes should not change
104 test_h_gr 0xdeadbeef,r7
107 set_cc 0x0d ; condition codes should not change
110 test_h_gr 0xdeadbeef,r7
113 set_cc 0x0e ; condition codes should not change
116 test_h_gr 0xdeadbeef,r7
118 ; Test ld @($R15,$udisp6),$Ri
119 mvi_h_mem #0xdeadbeef,sp
124 set_cc 0x0f ; condition codes should not change
127 test_h_gr 0xdeadbeef,r7
130 set_cc 0x07 ; condition codes should not change
133 test_h_gr 0xdeadbeef,r7
136 set_cc 0x0b ; condition codes should not change
139 test_h_gr 0xdeadbeef,r7
142 mvr_h_gr sp,r8 ; save original stack pointer
144 inci_h_gr 4,r9 ; original stack pointer + 4
145 mvi_h_mem #0xdeadbeef,sp ; prime memory
147 mvr_h_gr r8,sp ; restore original stack pointer
148 set_cc 0x0f ; condition codes should not change
151 test_h_gr 0xdeadbeef,r7
152 testr_h_gr sp,r9 ; should have been incremented
154 mvr_h_gr r8,sp ; restore original stack pointer
155 set_cc 0x0f ; condition codes should not change
158 test_h_gr 0xdeadbeef,sp ; should not have been incremented
161 mvr_h_gr r8,sp ; restore original stack pointer
162 set_cc 0x0f ; condition codes should not change
165 test_h_dr 0xdeadbeef,tbr
166 testr_h_gr sp,r9 ; should have been incremented
168 mvr_h_gr r8,sp ; restore original stack pointer
169 set_cc 0x0f ; condition codes should not change
172 test_h_dr 0xdeadbeef,rp
173 testr_h_gr sp,r9 ; should have been incremented
175 mvr_h_gr r8,sp ; restore original stack pointer
176 set_cc 0x0f ; condition codes should not change
179 test_h_dr 0xdeadbeef,mdh
180 testr_h_gr sp,r9 ; should have been incremented
182 mvr_h_gr r8,sp ; restore original stack pointer
183 set_cc 0x0f ; condition codes should not change
186 test_h_dr 0xdeadbeef,mdl
187 testr_h_gr sp,r9 ; should have been incremented
190 mvr_h_gr r8,sp ; restore original stack pointer
191 set_cc 0x0f ; condition codes should not change
194 test_h_dr 0xdeadbeef,ssp
195 testr_h_gr sp,r9 ; should have been incremented
197 mvr_h_gr r8,sp ; restore original stack pointer
198 set_cc 0x0f ; condition codes should not change
201 test_h_dr 0xdeadbeef,usp
202 test_h_gr 0xdeadbeef,sp ; should not have been incremented
205 mvr_h_gr r8,sp ; restore original stack pointer
206 set_cc 0x0f ; condition codes should not change
209 test_h_dr 0xdeadbeef,usp
210 testr_h_gr sp,r9 ; should have been incremented
212 mvr_h_gr r8,sp ; restore original stack pointer
213 set_cc 0x0f ; condition codes should not change
216 test_h_dr 0xdeadbeef,ssp
217 test_h_gr 0xdeadbeef,sp ; should not have been incremented