Automatic Copyright Year update after running gdb/copyright.py
[deliverable/binutils-gdb.git] / gdb / testsuite / gdb.disasm / t07_ari3.exp
CommitLineData
88b9d363 1# Copyright (C) 2003-2022 Free Software Foundation, Inc.
57ba3b85
MS
2
3# This program is free software; you can redistribute it and/or modify
4# it under the terms of the GNU General Public License as published by
e22f8b7c 5# the Free Software Foundation; either version 3 of the License, or
57ba3b85 6# (at your option) any later version.
e22f8b7c 7#
57ba3b85
MS
8# This program is distributed in the hope that it will be useful,
9# but WITHOUT ANY WARRANTY; without even the implied warranty of
10# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11# GNU General Public License for more details.
e22f8b7c 12#
57ba3b85 13# You should have received a copy of the GNU General Public License
e22f8b7c 14# along with this program. If not, see <http://www.gnu.org/licenses/>.
57ba3b85 15
57ba3b85
MS
16# This file was written by Michael Snyder (msnyder@redhat.com)
17
57ba3b85
MS
18if ![istarget "h8300*-*-*"] {
19 verbose "Tests ignored for all but h8300s based targets."
20 return
21}
22
57ba3b85
MS
23
24set testfile "t07_ari3"
25set srcfile ${srcdir}/${subdir}/${testfile}.s
26set objfile ${objdir}/${subdir}/${testfile}.o
27set binfile ${objdir}/${subdir}/${testfile}.x
28
4ec70201
PA
29set asm-flags ""
30set link-flags "-m h8300sxelf"
57ba3b85
MS
31
32
33if {[target_assemble $srcfile $objfile "${asm-flags}"] != ""} then {
5b362f04 34 untested "failed to assemble"
b60f0898 35 return -1
57ba3b85
MS
36}
37
38if {[target_link $objfile $binfile "${link-flags}"] != ""} then {
5b362f04 39 untested "failed to link"
b60f0898 40 return -1
57ba3b85
MS
41}
42
43gdb_start
44gdb_reinitialize_dir $srcdir/$subdir
45gdb_load $binfile
46
df0f4836 47gdb_test "x /i start" "neg.b\tr1h" \
57ba3b85
MS
48 "neg.b r1h"
49gdb_test "x" "neg.b\t@er1" \
50 "neg.b @er1"
51gdb_test "x" "neg.b\t@\\(0x3(:2|),er1\\)" \
52 "neg.b @(0x3:2,er1)"
53gdb_test "x" "neg.b\t@er1\\+" \
54 "neg.b @er1+"
55gdb_test "x" "neg.b\t@-er1" \
56 "neg.b @-er1"
57gdb_test "x" "neg.b\t@\\+er1" \
58 "neg.b @+er1"
59gdb_test "x" "neg.b\t@er1-" \
60 "neg.b @er1-"
61gdb_test "x" "neg.b\t@\\(0x1234(:16|),er1\\)" \
62 "neg.b @(0x1234:16,er1)"
63gdb_test "x" "neg.b\t@\\(0x12345678(:32|),er1\\)" \
64 "neg.b @(0x12345678:32,er1)"
65gdb_test "x" "neg.b\t@\\(0x1234(:16|),r2l.b\\)" \
66 "neg.b @(0x1234:16,r2l.b)"
67gdb_test "x" "neg.b\t@\\(0x1234(:16|),r2.w\\)" \
68 "neg.b @(0x1234:16,r2.w)"
69gdb_test "x" "neg.b\t@\\(0x1234(:16|),er2.l\\)" \
70 "neg.b @(0x1234:16,er2.l)"
71gdb_test "x" "neg.b\t@\\(0x12345678(:32|),r2l.b\\)" \
72 "neg.b @(0x12345678:32,r2l.b)"
73gdb_test "x" "neg.b\t@\\(0x12345678(:32|),r2.w\\)" \
74 "neg.b @(0x12345678:32,r2.w)"
75gdb_test "x" "neg.b\t@\\(0x12345678(:32|),er2.l\\)" \
76 "neg.b @(0x12345678:32,er2.l)"
77gdb_test "x" "neg.b\t@0x12(:8|)" \
78 "neg.b @0x12:8"
79gdb_test "x" "neg.b\t@0x1234(:16|)" \
80 "neg.b @0x1234:16"
81gdb_test "x" "neg.b\t@0x12345678(:32|)" \
82 "neg.b @0x12345678:32"
83gdb_test "x" "neg.w\tr1" \
84 "neg.w r1"
85gdb_test "x" "neg.w\t@er1" \
86 "neg.w @er1"
87gdb_test "x" "neg.w\t@\\(0x6(:2|),er1\\)" \
88 "neg.w @(0x6:2,er1)"
89gdb_test "x" "neg.w\t@er1\\+" \
90 "neg.w @er1+"
91gdb_test "x" "neg.w\t@-er1" \
92 "neg.w @-er1"
93gdb_test "x" "neg.w\t@\\+er1" \
94 "neg.w @+er1"
95gdb_test "x" "neg.w\t@er1-" \
96 "neg.w @er1-"
97gdb_test "x" "neg.w\t@\\(0x1234(:16|),er1\\)" \
98 "neg.w @(0x1234:16,er1)"
99gdb_test "x" "neg.w\t@\\(0x12345678(:32|),er1\\)" \
100 "neg.w @(0x12345678:32,er1)"
101gdb_test "x" "neg.w\t@\\(0x1234(:16|),r2l.b\\)" \
102 "neg.w @(0x1234:16,r2l.b)"
103gdb_test "x" "neg.w\t@\\(0x1234(:16|),r2.w\\)" \
104 "neg.w @(0x1234:16,r2.w)"
105gdb_test "x" "neg.w\t@\\(0x1234(:16|),er2.l\\)" \
106 "neg.w @(0x1234:16,er2.l)"
107gdb_test "x" "neg.w\t@\\(0x12345678(:32|),r2l.b\\)" \
108 "neg.w @(0x12345678:32,r2l.b)"
109gdb_test "x" "neg.w\t@\\(0x12345678(:32|),r2.w\\)" \
110 "neg.w @(0x12345678:32,r2.w)"
111gdb_test "x" "neg.w\t@\\(0x12345678(:32|),er2.l\\)" \
112 "neg.w @(0x12345678:32,er2.l)"
113gdb_test "x" "neg.w\t@0x1234(:16|)" \
114 "neg.w @0x1234:16"
115gdb_test "x" "neg.w\t@0x12345678(:32|)" \
116 "neg.w @0x12345678:32"
117gdb_test "x" "neg.l\ter1" \
118 "neg.l er1"
119gdb_test "x" "neg.l\t@er1" \
120 "neg.l @er1"
121gdb_test "x" "neg.l\t@\\(0xc(:2|),er1\\)" \
122 "neg.l @(0xc:2,er1)"
123gdb_test "x" "neg.l\t@er1\\+" \
124 "neg.l @er1+"
125gdb_test "x" "neg.l\t@-er1" \
126 "neg.l @-er1"
127gdb_test "x" "neg.l\t@\\+er1" \
128 "neg.l @+er1"
129gdb_test "x" "neg.l\t@er1-" \
130 "neg.l @er1-"
131gdb_test "x" "neg.l\t@\\(0x1234(:16|),er1\\)" \
132 "neg.l @(0x1234:16,er1)"
133gdb_test "x" "neg.l\t@\\(0x12345678(:32|),er1\\)" \
134 "neg.l @(0x12345678:32,er1)"
135gdb_test "x" "neg.l\t@\\(0x1234(:16|),r2l.b\\)" \
136 "neg.l @(0x1234:16,r2l.b)"
137gdb_test "x" "neg.l\t@\\(0x1234(:16|),r2.w\\)" \
138 "neg.l @(0x1234:16,r2.w)"
139gdb_test "x" "neg.l\t@\\(0x1234(:16|),er2.l\\)" \
140 "neg.l @(0x1234:16,er2.l)"
141gdb_test "x" "neg.l\t@\\(0x12345678(:32|),r2l.b\\)" \
142 "neg.l @(0x12345678:32,r2l.b)"
143gdb_test "x" "neg.l\t@\\(0x12345678(:32|),r2.w\\)" \
144 "neg.l @(0x12345678:32,r2.w)"
145gdb_test "x" "neg.l\t@\\(0x12345678(:32|),er2.l\\)" \
146 "neg.l @(0x12345678:32,er2.l)"
147gdb_test "x" "neg.l\t@0x1234(:16|)" \
148 "neg.l @0x1234:16"
149gdb_test "x" "neg.l\t@0x12345678(:32|)" \
150 "neg.l @0x12345678:32"
151gdb_test "x" "tas\t@er1" \
152 "tas @er1"
153gdb_test "x" "extu.w\tr1" \
154 "extu.w r1"
155gdb_test "x" "extu.w\t@er1" \
156 "extu.w @er1"
157gdb_test "x" "extu.w\t@\\(0x6(:2|),er1\\)" \
158 "extu.w @(0x6:2,er1)"
159gdb_test "x" "extu.w\t@er1\\+" \
160 "extu.w @er1+"
161gdb_test "x" "extu.w\t@-er1" \
162 "extu.w @-er1"
163gdb_test "x" "extu.w\t@\\+er1" \
164 "extu.w @+er1"
165gdb_test "x" "extu.w\t@er1-" \
166 "extu.w @er1-"
167gdb_test "x" "extu.w\t@\\(0x1234(:16|),er1\\)" \
168 "extu.w @(0x1234:16,er1)"
169gdb_test "x" "extu.w\t@\\(0x12345678(:32|),er1\\)" \
170 "extu.w @(0x12345678:32,er1)"
171gdb_test "x" "extu.w\t@\\(0x1234(:16|),r2l.b\\)" \
172 "extu.w @(0x1234:16,r2l.b)"
173gdb_test "x" "extu.w\t@\\(0x1234(:16|),r2.w\\)" \
174 "extu.w @(0x1234:16,r2.w)"
175gdb_test "x" "extu.w\t@\\(0x1234(:16|),er2.l\\)" \
176 "extu.w @(0x1234:16,er2.l)"
177gdb_test "x" "extu.w\t@\\(0x12345678(:32|),r2l.b\\)" \
178 "extu.w @(0x12345678:32,r2l.b)"
179gdb_test "x" "extu.w\t@\\(0x12345678(:32|),r2.w\\)" \
180 "extu.w @(0x12345678:32,r2.w)"
181gdb_test "x" "extu.w\t@\\(0x12345678(:32|),er2.l\\)" \
182 "extu.w @(0x12345678:32,er2.l)"
183gdb_test "x" "extu.w\t@0x1234(:16|)" \
184 "extu.w @0x1234:16"
185gdb_test "x" "extu.w\t@0x12345678(:32|)" \
186 "extu.w @0x12345678:32"
187gdb_test "x" "extu.l\ter1" \
188 "extu.l er1"
189gdb_test "x" "extu.l\t@er1" \
190 "extu.l @er1"
191gdb_test "x" "extu.l\t@\\(0xc(:2|),er1\\)" \
192 "extu.l @(0xc:2,er1)"
193gdb_test "x" "extu.l\t@er1\\+" \
194 "extu.l @er1+"
195gdb_test "x" "extu.l\t@-er1" \
196 "extu.l @-er1"
197gdb_test "x" "extu.l\t@\\+er1" \
198 "extu.l @+er1"
199gdb_test "x" "extu.l\t@er1-" \
200 "extu.l @er1-"
201gdb_test "x" "extu.l\t@\\(0x1234(:16|),er1\\)" \
202 "extu.l @(0x1234:16,er1)"
203gdb_test "x" "extu.l\t@\\(0x12345678(:32|),er1\\)" \
204 "extu.l @(0x12345678:32,er1)"
205gdb_test "x" "extu.l\t@\\(0x1234(:16|),r2l.b\\)" \
206 "extu.l @(0x1234:16,r2l.b)"
207gdb_test "x" "extu.l\t@\\(0x1234(:16|),r2.w\\)" \
208 "extu.l @(0x1234:16,r2.w)"
209gdb_test "x" "extu.l\t@\\(0x1234(:16|),er2.l\\)" \
210 "extu.l @(0x1234:16,er2.l)"
211gdb_test "x" "extu.l\t@\\(0x12345678(:32|),r2l.b\\)" \
212 "extu.l @(0x12345678:32,r2l.b)"
213gdb_test "x" "extu.l\t@\\(0x12345678(:32|),r2.w\\)" \
214 "extu.l @(0x12345678:32,r2.w)"
215gdb_test "x" "extu.l\t@\\(0x12345678(:32|),er2.l\\)" \
216 "extu.l @(0x12345678:32,er2.l)"
217gdb_test "x" "extu.l\t@0x1234(:16|)" \
218 "extu.l @0x1234:16"
219gdb_test "x" "extu.l\t@0x12345678(:32|)" \
220 "extu.l @0x12345678:32"
221gdb_test "x" "extu.l\t#2,er1" \
222 "extu.l #2,er1"
223gdb_test "x" "extu.l\t#2,@er1" \
224 "extu.l #2,@er1"
225gdb_test "x" "extu.l\t#2,@\\(0xc(:2|),er1\\)" \
226 "extu.l #2,@(0xc:2,er1)"
227gdb_test "x" "extu.l\t#2,@er1\\+" \
228 "extu.l #2,@er1+"
229gdb_test "x" "extu.l\t#2,@-er1" \
230 "extu.l #2,@-er1"
231gdb_test "x" "extu.l\t#2,@\\+er1" \
232 "extu.l #2,@+er1"
233gdb_test "x" "extu.l\t#2,@er1-" \
234 "extu.l #2,@er1-"
235gdb_test "x" "extu.l\t#2,@\\(0x1234(:16|),er1\\)" \
236 "extu.l #2,@(0x1234:16,er1)"
237gdb_test "x" "extu.l\t#2,@\\(0x12345678(:32|),er1\\)" \
238 "extu.l #2,@(0x12345678:32,er1)"
239gdb_test "x" "extu.l\t#2,@\\(0x1234(:16|),r2l.b\\)" \
240 "extu.l #2,@(0x1234:16,r2l.b)"
241gdb_test "x" "extu.l\t#2,@\\(0x1234(:16|),r2.w\\)" \
242 "extu.l #2,@(0x1234:16,r2.w)"
243gdb_test "x" "extu.l\t#2,@\\(0x1234(:16|),er2.l\\)" \
244 "extu.l #2,@(0x1234:16,er2.l)"
245gdb_test "x" "extu.l\t#2,@\\(0x12345678(:32|),r2l.b\\)" \
246 "extu.l #2,@(0x12345678:32,r2l.b)"
247gdb_test "x" "extu.l\t#2,@\\(0x12345678(:32|),r2.w\\)" \
248 "extu.l #2,@(0x12345678:32,r2.w)"
249gdb_test "x" "extu.l\t#2,@\\(0x12345678(:32|),er2.l\\)" \
250 "extu.l #2,@(0x12345678:32,er2.l)"
251gdb_test "x" "extu.l\t#2,@0x1234(:16|)" \
252 "extu.l #2,@0x1234:16"
253gdb_test "x" "extu.l\t#2,@0x12345678(:32|)" \
254 "extu.l #2,@0x12345678:32"
255gdb_test "x" "exts.w\tr1" \
256 "exts.w r1"
257gdb_test "x" "exts.w\t@er1" \
258 "exts.w @er1"
259gdb_test "x" "exts.w\t@\\(0x6(:2|),er1\\)" \
260 "exts.w @(0x6:2,er1)"
261gdb_test "x" "exts.w\t@er1\\+" \
262 "exts.w @er1+"
263gdb_test "x" "exts.w\t@-er1" \
264 "exts.w @-er1"
265gdb_test "x" "exts.w\t@\\+er1" \
266 "exts.w @+er1"
267gdb_test "x" "exts.w\t@er1-" \
268 "exts.w @er1-"
269gdb_test "x" "exts.w\t@\\(0x1234(:16|),er1\\)" \
270 "exts.w @(0x1234:16,er1)"
271gdb_test "x" "exts.w\t@\\(0x12345678(:32|),er1\\)" \
272 "exts.w @(0x12345678:32,er1)"
273gdb_test "x" "exts.w\t@\\(0x1234(:16|),r2l.b\\)" \
274 "exts.w @(0x1234:16,r2l.b)"
275gdb_test "x" "exts.w\t@\\(0x1234(:16|),r2.w\\)" \
276 "exts.w @(0x1234:16,r2.w)"
277gdb_test "x" "exts.w\t@\\(0x1234(:16|),er2.l\\)" \
278 "exts.w @(0x1234:16,er2.l)"
279gdb_test "x" "exts.w\t@\\(0x12345678(:32|),r2l.b\\)" \
280 "exts.w @(0x12345678:32,r2l.b)"
281gdb_test "x" "exts.w\t@\\(0x12345678(:32|),r2.w\\)" \
282 "exts.w @(0x12345678:32,r2.w)"
283gdb_test "x" "exts.w\t@\\(0x12345678(:32|),er2.l\\)" \
284 "exts.w @(0x12345678:32,er2.l)"
285gdb_test "x" "exts.w\t@0x1234(:16|)" \
286 "exts.w @0x1234:16"
287gdb_test "x" "exts.w\t@0x12345678(:32|)" \
288 "exts.w @0x12345678:32"
289gdb_test "x" "exts.l\ter1" \
290 "exts.l er1"
291gdb_test "x" "exts.l\t@er1" \
292 "exts.l @er1"
293gdb_test "x" "exts.l\t@\\(0xc(:2|),er1\\)" \
294 "exts.l @(0xc:2,er1)"
295gdb_test "x" "exts.l\t@er1\\+" \
296 "exts.l @er1+"
297gdb_test "x" "exts.l\t@-er1" \
298 "exts.l @-er1"
299gdb_test "x" "exts.l\t@\\+er1" \
300 "exts.l @+er1"
301gdb_test "x" "exts.l\t@er1-" \
302 "exts.l @er1-"
303gdb_test "x" "exts.l\t@\\(0x1234(:16|),er1\\)" \
304 "exts.l @(0x1234:16,er1)"
305gdb_test "x" "exts.l\t@\\(0x12345678(:32|),er1\\)" \
306 "exts.l @(0x12345678:32,er1)"
307gdb_test "x" "exts.l\t@\\(0x1234(:16|),r2l.b\\)" \
308 "exts.l @(0x1234:16,r2l.b)"
309gdb_test "x" "exts.l\t@\\(0x1234(:16|),r2.w\\)" \
310 "exts.l @(0x1234:16,r2.w)"
311gdb_test "x" "exts.l\t@\\(0x1234(:16|),er2.l\\)" \
312 "exts.l @(0x1234:16,er2.l)"
313gdb_test "x" "exts.l\t@\\(0x12345678(:32|),r2l.b\\)" \
314 "exts.l @(0x12345678:32,r2l.b)"
315gdb_test "x" "exts.l\t@\\(0x12345678(:32|),r2.w\\)" \
316 "exts.l @(0x12345678:32,r2.w)"
317gdb_test "x" "exts.l\t@\\(0x12345678(:32|),er2.l\\)" \
318 "exts.l @(0x12345678:32,er2.l)"
319gdb_test "x" "exts.l\t@0x1234(:16|)" \
320 "exts.l @0x1234:16"
321gdb_test "x" "exts.l\t@0x12345678(:32|)" \
322 "exts.l @0x12345678:32"
323gdb_test "x" "exts.l\t#2,er1" \
324 "exts.l #2,er1"
325gdb_test "x" "exts.l\t#2,@er1" \
326 "exts.l #2,@er1"
327gdb_test "x" "exts.l\t#2,@\\(0xc(:2|),er1\\)" \
328 "exts.l #2,@(0xc:2,er1)"
329gdb_test "x" "exts.l\t#2,@er1\\+" \
330 "exts.l #2,@er1+"
331gdb_test "x" "exts.l\t#2,@-er1" \
332 "exts.l #2,@-er1"
333gdb_test "x" "exts.l\t#2,@\\+er1" \
334 "exts.l #2,@+er1"
335gdb_test "x" "exts.l\t#2,@er1-" \
336 "exts.l #2,@er1-"
337gdb_test "x" "exts.l\t#2,@\\(0x1234(:16|),er1\\)" \
338 "exts.l #2,@(0x1234:16,er1)"
339gdb_test "x" "exts.l\t#2,@\\(0x12345678(:32|),er1\\)" \
340 "exts.l #2,@(0x12345678:32,er1)"
341gdb_test "x" "exts.l\t#2,@\\(0x1234(:16|),r2l.b\\)" \
342 "exts.l #2,@(0x1234:16,r2l.b)"
343gdb_test "x" "exts.l\t#2,@\\(0x1234(:16|),r2.w\\)" \
344 "exts.l #2,@(0x1234:16,r2.w)"
345gdb_test "x" "exts.l\t#2,@\\(0x1234(:16|),er2.l\\)" \
346 "exts.l #2,@(0x1234:16,er2.l)"
347gdb_test "x" "exts.l\t#2,@\\(0x12345678(:32|),r2l.b\\)" \
348 "exts.l #2,@(0x12345678:32,r2l.b)"
349gdb_test "x" "exts.l\t#2,@\\(0x12345678(:32|),r2.w\\)" \
350 "exts.l #2,@(0x12345678:32,r2.w)"
351gdb_test "x" "exts.l\t#2,@\\(0x12345678(:32|),er2.l\\)" \
352 "exts.l #2,@(0x12345678:32,er2.l)"
353gdb_test "x" "exts.l\t#2,@0x1234(:16|)" \
354 "exts.l #2,@0x1234:16"
355gdb_test "x" "exts.l\t#2,@0x12345678(:32|)" \
356 "exts.l #2,@0x12345678:32"
This page took 1.953882 seconds and 4 git commands to generate.