]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - gas/testsuite/gas/h8300/t12_bit.exp
Update year range in copyright notice of binutils files
[thirdparty/binutils-gdb.git] / gas / testsuite / gas / h8300 / t12_bit.exp
CommitLineData
250d07de 1# Copyright (C) 2012-2021 Free Software Foundation, Inc.
5bf135a7
NC
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
5# the Free Software Foundation; either version 3 of the License, or
6# (at your option) any later version.
7#
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.
12#
13# You should have received a copy of the GNU General Public License
14# along with this program; if not, write to the Free Software
15# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
16
fe8aec39
MS
17#
18# Some h8300sx tests -- t12_bit
19#
20
21proc do_t12_bit_test {} {
22 set testname "t12_bit.s -- h8sx bit tests"
23
24 gas_start "t12_bit.s" "-al"
25
26 # Check each instruction bit pattern to verify it got assembled correctly.
27
28 set x 0
29 expect {
30 -re ".* 7 0000 7071" { set x [expr $x+1]; exp_continue; }
31 -re ".* 8 0002 7D107070" { set x [expr $x+1]; exp_continue; }
32 -re ".* 9 0006 7F127070" { set x [expr $x+1]; exp_continue; }
33 -re ".* 10 000a 6A181234" { set x [expr $x+1]; exp_continue; }
34 -re ".* 10 7070" { set x [expr $x+1]; exp_continue; }
35 -re ".* 11 0010 6A381234" { set x [expr $x+1]; exp_continue; }
36 -re ".* 11 56787070" { set x [expr $x+1]; exp_continue; }
37 -re ".* 12 " {
38 if [expr $x == 7] then {
39 pass "$testname: bset #0x7, ..."
40 } else {
41 fail "$testname: bset #0x7, ... ($x)"
42 }
43 }
44 default { fail "$testname: bset #0x7, ... ($x)" }
45 }
46
47 set x 0
48 expect {
49 -re ".* 13 0018 6031" { set x [expr $x+1]; exp_continue; }
50 -re ".* 14 001a 7D106030" { set x [expr $x+1]; exp_continue; }
51 -re ".* 15 001e 7F126030" { set x [expr $x+1]; exp_continue; }
52 -re ".* 16 0022 6A181234" { set x [expr $x+1]; exp_continue; }
53 -re ".* 16 6030" { set x [expr $x+1]; exp_continue; }
54 -re ".* 17 0028 6A381234" { set x [expr $x+1]; exp_continue; }
55 -re ".* 17 56786030" { set x [expr $x+1]; exp_continue; }
56 -re ".* 18 " {
57 if [expr $x == 7] then {
58 pass "$testname: bset r3h, ..."
59 } else {
60 fail "$testname: bset r3h, ... ($x)"
61 }
62 }
63 default { fail "$testname: bset r3h, ... ($x)" }
64 }
65
66 set x 0
67 expect {
68 -re ".* 19 0030 7D107077" { set x [expr $x+1]; exp_continue; }
69 -re ".* 20 0034 7F127077" { set x [expr $x+1]; exp_continue; }
70 -re ".* 21 0038 6A181234" { set x [expr $x+1]; exp_continue; }
71 -re ".* 21 7077" { set x [expr $x+1]; exp_continue; }
72 -re ".* 22 003e 6A381234" { set x [expr $x+1]; exp_continue; }
73 -re ".* 22 56787077" { set x [expr $x+1]; exp_continue; }
74 -re ".* 23 " {
75 if [expr $x == 6] then {
76 pass "$testname: bset/eq #0x7, ..."
77 } else {
78 fail "$testname: bset/eq #0x7, ... ($x)"
79 }
80 }
81 default { fail "$testname: bset/eq #0x7, ... ($x)" }
82 }
83
84 set x 0
85 expect {
86 -re ".* 24 0046 7D106037" { set x [expr $x+1]; exp_continue; }
87 -re ".* 25 004a 7F126037" { set x [expr $x+1]; exp_continue; }
88 -re ".* 26 004e 6A181234" { set x [expr $x+1]; exp_continue; }
89 -re ".* 26 6037" { set x [expr $x+1]; exp_continue; }
90 -re ".* 27 0054 6A381234" { set x [expr $x+1]; exp_continue; }
91 -re ".* 27 56786037" { set x [expr $x+1]; exp_continue; }
92 -re ".* 28 " {
93 if [expr $x == 6] then {
94 pass "$testname: bset/eq r3h, ..."
95 } else {
96 fail "$testname: bset/eq r3h, ... ($x)"
97 }
98 }
99 default { fail "$testname: bset/eq r3h, ... ($x)" }
100 }
101
102 set x 0
103 expect {
104 -re ".* 29 005c 7D107076" { set x [expr $x+1]; exp_continue; }
105 -re ".* 30 0060 7F127076" { set x [expr $x+1]; exp_continue; }
106 -re ".* 31 0064 6A181234" { set x [expr $x+1]; exp_continue; }
107 -re ".* 31 7076" { set x [expr $x+1]; exp_continue; }
108 -re ".* 32 006a 6A381234" { set x [expr $x+1]; exp_continue; }
109 -re ".* 32 56787076" { set x [expr $x+1]; exp_continue; }
110 -re ".* 33 " {
111 if [expr $x == 6] then {
112 pass "$testname: bset/ne #0x7, ..."
113 } else {
114 fail "$testname: bset/ne #0x7, ... ($x)"
115 }
116 }
117 default { fail "$testname: bset/ne #0x7, ... ($x)" }
118 }
119
120 set x 0
121 expect {
122 -re ".* 34 0072 7D106036" { set x [expr $x+1]; exp_continue; }
123 -re ".* 35 0076 7F126036" { set x [expr $x+1]; exp_continue; }
124 -re ".* 36 007a 6A181234" { set x [expr $x+1]; exp_continue; }
125 -re ".* 36 6036" { set x [expr $x+1]; exp_continue; }
126 -re ".* 37 0080 6A381234" { set x [expr $x+1]; exp_continue; }
127 -re ".* 37 56786036" { set x [expr $x+1]; exp_continue; }
128 -re ".* 38 " {
129 if [expr $x == 6] then {
130 pass "$testname: bset/ne r3h, ..."
131 } else {
132 fail "$testname: bset/ne r3h, ... ($x)"
133 }
134 }
135 default { fail "$testname: bset/ne r3h, ... ($x)" }
136 }
137
138 set x 0
139 expect {
140 -re ".* 39 0088 7171" { set x [expr $x+1]; exp_continue; }
141 -re ".* 40 008a 7D107170" { set x [expr $x+1]; exp_continue; }
142 -re ".* 41 008e 7F127170" { set x [expr $x+1]; exp_continue; }
143 -re ".* 42 0092 6A181234" { set x [expr $x+1]; exp_continue; }
144 -re ".* 42 7170" { set x [expr $x+1]; exp_continue; }
145 -re ".* 43 0098 6A381234" { set x [expr $x+1]; exp_continue; }
146 -re ".* 43 56787170" { set x [expr $x+1]; exp_continue; }
147 -re ".* 44 " {
148 if [expr $x == 7] then {
149 pass "$testname: bnot #0x7, ..."
150 } else {
151 fail "$testname: bnot #0x7, ... ($x)"
152 }
153 }
154 default { fail "$testname: bnot #0x7, ... ($x)" }
155 }
156
157 set x 0
158 expect {
159 -re ".* 45 00a0 6131" { set x [expr $x+1]; exp_continue; }
160 -re ".* 46 00a2 7D106130" { set x [expr $x+1]; exp_continue; }
161 -re ".* 47 00a6 7F126130" { set x [expr $x+1]; exp_continue; }
162 -re ".* 48 00aa 6A181234" { set x [expr $x+1]; exp_continue; }
163 -re ".* 48 6130" { set x [expr $x+1]; exp_continue; }
164 -re ".* 49 00b0 6A381234" { set x [expr $x+1]; exp_continue; }
165 -re ".* 49 56786130" { set x [expr $x+1]; exp_continue; }
166 -re ".* 50 " {
167 if [expr $x == 7] then {
168 pass "$testname: bnot r3h, ..."
169 } else {
170 fail "$testname: bnot r3h, ... ($x)"
171 }
172 }
173 default { fail "$testname: bnot r3h, ... ($x)" }
174 }
175
176 set x 0
177 expect {
178 -re ".* 51 00b8 7271" { set x [expr $x+1]; exp_continue; }
179 -re ".* 52 00ba 7D107270" { set x [expr $x+1]; exp_continue; }
180 -re ".* 53 00be 7F127270" { set x [expr $x+1]; exp_continue; }
181 -re ".* 54 00c2 6A181234" { set x [expr $x+1]; exp_continue; }
182 -re ".* 54 7270" { set x [expr $x+1]; exp_continue; }
183 -re ".* 55 00c8 6A381234" { set x [expr $x+1]; exp_continue; }
184 -re ".* 55 56787270" { set x [expr $x+1]; exp_continue; }
185 -re ".* 56 " {
186 if [expr $x == 7] then {
187 pass "$testname: bclr #0x7, ..."
188 } else {
189 fail "$testname: bclr #0x7, ... ($x)"
190 }
191 }
192 default { fail "$testname: bclr #0x7, ... ($x)" }
193 }
194
195 set x 0
196 expect {
197 -re ".* 57 00d0 6231" { set x [expr $x+1]; exp_continue; }
198 -re ".* 58 00d2 7D106230" { set x [expr $x+1]; exp_continue; }
199 -re ".* 59 00d6 7F126230" { set x [expr $x+1]; exp_continue; }
200 -re ".* 60 00da 6A181234" { set x [expr $x+1]; exp_continue; }
201 -re ".* 60 6230" { set x [expr $x+1]; exp_continue; }
202 -re ".* 61 00e0 6A381234" { set x [expr $x+1]; exp_continue; }
203 -re ".* 61 56786230" { set x [expr $x+1]; exp_continue; }
204 -re ".* 62 " {
205 if [expr $x == 7] then {
206 pass "$testname: bclr r3h, ..."
207 } else {
208 fail "$testname: bclr r3h, ... ($x)"
209 }
210 }
211 default { fail "$testname: bclr r3h, ... ($x)" }
212 }
213
214 set x 0
215 expect {
216 -re ".* 63 00e8 7D107277" { set x [expr $x+1]; exp_continue; }
217 -re ".* 64 00ec 7F127277" { set x [expr $x+1]; exp_continue; }
218 -re ".* 65 00f0 6A181234" { set x [expr $x+1]; exp_continue; }
219 -re ".* 65 7277" { set x [expr $x+1]; exp_continue; }
220 -re ".* 66 00f6 6A381234" { set x [expr $x+1]; exp_continue; }
221 -re ".* 66 56787277" { set x [expr $x+1]; exp_continue; }
222 -re ".* 67 " {
223 if [expr $x == 6] then {
224 pass "$testname: bclr/eq #0x7, ..."
225 } else {
226 fail "$testname: bclr/eq #0x7, ... ($x)"
227 }
228 }
229 default { fail "$testname: bclr/eq #0x7, ... ($x)" }
230 }
231
232 set x 0
233 expect {
234 -re ".* 68 00fe 7D106237" { set x [expr $x+1]; exp_continue; }
235 -re ".* 69 0102 7F126237" { set x [expr $x+1]; exp_continue; }
236 -re ".* 70 0106 6A181234" { set x [expr $x+1]; exp_continue; }
237 -re ".* 70 6237" { set x [expr $x+1]; exp_continue; }
238 -re ".* 71 010c 6A381234" { set x [expr $x+1]; exp_continue; }
239 -re ".* 71 56786237" { set x [expr $x+1]; exp_continue; }
240 -re ".* 72 " {
241 if [expr $x == 6] then {
242 pass "$testname: bclr/eq r3h, ..."
243 } else {
244 fail "$testname: bclr/eq r3h, ... ($x)"
245 }
246 }
247 default { fail "$testname: bclr/eq r3h, ... ($x)" }
248 }
249
250 set x 0
251 expect {
252 -re ".* 73 0114 7D107276" { set x [expr $x+1]; exp_continue; }
253 -re ".* 74 0118 7F127276" { set x [expr $x+1]; exp_continue; }
254 -re ".* 75 011c 6A181234" { set x [expr $x+1]; exp_continue; }
255 -re ".* 75 7276" { set x [expr $x+1]; exp_continue; }
256 -re ".* 76 0122 6A381234" { set x [expr $x+1]; exp_continue; }
257 -re ".* 76 56787276" { set x [expr $x+1]; exp_continue; }
258 -re ".* 77 " {
259 if [expr $x == 6] then {
260 pass "$testname: bclr/ne #0x7, ..."
261 } else {
262 fail "$testname: bclr/ne #0x7, ... ($x)"
263 }
264 }
265 default { fail "$testname: bclr/ne #0x7, ... ($x)" }
266 }
267
268 set x 0
269 expect {
270 -re ".* 78 012a 7D106236" { set x [expr $x+1]; exp_continue; }
271 -re ".* 79 012e 7F126236" { set x [expr $x+1]; exp_continue; }
272 -re ".* 80 0132 6A181234" { set x [expr $x+1]; exp_continue; }
273 -re ".* 80 6236" { set x [expr $x+1]; exp_continue; }
274 -re ".* 81 0138 6A381234" { set x [expr $x+1]; exp_continue; }
275 -re ".* 81 56786236" { set x [expr $x+1]; exp_continue; }
276 -re ".* 82 " {
277 if [expr $x == 6] then {
278 pass "$testname: bclr/ne r3h, ..."
279 } else {
280 fail "$testname: bclr/ne r3h, ... ($x)"
281 }
282 }
283 default { fail "$testname: bclr/ne r3h, ... ($x)" }
284 }
285
286 set x 0
287 expect {
288 -re ".* 83 0140 7371" { set x [expr $x+1]; exp_continue; }
289 -re ".* 84 0142 7C107370" { set x [expr $x+1]; exp_continue; }
290 -re ".* 85 0146 7E127370" { set x [expr $x+1]; exp_continue; }
291 -re ".* 86 014a 6A101234" { set x [expr $x+1]; exp_continue; }
292 -re ".* 86 7370" { set x [expr $x+1]; exp_continue; }
293 -re ".* 87 0150 6A301234" { set x [expr $x+1]; exp_continue; }
294 -re ".* 87 56787370" { set x [expr $x+1]; exp_continue; }
295 -re ".* 88 " {
296 if [expr $x == 7] then {
297 pass "$testname: btst #0x7, ..."
298 } else {
299 fail "$testname: btst #0x7, ... ($x)"
300 }
301 }
302 default { fail "$testname: btst #0x7, ... ($x)" }
303 }
304
305 set x 0
306 expect {
307 -re ".* 89 0158 6331" { set x [expr $x+1]; exp_continue; }
308 -re ".* 90 015a 7C106330" { set x [expr $x+1]; exp_continue; }
309 -re ".* 91 015e 7E126330" { set x [expr $x+1]; exp_continue; }
310 -re ".* 92 0162 6A101234" { set x [expr $x+1]; exp_continue; }
311 -re ".* 92 6330" { set x [expr $x+1]; exp_continue; }
312 -re ".* 93 0168 6A301234" { set x [expr $x+1]; exp_continue; }
313 -re ".* 93 56786330" { set x [expr $x+1]; exp_continue; }
314 -re ".* 94 " {
315 if [expr $x == 7] then {
316 pass "$testname: btst r3h, ..."
317 } else {
318 fail "$testname: btst r3h, ... ($x)"
319 }
320 }
321 default { fail "$testname: btst r3h, ... ($x)" }
322 }
323
324 set x 0
325 expect {
326 -re ".* 95 0170 7471" { set x [expr $x+1]; exp_continue; }
327 -re ".* 96 0172 7C107470" { set x [expr $x+1]; exp_continue; }
328 -re ".* 97 0176 7E127470" { set x [expr $x+1]; exp_continue; }
329 -re ".* 98 017a 6A101234" { set x [expr $x+1]; exp_continue; }
330 -re ".* 98 7470" { set x [expr $x+1]; exp_continue; }
331 -re ".* 99 0180 6A301234" { set x [expr $x+1]; exp_continue; }
332 -re ".* 99 56787470" { set x [expr $x+1]; exp_continue; }
333 -re ".* 100 " {
334 if [expr $x == 7] then {
335 pass "$testname: bor #0x7, ..."
336 } else {
337 fail "$testname: bor #0x7, ... ($x)"
338 }
339 }
340 default { fail "$testname: bor #0x7, ... ($x)" }
341 }
342
343 set x 0
344 expect {
345 -re ".* 101 0188 74F1" { set x [expr $x+1]; exp_continue; }
346 -re ".* 102 018a 7C1074F0" { set x [expr $x+1]; exp_continue; }
347 -re ".* 103 018e 7E1274F0" { set x [expr $x+1]; exp_continue; }
348 -re ".* 104 0192 6A101234" { set x [expr $x+1]; exp_continue; }
349 -re ".* 104 74F0" { set x [expr $x+1]; exp_continue; }
350 -re ".* 105 0198 6A301234" { set x [expr $x+1]; exp_continue; }
351 -re ".* 105 567874F0" { set x [expr $x+1]; exp_continue; }
352 -re ".* 106 " {
353 if [expr $x == 7] then {
354 pass "$testname: bior #0x7, ..."
355 } else {
356 fail "$testname: bior #0x7, ... ($x)"
357 }
358 }
359 default { fail "$testname: bior #0x7, ... ($x)" }
360 }
361
362 set x 0
363 expect {
364 -re ".* 107 01a0 7571" { set x [expr $x+1]; exp_continue; }
365 -re ".* 108 01a2 7C107570" { set x [expr $x+1]; exp_continue; }
366 -re ".* 109 01a6 7E127570" { set x [expr $x+1]; exp_continue; }
367 -re ".* 110 01aa 6A101234" { set x [expr $x+1]; exp_continue; }
368 -re ".* 110 7570" { set x [expr $x+1]; exp_continue; }
369 -re ".* 111 01b0 6A301234" { set x [expr $x+1]; exp_continue; }
370 -re ".* 111 56787570" { set x [expr $x+1]; exp_continue; }
371 -re ".* 112 " {
372 if [expr $x == 7] then {
373 pass "$testname: bxor #0x7, ..."
374 } else {
375 fail "$testname: bxor #0x7, ... ($x)"
376 }
377 }
378 default { fail "$testname: bxor #0x7, ... ($x)" }
379 }
380
381 set x 0
382 expect {
383 -re ".* 113 01b8 75F1" { set x [expr $x+1]; exp_continue; }
384 -re ".* 114 01ba 7C1075F0" { set x [expr $x+1]; exp_continue; }
385 -re ".* 115 01be 7E1275F0" { set x [expr $x+1]; exp_continue; }
386 -re ".* 116 01c2 6A101234" { set x [expr $x+1]; exp_continue; }
387 -re ".* 116 75F0" { set x [expr $x+1]; exp_continue; }
388 -re ".* 117 01c8 6A301234" { set x [expr $x+1]; exp_continue; }
389 -re ".* 117 567875F0" { set x [expr $x+1]; exp_continue; }
390 -re ".* 118 " {
391 if [expr $x == 7] then {
392 pass "$testname: bixor #0x7, ..."
393 } else {
394 fail "$testname: bixor #0x7, ... ($x)"
395 }
396 }
397 default { fail "$testname: bixor #0x7, ... ($x)" }
398 }
399
400 set x 0
401 expect {
402 -re ".* 119 01d0 7671" { set x [expr $x+1]; exp_continue; }
403 -re ".* 120 01d2 7C107670" { set x [expr $x+1]; exp_continue; }
404 -re ".* 121 01d6 7E127670" { set x [expr $x+1]; exp_continue; }
405 -re ".* 122 01da 6A101234" { set x [expr $x+1]; exp_continue; }
406 -re ".* 122 7670" { set x [expr $x+1]; exp_continue; }
407 -re ".* 123 01e0 6A301234" { set x [expr $x+1]; exp_continue; }
408 -re ".* 123 56787670" { set x [expr $x+1]; exp_continue; }
409 -re ".* 124 " {
410 if [expr $x == 7] then {
411 pass "$testname: band #0x7, ..."
412 } else {
413 fail "$testname: band #0x7, ... ($x)"
414 }
415 }
416 default { fail "$testname: band #0x7, ... ($x)" }
417 }
418
419 set x 0
420 expect {
421 -re ".* 125 01e8 76F1" { set x [expr $x+1]; exp_continue; }
422 -re ".* 126 01ea 7C1076F0" { set x [expr $x+1]; exp_continue; }
423 -re ".* 127 01ee 7E1276F0" { set x [expr $x+1]; exp_continue; }
424 -re ".* 128 01f2 6A101234" { set x [expr $x+1]; exp_continue; }
425 -re ".* 128 76F0" { set x [expr $x+1]; exp_continue; }
426 -re ".* 129 01f8 6A301234" { set x [expr $x+1]; exp_continue; }
427 -re ".* 129 567876F0" { set x [expr $x+1]; exp_continue; }
428 -re ".* 130 " {
429 if [expr $x == 7] then {
430 pass "$testname: biand #0x7, ..."
431 } else {
432 fail "$testname: biand #0x7, ... ($x)"
433 }
434 }
435 default { fail "$testname: biand #0x7, ... ($x)" }
436 }
437
438 set x 0
439 expect {
440 -re ".* 131 0200 7771" { set x [expr $x+1]; exp_continue; }
441 -re ".* 132 0202 7C107770" { set x [expr $x+1]; exp_continue; }
442 -re ".* 133 0206 7E127770" { set x [expr $x+1]; exp_continue; }
443 -re ".* 134 020a 6A101234" { set x [expr $x+1]; exp_continue; }
444 -re ".* 134 7770" { set x [expr $x+1]; exp_continue; }
445 -re ".* 135 0210 6A301234" { set x [expr $x+1]; exp_continue; }
446 -re ".* 135 56787770" { set x [expr $x+1]; exp_continue; }
447 -re ".* 136 " {
448 if [expr $x == 7] then {
449 pass "$testname: bld #0x7, ..."
450 } else {
451 fail "$testname: bld #0x7, ... ($x)"
452 }
453 }
454 default { fail "$testname: bld #0x7, ... ($x)" }
455 }
456
457 set x 0
458 expect {
459 -re ".* 137 0218 77F1" { set x [expr $x+1]; exp_continue; }
460 -re ".* 138 021a 7C1077F0" { set x [expr $x+1]; exp_continue; }
461 -re ".* 139 021e 7E1277F0" { set x [expr $x+1]; exp_continue; }
462 -re ".* 140 0222 6A101234" { set x [expr $x+1]; exp_continue; }
463 -re ".* 140 77F0" { set x [expr $x+1]; exp_continue; }
464 -re ".* 141 0228 6A301234" { set x [expr $x+1]; exp_continue; }
465 -re ".* 141 567877F0" { set x [expr $x+1]; exp_continue; }
466 -re ".* 142 " {
467 if [expr $x == 7] then {
468 pass "$testname: bild #0x7, ..."
469 } else {
470 fail "$testname: bild #0x7, ... ($x)"
471 }
472 }
473 default { fail "$testname: bild #0x7, ... ($x)" }
474 }
475
476 set x 0
477 expect {
478 -re ".* 143 0230 6771" { set x [expr $x+1]; exp_continue; }
479 -re ".* 144 0232 7D106770" { set x [expr $x+1]; exp_continue; }
480 -re ".* 145 0236 7F126770" { set x [expr $x+1]; exp_continue; }
481 -re ".* 146 023a 6A181234" { set x [expr $x+1]; exp_continue; }
482 -re ".* 146 6770" { set x [expr $x+1]; exp_continue; }
483 -re ".* 147 0240 6A381234" { set x [expr $x+1]; exp_continue; }
484 -re ".* 147 56786770" { set x [expr $x+1]; exp_continue; }
485 -re ".* 148 " {
486 if [expr $x == 7] then {
487 pass "$testname: bst #0x7, ..."
488 } else {
489 fail "$testname: bst #0x7, ... ($x)"
490 }
491 }
492 default { fail "$testname: bst #0x7, ... ($x)" }
493 }
494
495 set x 0
496 expect {
497 -re ".* 149 0248 7D106777" { set x [expr $x+1]; exp_continue; }
498 -re ".* 150 024c 7F126777" { set x [expr $x+1]; exp_continue; }
499 -re ".* 151 0250 6A181234" { set x [expr $x+1]; exp_continue; }
500 -re ".* 151 6777" { set x [expr $x+1]; exp_continue; }
501 -re ".* 152 0256 6A381234" { set x [expr $x+1]; exp_continue; }
502 -re ".* 152 56786777" { set x [expr $x+1]; exp_continue; }
503 -re ".* 153 " {
504 if [expr $x == 6] then {
505 pass "$testname: bstz #0x7, ..."
506 } else {
507 fail "$testname: bstz #0x7, ... ($x)"
508 }
509 }
510 default { fail "$testname: bstz #0x7, ... ($x)" }
511 }
512
513 set x 0
514 expect {
515 -re ".* 154 025e 67F1" { set x [expr $x+1]; exp_continue; }
516 -re ".* 155 0260 7D1067F0" { set x [expr $x+1]; exp_continue; }
517 -re ".* 156 0264 7F1267F0" { set x [expr $x+1]; exp_continue; }
518 -re ".* 157 0268 6A181234" { set x [expr $x+1]; exp_continue; }
519 -re ".* 157 67F0" { set x [expr $x+1]; exp_continue; }
520 -re ".* 158 026e 6A381234" { set x [expr $x+1]; exp_continue; }
521 -re ".* 158 567867F0" { set x [expr $x+1]; exp_continue; }
522 -re ".* 159 " {
523 if [expr $x == 7] then {
524 pass "$testname: bist #0x7, ..."
525 } else {
526 fail "$testname: bist #0x7, ... ($x)"
527 }
528 }
529 default { fail "$testname: bist #0x7, ... ($x)" }
530 }
531
532 set x 0
533 expect {
534 -re ".* 160 0276 7D1067F7" { set x [expr $x+1]; exp_continue; }
535 -re ".* 161 027a 7F1267F7" { set x [expr $x+1]; exp_continue; }
536 -re ".* 162 027e 6A181234" { set x [expr $x+1]; exp_continue; }
537 -re ".* 162 67F7" { set x [expr $x+1]; exp_continue; }
538 -re ".* 163 0284 6A381234" { set x [expr $x+1]; exp_continue; }
539 -re ".* 163 567867F7" { set x [expr $x+1]; exp_continue; }
540 -re ".* 164 " {
541 if [expr $x == 6] then {
542 pass "$testname: bistz #0x7, ..."
543 } else {
544 fail "$testname: bistz #0x7, ... ($x)"
545 }
546 }
547 default { fail "$testname: bistz #0x7, ... ($x)" }
548 }
549
550 set x 0
551 expect {
552 -re ".* 165 028c 7C10F334" { set x [expr $x+1]; exp_continue; }
553 -re ".* 166 0290 7E12F334" { set x [expr $x+1]; exp_continue; }
554 -re ".* 167 0294 6A101234" { set x [expr $x+1]; exp_continue; }
555 -re ".* 167 F334" { set x [expr $x+1]; exp_continue; }
556 -re ".* 168 029a 6A301234" { set x [expr $x+1]; exp_continue; }
557 -re ".* 168 5678F334" { set x [expr $x+1]; exp_continue; }
558 -re ".* 169 " {
559 if [expr $x == 6] then {
560 pass "$testname: bfld #0x34:8, ..., r3h"
561 } else {
562 fail "$testname: bfld #0x34:8, ..., r3h ($x)"
563 }
564 }
565 default { fail "$testname: bfld #0x34:8, ..., r3h ($x)" }
566 }
567
568 set x 0
569 expect {
570 -re ".* 170 02a2 7D10F334" { set x [expr $x+1]; exp_continue; }
571 -re ".* 171 02a6 7F12F334" { set x [expr $x+1]; exp_continue; }
572 -re ".* 172 02aa 6A181234" { set x [expr $x+1]; exp_continue; }
573 -re ".* 172 F334" { set x [expr $x+1]; exp_continue; }
574 -re ".* 173 02b0 6A381234" { set x [expr $x+1]; exp_continue; }
575 -re ".* 173 5678F334" { set x [expr $x+1]; exp_continue; }
576 -re ".* 174 " {
577 if [expr $x == 6] then {
578 pass "$testname: bfst r3h, #0x34:8, ..."
579 } else {
580 fail "$testname: bfst r3h, #0x34:8, ... ($x)"
581 }
582 }
583 default { fail "$testname: bfst r3h, #0x34:8, ... ($x)" }
584 }
585
586 # This was intended to do any cleanup necessary.
587 # It kinda looks like it isn't needed, but just
588 # in case, please keep it in for now.
589
590 gas_finish
591
592}
593
594if [istarget h8300*-*-elf] then {
595 # Test advanced h8300sx instructions.
596 do_t12_bit_test
597}
598