1 # Copyright (C) 1996 Free Software Foundation, Inc.
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 2 of the License, or
6 # (at your option) any later version.
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.
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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
17 # Please email any bugs, comments, and/or additions to this file to:
20 # Written by Cygnus Support.
23 set testname "add.s: Add operations"
26 gas_start "add.s" "-al"
28 # Instead of having a variable for each match string just increment the
29 # total number of matches seen. That's simpler when testing large numbers
30 # of instructions (as these tests to).
33 -re "^ +\[0-9\]+ 0000 E6\[^\n\]*\n" { set x [expr $x+1] }
34 -re "^ +\[0-9\]+ 0001 F16B\[^\n\]*\n" { set x [expr $x+1] }
35 -re "^ +\[0-9\]+ 0003 F17E\[^\n\]*\n" { set x [expr $x+1] }
36 -re "^ +\[0-9\]+ 0005 F159\[^\n\]*\n" { set x [expr $x+1] }
37 -re "^ +\[0-9\]+ 0007 2910\[^\n\]*\n" { set x [expr $x+1] }
38 -re "^ +\[0-9\]+ 0009 FAC20100\[^\n\]*\n" { set x [expr $x+1] }
39 -re "^ +\[0-9\]+ 000d\[^\n\]*\n" { set x [expr $x+1] }
40 -re "^ +\[0-9\]+ 0013 2110\[^\n\]*\n" { set x [expr $x+1] }
41 -re "^ +\[0-9\]+ 0015 FAD20100\[^\n\]*\n" { set x [expr $x+1] }
42 -re "^ +\[0-9\]+ 0019\[^\n\]*\n" { set x [expr $x+1] }
43 -re "^ +\[0-9\]+ 001f F8FE10\[^\n\]*\n" { set x [expr $x+1] }
44 -re "^ +\[0-9\]+ 0022 FAFE0100\[^\n\]*\n" { set x [expr $x+1] }
45 -re "^ +\[0-9\]+ 0026\[^\n\]*\n" { set x [expr $x+1] }
46 -re "^ +\[0-9\]+ 002c F146\[^\n\]*\n" { set x [expr $x+1] }
48 timeout { perror "timeout\n"; break }
53 # This was intended to do any cleanup necessary. It kinda looks like it
54 # isn't needed, but just in case, please keep it in for now.
57 # Did we find what we were looking for? If not, flunk it.
58 if [expr $x==14] then { pass $testname } else { fail $testname }
62 set testname "bcc.s: Bcc tests"
65 gas_start "bcc.s" "-al"
67 # Instead of having a variable for each match string just increment the
68 # total number of matches seen. That's simpler when testing large numbers
69 # of instructions (as these tests to).
72 -re "^ +\[0-9\]+ 0000 C800\[^\n\]*\n" { set x [expr $x+1] }
73 -re "^ +\[0-9\]+ 0002 C900\[^\n\]*\n" { set x [expr $x+1] }
74 -re "^ +\[0-9\]+ 0004 C100\[^\n\]*\n" { set x [expr $x+1] }
75 -re "^ +\[0-9\]+ 0006 C200\[^\n\]*\n" { set x [expr $x+1] }
76 -re "^ +\[0-9\]+ 0008 C300\[^\n\]*\n" { set x [expr $x+1] }
77 -re "^ +\[0-9\]+ 000a C000\[^\n\]*\n" { set x [expr $x+1] }
78 -re "^ +\[0-9\]+ 000c C500\[^\n\]*\n" { set x [expr $x+1] }
79 -re "^ +\[0-9\]+ 000e C600\[^\n\]*\n" { set x [expr $x+1] }
80 -re "^ +\[0-9\]+ 0010 C700\[^\n\]*\n" { set x [expr $x+1] }
81 -re "^ +\[0-9\]+ 0012 C400\[^\n\]*\n" { set x [expr $x+1] }
82 -re "^ +\[0-9\]+ 0014 F8E800\[^\n\]*\n" { set x [expr $x+1] }
83 -re "^ +\[0-9\]+ 0017 F8E900\[^\n\]*\n" { set x [expr $x+1] }
84 -re "^ +\[0-9\]+ 001a F8EA00\[^\n\]*\n" { set x [expr $x+1] }
85 -re "^ +\[0-9\]+ 001d F8EB00\[^\n\]*\n" { set x [expr $x+1] }
86 -re "^ +\[0-9\]+ 0020 CA00\[^\n\]*\n" { set x [expr $x+1] }
88 timeout { perror "timeout\n"; break }
93 # This was intended to do any cleanup necessary. It kinda looks like it
94 # isn't needed, but just in case, please keep it in for now.
97 # Did we find what we were looking for? If not, flunk it.
98 if [expr $x==15] then { pass $testname } else { fail $testname }
102 set testname "bit.s: bit tests"
105 gas_start "bit.s" "-al"
107 # Instead of having a variable for each match string just increment the
108 # total number of matches seen. That's simpler when testing large numbers
109 # of instructions (as these tests to).
112 -re "^ +\[0-9\]+ 0000 F8ED40\[^\n\]*\n" { set x [expr $x+1] }
113 -re "^ +\[0-9\]+ 0003 FAEE2000\[^\n\]*\n" { set x [expr $x+1] }
114 -re "^ +\[0-9\]+ 0007\[^\n\]*\n" { set x [expr $x+1] }
115 -re "^ +\[0-9\]+ 000d\[^\n\]*\n" { set x [expr $x+1] }
116 -re "^ +\[0-9\]+ 0011\[^\n\]*\n" { set x [expr $x+1] }
117 -re "^ +\[0-9\]+ 0018 F086\[^\n\]*\n" { set x [expr $x+1] }
118 -re "^ +\[0-9\]+ 001a\[^\n\]*\n" { set x [expr $x+1] }
119 -re "^ +\[0-9\]+ 001e\[^\n\]*\n" { set x [expr $x+1] }
120 -re "^ +\[0-9\]+ 0025 F096\[^\n\]*\n" { set x [expr $x+1] }
121 -re "^ +\[0-9\]+ 0027\[^\n\]*\n" { set x [expr $x+1] }
122 -re "^ +\[0-9\]+ 002b\[^\n\]*\n" { set x [expr $x+1] }
124 timeout { perror "timeout\n"; break }
129 # This was intended to do any cleanup necessary. It kinda looks like it
130 # isn't needed, but just in case, please keep it in for now.
133 # Did we find what we were looking for? If not, flunk it.
134 if [expr $x==11] then { pass $testname } else { fail $testname }
138 set testname "cmp.s: cmp tests"
141 gas_start "cmp.s" "-al"
143 # Instead of having a variable for each match string just increment the
144 # total number of matches seen. That's simpler when testing large numbers
145 # of instructions (as these tests to).
148 -re "^ +\[0-9\]+ 0000 A6\[^\n\]*\n" { set x [expr $x+1] }
149 -re "^ +\[0-9\]+ 0001 F1AB\[^\n\]*\n" { set x [expr $x+1] }
150 -re "^ +\[0-9\]+ 0003 F19F\[^\n\]*\n" { set x [expr $x+1] }
151 -re "^ +\[0-9\]+ 0005 BE\[^\n\]*\n" { set x [expr $x+1] }
152 -re "^ +\[0-9\]+ 0006 AF10\[^\n\]*\n" { set x [expr $x+1] }
153 -re "^ +\[0-9\]+ 0008 FACA0100\[^\n\]*\n" { set x [expr $x+1] }
154 -re "^ +\[0-9\]+ 000c\[^\n\]*\n" { set x [expr $x+1] }
155 -re "^ +\[0-9\]+ 0012 BF10\[^\n\]*\n" { set x [expr $x+1] }
156 -re "^ +\[0-9\]+ 0014 FADA0100\[^\n\]*\n" { set x [expr $x+1] }
157 -re "^ +\[0-9\]+ 0018\[^\n\]*\n" { set x [expr $x+1] }
159 timeout { perror "timeout\n"; break }
164 # This was intended to do any cleanup necessary. It kinda looks like it
165 # isn't needed, but just in case, please keep it in for now.
168 # Did we find what we were looking for? If not, flunk it.
169 if [expr $x==10] then { pass $testname } else { fail $testname }
173 set testname "ext.s: ext tests"
176 gas_start "ext.s" "-al"
178 # Instead of having a variable for each match string just increment the
179 # total number of matches seen. That's simpler when testing large numbers
180 # of instructions (as these tests to).
183 -re "^ +\[0-9\]+ 0000 F2D1\[^\n\]*\n" { set x [expr $x+1] }
184 -re "^ +\[0-9\]+ 0002 12\[^\n\]*\n" { set x [expr $x+1] }
185 -re "^ +\[0-9\]+ 0003 17\[^\n\]*\n" { set x [expr $x+1] }
186 -re "^ +\[0-9\]+ 0004 1A\[^\n\]*\n" { set x [expr $x+1] }
187 -re "^ +\[0-9\]+ 0005 1D\[^\n\]*\n" { set x [expr $x+1] }
189 timeout { perror "timeout\n"; break }
194 # This was intended to do any cleanup necessary. It kinda looks like it
195 # isn't needed, but just in case, please keep it in for now.
198 # Did we find what we were looking for? If not, flunk it.
199 if [expr $x==5] then { pass $testname } else { fail $testname }
203 set testname "extend.s: extended instruction tests"
206 gas_start "extend.s" "-al"
208 # Instead of having a variable for each match string just increment the
209 # total number of matches seen. That's simpler when testing large numbers
210 # of instructions (as these tests to).
213 -re "^ +\[0-9\]+ 0000\[^\n\]*\n" { set x [expr $x+1] }
214 -re "^ +\[0-9\]+ 0002\[^\n\]*\n" { set x [expr $x+1] }
215 -re "^ +\[0-9\]+ 0004\[^\n\]*\n" { set x [expr $x+1] }
216 -re "^ +\[0-9\]+ 0006\[^\n\]*\n" { set x [expr $x+1] }
217 -re "^ +\[0-9\]+ 0009\[^\n\]*\n" { set x [expr $x+1] }
218 -re "^ +\[0-9\]+ 000d\[^\n\]*\n" { set x [expr $x+1] }
219 -re "^ +\[0-9\]+ 0013\[^\n\]*\n" { set x [expr $x+1] }
220 -re "^ +\[0-9\]+ 0015\[^\n\]*\n" { set x [expr $x+1] }
221 -re "^ +\[0-9\]+ 0018\[^\n\]*\n" { set x [expr $x+1] }
222 -re "^ +\[0-9\]+ 001c\[^\n\]*\n" { set x [expr $x+1] }
223 -re "^ +\[0-9\]+ 0022\[^\n\]*\n" { set x [expr $x+1] }
224 -re "^ +\[0-9\]+ 0024\[^\n\]*\n" { set x [expr $x+1] }
225 -re "^ +\[0-9\]+ 0026\[^\n\]*\n" { set x [expr $x+1] }
227 timeout { perror "timeout\n"; break }
232 # This was intended to do any cleanup necessary. It kinda looks like it
233 # isn't needed, but just in case, please keep it in for now.
236 # Did we find what we were looking for? If not, flunk it.
237 if [expr $x==13] then { pass $testname } else { fail $testname }
241 set testname "logical.s: logical tests"
244 gas_start "logical.s" "-al"
246 # Instead of having a variable for each match string just increment the
247 # total number of matches seen. That's simpler when testing large numbers
248 # of instructions (as these tests to).
251 -re "^ +\[0-9\]+ 0000 F206\[^\n\]*\n" { set x [expr $x+1] }
252 -re "^ +\[0-9\]+ 0002 F8E27F\[^\n\]*\n" { set x [expr $x+1] }
253 -re "^ +\[0-9\]+ 0005 FAE37FFF\[^\n\]*\n" { set x [expr $x+1] }
254 -re "^ +\[0-9\]+ 0009\[^\n\]*\n" { set x [expr $x+1] }
255 -re "^ +\[0-9\]+ 000f FAFC7FFF\[^\n\]*\n" { set x [expr $x+1] }
256 -re "^ +\[0-9\]+ 0013 F216\[^\n\]*\n" { set x [expr $x+1] }
257 -re "^ +\[0-9\]+ 0015 F8E67F\[^\n\]*\n" { set x [expr $x+1] }
258 -re "^ +\[0-9\]+ 0018 FAE77FFF\[^\n\]*\n" { set x [expr $x+1] }
259 -re "^ +\[0-9\]+ 001c\[^\n\]*\n" { set x [expr $x+1] }
260 -re "^ +\[0-9\]+ 0022 FAFD7FFF\[^\n\]*\n" { set x [expr $x+1] }
261 -re "^ +\[0-9\]+ 0026 F226\[^\n\]*\n" { set x [expr $x+1] }
262 -re "^ +\[0-9\]+ 0028 FAEB7FFF\[^\n\]*\n" { set x [expr $x+1] }
263 -re "^ +\[0-9\]+ 002c\[^\n\]*\n" { set x [expr $x+1] }
264 -re "^ +\[0-9\]+ 0032 F233\[^\n\]*\n" { set x [expr $x+1] }
266 timeout { perror "timeout\n"; break }
271 # This was intended to do any cleanup necessary. It kinda looks like it
272 # isn't needed, but just in case, please keep it in for now.
275 # Did we find what we were looking for? If not, flunk it.
276 if [expr $x==14] then { pass $testname } else { fail $testname }
280 set testname "loop.s: loop tests"
283 gas_start "loop.s" "-al"
285 # Instead of having a variable for each match string just increment the
286 # total number of matches seen. That's simpler when testing large numbers
287 # of instructions (as these tests to).
290 -re "^ +\[0-9\]+ 0000 D8\[^\n\]*\n" { set x [expr $x+1] }
291 -re "^ +\[0-9\]+ 0001 D9\[^\n\]*\n" { set x [expr $x+1] }
292 -re "^ +\[0-9\]+ 0002 D1\[^\n\]*\n" { set x [expr $x+1] }
293 -re "^ +\[0-9\]+ 0003 D2\[^\n\]*\n" { set x [expr $x+1] }
294 -re "^ +\[0-9\]+ 0004 D3\[^\n\]*\n" { set x [expr $x+1] }
295 -re "^ +\[0-9\]+ 0005 D0\[^\n\]*\n" { set x [expr $x+1] }
296 -re "^ +\[0-9\]+ 0006 D5\[^\n\]*\n" { set x [expr $x+1] }
297 -re "^ +\[0-9\]+ 0007 D6\[^\n\]*\n" { set x [expr $x+1] }
298 -re "^ +\[0-9\]+ 0008 D7\[^\n\]*\n" { set x [expr $x+1] }
299 -re "^ +\[0-9\]+ 0009 D4\[^\n\]*\n" { set x [expr $x+1] }
300 -re "^ +\[0-9\]+ 000a DA\[^\n\]*\n" { set x [expr $x+1] }
301 -re "^ +\[0-9\]+ 000b DB\[^\n\]*\n" { set x [expr $x+1] }
303 timeout { perror "timeout\n"; break }
308 # This was intended to do any cleanup necessary. It kinda looks like it
309 # isn't needed, but just in case, please keep it in for now.
312 # Did we find what we were looking for? If not, flunk it.
313 if [expr $x==12] then { pass $testname } else { fail $testname }
317 set testname "mov1.s: mov1 tests"
320 gas_start "mov1.s" "-al"
322 # Instead of having a variable for each match string just increment the
323 # total number of matches seen. That's simpler when testing large numbers
324 # of instructions (as these tests to).
327 -re "^ +\[0-9\]+ 0000 86\[^\n\]*\n" { set x [expr $x+1] }
328 -re "^ +\[0-9\]+ 0001 F1E6\[^\n\]*\n" { set x [expr $x+1] }
329 -re "^ +\[0-9\]+ 0003 F1D9\[^\n\]*\n" { set x [expr $x+1] }
330 -re "^ +\[0-9\]+ 0005 99\[^\n\]*\n" { set x [expr $x+1] }
331 -re "^ +\[0-9\]+ 0006 3E\[^\n\]*\n" { set x [expr $x+1] }
332 -re "^ +\[0-9\]+ 0007 F2F4\[^\n\]*\n" { set x [expr $x+1] }
333 -re "^ +\[0-9\]+ 0009 F2FB\[^\n\]*\n" { set x [expr $x+1] }
334 -re "^ +\[0-9\]+ 000b F2E1\[^\n\]*\n" { set x [expr $x+1] }
335 -re "^ +\[0-9\]+ 000d F2FA\[^\n\]*\n" { set x [expr $x+1] }
336 -re "^ +\[0-9\]+ 000f 76\[^\n\]*\n" { set x [expr $x+1] }
337 -re "^ +\[0-9\]+ 0010 F80608\[^\n\]*\n" { set x [expr $x+1] }
338 -re "^ +\[0-9\]+ 0013 FA060100\[^\n\]*\n" { set x [expr $x+1] }
339 -re "^ +\[0-9\]+ 0017\[^\n\]*\n" { set x [expr $x+1] }
340 -re "^ +\[0-9\]+ 001d 5908\[^\n\]*\n" { set x [expr $x+1] }
341 -re "^ +\[0-9\]+ 001f FAB50100\[^\n\]*\n" { set x [expr $x+1] }
342 -re "^ +\[0-9\]+ 0023 F2E7\[^\n\]*\n" { set x [expr $x+1] }
344 timeout { perror "timeout\n"; break }
349 # This was intended to do any cleanup necessary. It kinda looks like it
350 # isn't needed, but just in case, please keep it in for now.
353 # Did we find what we were looking for? If not, flunk it.
354 if [expr $x==16] then { pass $testname } else { fail $testname }
358 set testname "mov2.s: mov2 tests"
361 gas_start "mov2.s" "-al"
363 # Instead of having a variable for each match string just increment the
364 # total number of matches seen. That's simpler when testing large numbers
365 # of instructions (as these tests to).
368 -re "^ +\[0-9\]+ 0000\[^\n\]*\n" { set x [expr $x+1] }
369 -re "^ +\[0-9\]+ 0006\[^\n\]*\n" { set x [expr $x+1] }
370 -re "^ +\[0-9\]+ 0008 318000\[^\n\]*\n" { set x [expr $x+1] }
371 -re "^ +\[0-9\]+ 000b\[^\n\]*\n" { set x [expr $x+1] }
372 -re "^ +\[0-9\]+ 0011 F006\[^\n\]*\n" { set x [expr $x+1] }
373 -re "^ +\[0-9\]+ 0013 F82608\[^\n\]*\n" { set x [expr $x+1] }
374 -re "^ +\[0-9\]+ 0016 FA260100 \[^\n\]*\n" { set x [expr $x+1] }
375 -re "^ +\[0-9\]+ 001a\[^\n\]*\n" { set x [expr $x+1] }
376 -re "^ +\[0-9\]+ 0020 5D08\[^\n\]*\n" { set x [expr $x+1] }
377 -re "^ +\[0-9\]+ 0022 FAB10100\[^\n\]*\n" { set x [expr $x+1] }
378 -re "^ +\[0-9\]+ 0026\[^\n\]*\n" { set x [expr $x+1] }
379 -re "^ +\[0-9\]+ 002c\[^\n\]*\n" { set x [expr $x+1] }
380 -re "^ +\[0-9\]+ 002e FAA18000\[^\n\]*\n" { set x [expr $x+1] }
381 -re "^ +\[0-9\]+ 0032\[^\n\]*\n" { set x [expr $x+1] }
382 -re "^ +\[0-9\]+ 0038 F8F120\[^\n\]*\n" { set x [expr $x+1] }
384 timeout { perror "timeout\n"; break }
389 # This was intended to do any cleanup necessary. It kinda looks like it
390 # isn't needed, but just in case, please keep it in for now.
393 # Did we find what we were looking for? If not, flunk it.
394 if [expr $x==15] then { pass $testname } else { fail $testname }
398 set testname "mov3.s: mov3 tests"
401 gas_start "mov3.s" "-al"
403 # Instead of having a variable for each match string just increment the
404 # total number of matches seen. That's simpler when testing large numbers
405 # of instructions (as these tests to).
408 -re "^ +\[0-9\]+ 0000 66\[^\n\]*\n" { set x [expr $x+1] }
409 -re "^ +\[0-9\]+ 0001 F81620\[^\n\]*\n" { set x [expr $x+1] }
410 -re "^ +\[0-9\]+ 0004 FA160100\[^\n\]*\n" { set x [expr $x+1] }
411 -re "^ +\[0-9\]+ 0008\[^\n\]*\n" { set x [expr $x+1] }
412 -re "^ +\[0-9\]+ 000e 4620\[^\n\]*\n" { set x [expr $x+1] }
413 -re "^ +\[0-9\]+ 0010 FA958000\[^\n\]*\n" { set x [expr $x+1] }
414 -re "^ +\[0-9\]+ 0014\[^\n\]*\n" { set x [expr $x+1] }
415 -re "^ +\[0-9\]+ 001a\[^\n\]*\n" { set x [expr $x+1] }
416 -re "^ +\[0-9\]+ 001c 050080\[^\n\]*\n" { set x [expr $x+1] }
417 -re "^ +\[0-9\]+ 001f\[^\n\]*\n" { set x [expr $x+1] }
418 -re "^ +\[0-9\]+ 0025 F016\[^\n\]*\n" { set x [expr $x+1] }
419 -re "^ +\[0-9\]+ 0027 F83620\[^\n\]*\n" { set x [expr $x+1] }
420 -re "^ +\[0-9\]+ 002a FA360100\[^\n\]*\n" { set x [expr $x+1] }
421 -re "^ +\[0-9\]+ 002e\[^\n\]*\n" { set x [expr $x+1] }
422 -re "^ +\[0-9\]+ 0034 4720\[^\n\]*\n" { set x [expr $x+1] }
424 timeout { perror "timeout\n"; break }
429 # This was intended to do any cleanup necessary. It kinda looks like it
430 # isn't needed, but just in case, please keep it in for now.
433 # Did we find what we were looking for? If not, flunk it.
434 if [expr $x==15] then { pass $testname } else { fail $testname }
438 set testname "mov4.s: mov4 tests"
441 gas_start "mov4.s" "-al"
443 # Instead of having a variable for each match string just increment the
444 # total number of matches seen. That's simpler when testing large numbers
445 # of instructions (as these tests to).
448 -re "^ +\[0-9\]+ 0000 FA948000\[^\n\]*\n" { set x [expr $x+1] }
449 -re "^ +\[0-9\]+ 0004\[^\n\]*\n" { set x [expr $x+1] }
450 -re "^ +\[0-9\]+ 000a\[^\n\]*\n" { set x [expr $x+1] }
451 -re "^ +\[0-9\]+ 000c FA840080\[^\n\]*\n" { set x [expr $x+1] }
452 -re "^ +\[0-9\]+ 0010\[^\n\]*\n" { set x [expr $x+1] }
453 -re "^ +\[0-9\]+ 0016 F8F520\[^\n\]*\n" { set x [expr $x+1] }
454 -re "^ +\[0-9\]+ 0019 8508\[^\n\]*\n" { set x [expr $x+1] }
455 -re "^ +\[0-9\]+ 001b 2D0100\[^\n\]*\n" { set x [expr $x+1] }
456 -re "^ +\[0-9\]+ 001e\[^\n\]*\n" { set x [expr $x+1] }
457 -re "^ +\[0-9\]+ 0024 9508\[^\n\]*\n" { set x [expr $x+1] }
458 -re "^ +\[0-9\]+ 0026 250100\[^\n\]*\n" { set x [expr $x+1] }
459 -re "^ +\[0-9\]+ 0029\[^\n\]*\n" { set x [expr $x+1] }
461 timeout { perror "timeout\n"; break }
466 # This was intended to do any cleanup necessary. It kinda looks like it
467 # isn't needed, but just in case, please keep it in for now.
470 # Did we find what we were looking for? If not, flunk it.
471 if [expr $x==12] then { pass $testname } else { fail $testname }
475 set testname "movbu.s: movbu tests"
478 gas_start "movbu.s" "-al"
480 # Instead of having a variable for each match string just increment the
481 # total number of matches seen. That's simpler when testing large numbers
482 # of instructions (as these tests to).
485 -re "^ +\[0-9\]+ 0000 F046\[^\n\]*\n" { set x [expr $x+1] }
486 -re "^ +\[0-9\]+ 0002 F84608\[^\n\]*\n" { set x [expr $x+1] }
487 -re "^ +\[0-9\]+ 0005 FA460100\[^\n\]*\n" { set x [expr $x+1] }
488 -re "^ +\[0-9\]+ 0009\[^\n\]*\n" { set x [expr $x+1] }
489 -re "^ +\[0-9\]+ 000f F8B908\[^\n\]*\n" { set x [expr $x+1] }
490 -re "^ +\[0-9\]+ 0012 FAB90100\[^\n\]*\n" { set x [expr $x+1] }
491 -re "^ +\[0-9\]+ 0016\[^\n\]*\n" { set x [expr $x+1] }
492 -re "^ +\[0-9\]+ 001c\[^\n\]*\n" { set x [expr $x+1] }
493 -re "^ +\[0-9\]+ 001e 358000\[^\n\]*\n" { set x [expr $x+1] }
494 -re "^ +\[0-9\]+ 0021\[^\n\]*\n" { set x [expr $x+1] }
495 -re "^ +\[0-9\]+ 0027 F056\[^\n\]*\n" { set x [expr $x+1] }
496 -re "^ +\[0-9\]+ 0029 F85620\[^\n\]*\n" { set x [expr $x+1] }
497 -re "^ +\[0-9\]+ 002c FA560100\[^\n\]*\n" { set x [expr $x+1] }
498 -re "^ +\[0-9\]+ 0030\[^\n\]*\n" { set x [expr $x+1] }
499 -re "^ +\[0-9\]+ 0036 F89620\[^\n\]*\n" { set x [expr $x+1] }
500 -re "^ +\[0-9\]+ 0039 FA968000\[^\n\]*\n" { set x [expr $x+1] }
501 -re "^ +\[0-9\]+ 003d\[^\n\]*\n" { set x [expr $x+1] }
502 -re "^ +\[0-9\]+ 0043\[^\n\]*\n" { set x [expr $x+1] }
503 -re "^ +\[0-9\]+ 0045 060080\[^\n\]*\n" { set x [expr $x+1] }
504 -re "^ +\[0-9\]+ 0048\[^\n\]*\n" { set x [expr $x+1] }
506 timeout { perror "timeout\n"; break }
511 # This was intended to do any cleanup necessary. It kinda looks like it
512 # isn't needed, but just in case, please keep it in for now.
515 # Did we find what we were looking for? If not, flunk it.
516 if [expr $x==20] then { pass $testname } else { fail $testname }
520 set testname "movhu.s: movhu tests"
523 gas_start "movhu.s" "-al"
525 # Instead of having a variable for each match string just increment the
526 # total number of matches seen. That's simpler when testing large numbers
527 # of instructions (as these tests to).
530 -re "^ +\[0-9\]+ 0000 F066\[^\n\]*\n" { set x [expr $x+1] }
531 -re "^ +\[0-9\]+ 0002 F86608\[^\n\]*\n" { set x [expr $x+1] }
532 -re "^ +\[0-9\]+ 0005 FA660100\[^\n\]*\n" { set x [expr $x+1] }
533 -re "^ +\[0-9\]+ 0009\[^\n\]*\n" { set x [expr $x+1] }
534 -re "^ +\[0-9\]+ 000f F8BD08\[^\n\]*\n" { set x [expr $x+1] }
535 -re "^ +\[0-9\]+ 0012 FABD0100\[^\n\]*\n" { set x [expr $x+1] }
536 -re "^ +\[0-9\]+ 0016\[^\n\]*\n" { set x [expr $x+1] }
537 -re "^ +\[0-9\]+ 001c\[^\n\]*\n" { set x [expr $x+1] }
538 -re "^ +\[0-9\]+ 001e 398000\[^\n\]*\n" { set x [expr $x+1] }
539 -re "^ +\[0-9\]+ 0021\[^\n\]*\n" { set x [expr $x+1] }
540 -re "^ +\[0-9\]+ 0027 F076\[^\n\]*\n" { set x [expr $x+1] }
541 -re "^ +\[0-9\]+ 0029 F87620\[^\n\]*\n" { set x [expr $x+1] }
542 -re "^ +\[0-9\]+ 002c FA760100\[^\n\]*\n" { set x [expr $x+1] }
543 -re "^ +\[0-9\]+ 0030\[^\n\]*\n" { set x [expr $x+1] }
544 -re "^ +\[0-9\]+ 0036 F89720\[^\n\]*\n" { set x [expr $x+1] }
545 -re "^ +\[0-9\]+ 0039 FA978000\[^\n\]*\n" { set x [expr $x+1] }
546 -re "^ +\[0-9\]+ 003d\[^\n\]*\n" { set x [expr $x+1] }
547 -re "^ +\[0-9\]+ 0043\[^\n\]*\n" { set x [expr $x+1] }
548 -re "^ +\[0-9\]+ 0045 070080\[^\n\]*\n" { set x [expr $x+1] }
549 -re "^ +\[0-9\]+ 0048\[^\n\]*\n" { set x [expr $x+1] }
551 timeout { perror "timeout\n"; break }
556 # This was intended to do any cleanup necessary. It kinda looks like it
557 # isn't needed, but just in case, please keep it in for now.
560 # Did we find what we were looking for? If not, flunk it.
561 if [expr $x==20] then { pass $testname } else { fail $testname }
565 set testname "movm.s: movm tests"
568 gas_start "movm.s" "-al"
570 # Instead of having a variable for each match string just increment the
571 # total number of matches seen. That's simpler when testing large numbers
572 # of instructions (as these tests to).
575 -re "^ +\[0-9\]+ 0000 CE00\[^\n\]*\n" { set x [expr $x+1] }
576 -re "^ +\[0-9\]+ 0002 CE0B\[^\n\]*\n" { set x [expr $x+1] }
577 -re "^ +\[0-9\]+ 0004 CF00\[^\n\]*\n" { set x [expr $x+1] }
578 -re "^ +\[0-9\]+ 0006 CF0B\[^\n\]*\n" { set x [expr $x+1] }
580 timeout { perror "timeout\n"; break }
585 # This was intended to do any cleanup necessary. It kinda looks like it
586 # isn't needed, but just in case, please keep it in for now.
589 # Did we find what we were looking for? If not, flunk it.
590 if [expr $x==4] then { pass $testname } else { fail $testname }
594 set testname "muldiv.s: muldiv tests"
597 gas_start "muldiv.s" "-al"
599 # Instead of having a variable for each match string just increment the
600 # total number of matches seen. That's simpler when testing large numbers
601 # of instructions (as these tests to).
604 -re "^ +\[0-9\]+ 0000 F246\[^\n\]*\n" { set x [expr $x+1] }
605 -re "^ +\[0-9\]+ 0002 F25B\[^\n\]*\n" { set x [expr $x+1] }
606 -re "^ +\[0-9\]+ 0004 F26F\[^\n\]*\n" { set x [expr $x+1] }
607 -re "^ +\[0-9\]+ 0006 F27E\[^\n\]*\n" { set x [expr $x+1] }
609 timeout { perror "timeout\n"; break }
614 # This was intended to do any cleanup necessary. It kinda looks like it
615 # isn't needed, but just in case, please keep it in for now.
618 # Did we find what we were looking for? If not, flunk it.
619 if [expr $x==4] then { pass $testname } else { fail $testname }
623 set testname "other.s: other tests"
626 gas_start "other.s" "-al"
628 # Instead of having a variable for each match string just increment the
629 # total number of matches seen. That's simpler when testing large numbers
630 # of instructions (as these tests to).
633 -re "^ +\[0-9\]+ 0000 08\[^\n\]*\n" { set x [expr $x+1] }
634 -re "^ +\[0-9\]+ 0001 44\[^\n\]*\n" { set x [expr $x+1] }
635 -re "^ +\[0-9\]+ 0002 49\[^\n\]*\n" { set x [expr $x+1] }
636 -re "^ +\[0-9\]+ 0003 53\[^\n\]*\n" { set x [expr $x+1] }
637 -re "^ +\[0-9\]+ 0004 F0F6\[^\n\]*\n" { set x [expr $x+1] }
638 -re "^ +\[0-9\]+ 0006 CC0100\[^\n\]*\n" { set x [expr $x+1] }
639 -re "^ +\[0-9\]+ 0009\[^\n\]*\n" { set x [expr $x+1] }
640 -re "^ +\[0-9\]+ 000e\[^\n\]*\n" { set x [expr $x+1] }
641 -re "^ +\[0-9\]+ 0013\[^\n\]*\n" { set x [expr $x+1] }
642 -re "^ +\[0-9\]+ 001a F0F2\[^\n\]*\n" { set x [expr $x+1] }
643 -re "^ +\[0-9\]+ 001c FAFF0100\[^\n\]*\n" { set x [expr $x+1] }
644 -re "^ +\[0-9\]+ 0020\[^\n\]*\n" { set x [expr $x+1] }
645 -re "^ +\[0-9\]+ 0026\[^\n\]*\n" { set x [expr $x+1] }
646 -re "^ +\[0-9\]+ 0029\[^\n\]*\n" { set x [expr $x+1] }
647 -re "^ +\[0-9\]+ 002c F0FC\[^\n\]*\n" { set x [expr $x+1] }
648 -re "^ +\[0-9\]+ 002e F0FD\[^\n\]*\n" { set x [expr $x+1] }
649 -re "^ +\[0-9\]+ 0030 F0FE\[^\n\]*\n" { set x [expr $x+1] }
650 -re "^ +\[0-9\]+ 0032 CB\[^\n\]*\n" { set x [expr $x+1] }
651 -re "^ +\[0-9\]+ 0033 F0FF\[^\n\]*\n" { set x [expr $x+1] }
653 timeout { perror "timeout\n"; break }
658 # This was intended to do any cleanup necessary. It kinda looks like it
659 # isn't needed, but just in case, please keep it in for now.
662 # Did we find what we were looking for? If not, flunk it.
663 if [expr $x==19] then { pass $testname } else { fail $testname }
667 set testname "shift.s: shift tests"
670 gas_start "shift.s" "-al"
672 # Instead of having a variable for each match string just increment the
673 # total number of matches seen. That's simpler when testing large numbers
674 # of instructions (as these tests to).
677 -re "^ +\[0-9\]+ 0000 F2B6\[^\n\]*\n" { set x [expr $x+1] }
678 -re "^ +\[0-9\]+ 0002 F8CA04\[^\n\]*\n" { set x [expr $x+1] }
679 -re "^ +\[0-9\]+ 0005 F2AB\[^\n\]*\n" { set x [expr $x+1] }
680 -re "^ +\[0-9\]+ 0007 F8C704\[^\n\]*\n" { set x [expr $x+1] }
681 -re "^ +\[0-9\]+ 000a F29E\[^\n\]*\n" { set x [expr $x+1] }
682 -re "^ +\[0-9\]+ 000c F8C204\[^\n\]*\n" { set x [expr $x+1] }
683 -re "^ +\[0-9\]+ 000f 56\[^\n\]*\n" { set x [expr $x+1] }
684 -re "^ +\[0-9\]+ 0010 F285\[^\n\]*\n" { set x [expr $x+1] }
685 -re "^ +\[0-9\]+ 0012 F282\[^\n\]*\n" { set x [expr $x+1] }
687 timeout { perror "timeout\n"; break }
692 # This was intended to do any cleanup necessary. It kinda looks like it
693 # isn't needed, but just in case, please keep it in for now.
696 # Did we find what we were looking for? If not, flunk it.
697 if [expr $x==9] then { pass $testname } else { fail $testname }
701 set testname "sub.s: sub tests"
704 gas_start "sub.s" "-al"
706 # Instead of having a variable for each match string just increment the
707 # total number of matches seen. That's simpler when testing large numbers
708 # of instructions (as these tests to).
711 -re "^ +\[0-9\]+ 0000 F106\[^\n\]*\n" { set x [expr $x+1] }
712 -re "^ +\[0-9\]+ 0002 F12B\[^\n\]*\n" { set x [expr $x+1] }
713 -re "^ +\[0-9\]+ 0004 F11F\[^\n\]*\n" { set x [expr $x+1] }
714 -re "^ +\[0-9\]+ 0006 F13E\[^\n\]*\n" { set x [expr $x+1] }
715 -re "^ +\[0-9\]+ 0008\[^\n\]*\n" { set x [expr $x+1] }
716 -re "^ +\[0-9\]+ 000e\[^\n\]*\n" { set x [expr $x+1] }
717 -re "^ +\[0-9\]+ 0014 F186\[^\n\]*\n" { set x [expr $x+1] }
719 timeout { perror "timeout\n"; break }
724 # This was intended to do any cleanup necessary. It kinda looks like it
725 # isn't needed, but just in case, please keep it in for now.
728 # Did we find what we were looking for? If not, flunk it.
729 if [expr $x==7] then { pass $testname } else { fail $testname }
732 if [istarget mn10300*-*-*] then {
733 # Test the basic instruction parser.