* gas/mn10300/am33_2.s: New test.
authorJeff Law <law@redhat.com>
Fri, 19 Jun 1998 15:47:03 +0000 (15:47 +0000)
committerJeff Law <law@redhat.com>
Fri, 19 Jun 1998 15:47:03 +0000 (15:47 +0000)
        * gas/mn10300/am33_3.s: New test.
        * gas/mn10300/basic.exp: Run them.

gas/testsuite/ChangeLog
gas/testsuite/gas/mn10300/.Sanitize
gas/testsuite/gas/mn10300/basic.exp

index b8bc580..4c5df09 100644 (file)
@@ -1,4 +1,10 @@
 start-sanitize-am33
+Fri Jun 19 09:45:17 1998  Jeffrey A Law  (law@cygnus.com)
+
+       * gas/mn10300/am33_2.s: New test.
+       * gas/mn10300/am33_3.s: New test.
+       * gas/mn10300/basic.exp: Run them.
+
 Wed Jun 17 18:14:33 1998  Jeffrey A Law  (law@cygnus.com)
 
        * gas/mn10300/am33.s: New test.
index 152e6e4..0d4e237 100644 (file)
@@ -17,7 +17,7 @@
 
 Do-first:
 
-am33_files="am33.s"
+am33_files="am33.s am33_2.s am33_3.s"
 
 if ( echo $* | grep keep\-am33 > /dev/null ) ; then
         keep_these_too="${am33_files} ${keep_these_too}"
index 914aaa1..0c266a2 100755 (executable)
@@ -35,17 +35,17 @@ proc do_add {} {
            -re "^ +\[0-9\]+ 0003 F17E\[^\n\]*\n"       { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0005 F159\[^\n\]*\n"       { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0007 2910\[^\n\]*\n"       { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0009 FAC20100\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 000d FCC30001\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +8 +FFFF\[^\n\]*\n"                  { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0009 FAC20001\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 000d FCC3FFFF\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +8 +0100\[^\n\]*\n"                  { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0013 2110\[^\n\]*\n"       { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0015 FAD20100\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0019 FCD30001\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +11 +FFFF\[^\n\]*\n"                 { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0015 FAD20001\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0019 FCD3FFFF\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +11 +0100\[^\n\]*\n"                 { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 001f F8FE10\[^\n\]*\n"     { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0022 FAFE0100\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0026 FCFE0001\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +14 +FFFF\[^\n\]*\n"                 { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0022 FAFE0001\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0026 FCFEFFFF\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +14 +0100\[^\n\]*\n"                 { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 002c F146\[^\n\]*\n"       { set x [expr $x+1] }
            -re "\[^\n\]*\n"                            { }
            timeout                             { perror "timeout\n"; break }
@@ -113,20 +113,20 @@ proc do_bit {} {
     while 1 {
        expect {
            -re "^ +\[0-9\]+ 0000 F8ED40\[^\n\]*\n"     { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0003 FAEE2000\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0007 FCEF0001\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +4 +FFFF\[^\n\]*\n"                  { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0003 FAEE0020\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0007 FCEFFFFF\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +4 +0100\[^\n\]*\n"                  { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 000d FAF90840\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0011 FE020001\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +6 +FFFF40\[^\n\]*\n"                { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0011 FE02FFFF\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +6 +010040\[^\n\]*\n"                { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0018 F086\[^\n\]*\n"       { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 001a FAF10840\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 001e FE000001\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +9 +FFFF40\[^\n\]*\n"                { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 001e FE00FFFF\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +9 +010040\[^\n\]*\n"                { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0025 F096\[^\n\]*\n"       { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0027 FAF50840\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 002b FE010001\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +12 +FFFF40\[^\n\]*\n"               { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 002b FE01FFFF\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +12 +010040\[^\n\]*\n"               { set x [expr $x+1] }
            -re "\[^\n\]*\n"                            { }
            timeout                             { perror "timeout\n"; break }
            eof                                 { break }
@@ -157,13 +157,13 @@ proc do_cmp {} {
            -re "^ +\[0-9\]+ 0003 F19F\[^\n\]*\n"       { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0005 BE\[^\n\]*\n"         { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0006 AF10\[^\n\]*\n"       { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0008 FACA0100\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 000c FCC90001\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +8 +FFFF\[^\n\]*\n"                  { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0008 FACA0001\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 000c FCC9FFFF\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +8 +0100\[^\n\]*\n"                  { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0012 BF10\[^\n\]*\n"       { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0014 FADA0100\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0018 FCD90001\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +11 +FFFF\[^\n\]*\n"                 { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0014 FADA0001\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0018 FCD9FFFF\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +11 +0100\[^\n\]*\n"                 { set x [expr $x+1] }
            -re "\[^\n\]*\n"                            { }
            timeout                             { perror "timeout\n"; break }
            eof                                 { break }
@@ -223,14 +223,14 @@ proc do_extend {} {
            -re "^ +\[0-9\]+ 0002 F6FA\[^\n\]*\n"       { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0004 F606\[^\n\]*\n"       { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0006 F90210\[^\n\]*\n"     { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0009 FB030100\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 000d FD030001\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +7 +FFFF\[^\n\]*\n"                  { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0009 FB030001\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 000d FD03FFFF\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +7 +0100\[^\n\]*\n"                  { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0013 F616\[^\n\]*\n"       { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0015 F91610\[^\n\]*\n"     { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0018 FB170100\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 001c FD170001\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +11 +FFFF\[^\n\]*\n"                 { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0018 FB170001\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 001c FD17FFFF\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +11 +0100\[^\n\]*\n"                 { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0022 F64B\[^\n\]*\n"       { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0024 F65E\[^\n\]*\n"       { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0026 F676\[^\n\]*\n"       { set x [expr $x+1] }
@@ -261,20 +261,20 @@ proc do_logical {} {
        expect {
            -re "^ +\[0-9\]+ 0000 F206\[^\n\]*\n"       { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0002 F8E27F\[^\n\]*\n"     { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0005 FAE37FFF\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0009 FCE30001\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +5 +FFFF\[^\n\]*\n"                  { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 000f FAFC7FFF\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0005 FAE3FF7F\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0009 FCE3FFFF\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +5 +0100\[^\n\]*\n"                  { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 000f FAFCFF7F\[^\n\]*\n"   { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0013 F216\[^\n\]*\n"       { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0015 F8E67F\[^\n\]*\n"     { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0018 FAE77FFF\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 001c FCE70001\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +10 +FFFF\[^\n\]*\n"                 { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0022 FAFD7FFF\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0018 FAE7FF7F\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 001c FCE7FFFF\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +10 +0100\[^\n\]*\n"                 { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0022 FAFDFF7F\[^\n\]*\n"   { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0026 F226\[^\n\]*\n"       { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0028 FAEB7FFF\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 002c FCEB0001\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +14 +FFFF\[^\n\]*\n"                 { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0028 FAEBFF7F\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 002c FCEBFFFF\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +14 +0100\[^\n\]*\n"                 { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0032 F233\[^\n\]*\n"       { set x [expr $x+1] }
            -re "^\[^\n\]*\n"                           { }
            timeout                             { perror "timeout\n"; break }
@@ -349,11 +349,11 @@ proc do_mov1 {} {
            -re "^ +\[0-9\]+ 000d F2FA\[^\n\]*\n"       { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 000f 76\[^\n\]*\n"         { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0010 F80608\[^\n\]*\n"     { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0013 FA060100\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0017 FC060001\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +14 +FFFF\[^\n\]*\n"                 { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0013 FA060001\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0017 FC06FFFF\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +14 +0100\[^\n\]*\n"                 { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 001d 5908\[^\n\]*\n"       { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 001f FAB50100\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 001f FAB50001\[^\n\]*\n"   { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0023 F2E7\[^\n\]*\n"       { set x [expr $x+1] }
            -re "\[^\n\]*\n"                            { }
            timeout                             { perror "timeout\n"; break }
@@ -380,25 +380,25 @@ proc do_mov2 {} {
     # of instructions (as these tests to).
     while 1 {
        expect {
-           -re "^ +\[0-9\]+ 0000 FCB50001\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +2 +FFFF\[^\n\]*\n"                  { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0000 FCB5FFFF\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +2 +0100\[^\n\]*\n"                  { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0006 F325\[^\n\]*\n"       { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0008 318000\[^\n\]*\n"     { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 000b FCA50001\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +5 +FFFF\[^\n\]*\n"                  { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0008 310080\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 000b FCA5FFFF\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +5 +0100\[^\n\]*\n"                  { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0011 F006\[^\n\]*\n"       { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0013 F82608\[^\n\]*\n"     { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0016 FA260100 \[^\n\]*\n"  { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 001a FC260001\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +9 +FFFF\[^\n\]*\n"                  { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0016 FA260001 \[^\n\]*\n"  { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 001a FC26FFFF\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +9 +0100\[^\n\]*\n"                  { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0020 5D08\[^\n\]*\n"       { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0022 FAB10100\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0026 FCB10001\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +12 +FFFF\[^\n\]*\n"                 { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0022 FAB10001\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0026 FCB1FFFF\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +12 +0100\[^\n\]*\n"                 { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 002c F3A5\[^\n\]*\n"       { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 002e FAA18000\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0032 FCA10001\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +15 +FFFF\[^\n\]*\n"                 { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 002e FAA10080\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0032 FCA1FFFF\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +15 +0100\[^\n\]*\n"                 { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0038 F8F120\[^\n\]*\n"     { set x [expr $x+1] }
            -re "\[^\n\]*\n"                            { }
            timeout                             { perror "timeout\n"; break }
@@ -427,22 +427,22 @@ proc do_mov3 {} {
        expect {
            -re "^ +\[0-9\]+ 0000 66\[^\n\]*\n" { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0001 F81620\[^\n\]*\n"     { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0004 FA160100\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0008 FC160001\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +5 +FFFF\[^\n\]*\n"                  { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0004 FA160001\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0008 FC16FFFF\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +5 +0100\[^\n\]*\n"                  { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 000e 4620\[^\n\]*\n"       { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0010 FA958000\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0014 FC950001\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +8 +FFFF\[^\n\]*\n"                  { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0010 FA950080\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0014 FC95FFFF\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +8 +0100\[^\n\]*\n"                  { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 001a F35A\[^\n\]*\n"       { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 001c 050080\[^\n\]*\n"     { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 001f FC850001\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +11 +FFFF\[^\n\]*\n"                 { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 001c 058000\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 001f FC85FFFF\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +11 +0100\[^\n\]*\n"                 { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0025 F016\[^\n\]*\n"       { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0027 F83620\[^\n\]*\n"     { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 002a FA360100\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 002e FC360001\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +15 +FFFF\[^\n\]*\n"                 { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 002a FA360001\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 002e FC36FFFF\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +15 +0100\[^\n\]*\n"                 { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0034 4720\[^\n\]*\n"       { set x [expr $x+1] }
            -re "\[^\n\]*\n"                            { }
            timeout                             { perror "timeout\n"; break }
@@ -469,22 +469,22 @@ proc do_mov4 {} {
     # of instructions (as these tests to).
     while 1 {
        expect {
-           -re "^ +\[0-9\]+ 0000 FA948000\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0004 FC940001\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +3 +FFFF\[^\n\]*\n"                  { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0000 FA940080\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0004 FC94FFFF\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +3 +0100\[^\n\]*\n"                  { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 000a F3DA\[^\n\]*\n"       { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 000c FA840080\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0010 FC840001\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +6 +FFFF\[^\n\]*\n"                  { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 000c FA848000\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0010 FC84FFFF\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +6 +0100\[^\n\]*\n"                  { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0016 F8F520\[^\n\]*\n"     { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0019 8508\[^\n\]*\n"       { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 001b 2D0100\[^\n\]*\n"     { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 001e FCCD0001\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +10 +FFFF\[^\n\]*\n"                 { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 001b 2D0001\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 001e FCCDFFFF\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +10 +0100\[^\n\]*\n"                 { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0024 9508\[^\n\]*\n"       { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0026 250100\[^\n\]*\n"     { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0029 FCDD0001\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +13 +FFFF\[^\n\]*\n"                 { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0026 250001\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0029 FCDDFFFF\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +13 +0100\[^\n\]*\n"                 { set x [expr $x+1] }
            -re "\[^\n\]*\n"                            { }
            timeout                             { perror "timeout\n"; break }
            eof                                 { break }
@@ -512,30 +512,30 @@ proc do_movbu {} {
        expect {
            -re "^ +\[0-9\]+ 0000 F046\[^\n\]*\n"       { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0002 F84608\[^\n\]*\n"     { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0005 FA460100\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0009 FC460001\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +5 +FFFF\[^\n\]*\n"                  { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0005 FA460001\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0009 FC46FFFF\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +5 +0100\[^\n\]*\n"                  { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 000f F8B908\[^\n\]*\n"     { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0012 FAB90100\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0016 FCB90001\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +8 +FFFF\[^\n\]*\n"                  { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0012 FAB90001\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0016 FCB9FFFF\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +8 +0100\[^\n\]*\n"                  { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 001c F425\[^\n\]*\n"       { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 001e 358000\[^\n\]*\n"     { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0021 FCA90001\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +11 +FFFF\[^\n\]*\n"                 { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 001e 350080\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0021 FCA9FFFF\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +11 +0100\[^\n\]*\n"                 { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0027 F056\[^\n\]*\n"       { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0029 F85620\[^\n\]*\n"     { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 002c FA560100\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0030 FC560001\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +15 +FFFF\[^\n\]*\n"                 { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 002c FA560001\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0030 FC56FFFF\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +15 +0100\[^\n\]*\n"                 { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0036 F89620\[^\n\]*\n"     { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0039 FA968000\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 003d FC960001\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +18 +FFFF\[^\n\]*\n"                 { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0039 FA960080\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 003d FC96FFFF\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +18 +0100\[^\n\]*\n"                 { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0043 F45A\[^\n\]*\n"       { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0045 060080\[^\n\]*\n"     { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0048 FC860001\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +21 +FFFF\[^\n\]*\n"                 { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0045 068000\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0048 FC86FFFF\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +21 +0100\[^\n\]*\n"                 { set x [expr $x+1] }
            -re "\[^\n\]*\n"                            { }
            timeout                             { perror "timeout\n"; break }
            eof                                 { break }
@@ -563,30 +563,30 @@ proc do_movhu {} {
        expect {
            -re "^ +\[0-9\]+ 0000 F066\[^\n\]*\n"       { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0002 F86608\[^\n\]*\n"     { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0005 FA660100\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0009 FC660001\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +5 +FFFF\[^\n\]*\n"                  { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0005 FA660001\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0009 FC66FFFF\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +5 +0100\[^\n\]*\n"                  { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 000f F8BD08\[^\n\]*\n"     { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0012 FABD0100\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0016 FCBD0001\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +8 +FFFF\[^\n\]*\n"                  { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0012 FABD0001\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0016 FCBDFFFF\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +8 +0100\[^\n\]*\n"                  { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 001c F4A5\[^\n\]*\n"       { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 001e 398000\[^\n\]*\n"     { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0021 FCAD0001\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +11 +FFFF\[^\n\]*\n"                 { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 001e 390080\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0021 FCADFFFF\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +11 +0100\[^\n\]*\n"                 { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0027 F076\[^\n\]*\n"       { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0029 F87620\[^\n\]*\n"     { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 002c FA760100\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0030 FC760001\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +15 +FFFF\[^\n\]*\n"                 { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 002c FA760001\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0030 FC76FFFF\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +15 +0100\[^\n\]*\n"                 { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0036 F89720\[^\n\]*\n"     { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0039 FA978000\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 003d FC970001\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +18 +FFFF\[^\n\]*\n"                 { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0039 FA970080\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 003d FC97FFFF\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +18 +0100\[^\n\]*\n"                 { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0043 F4DA\[^\n\]*\n"       { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0045 070080\[^\n\]*\n"     { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0048 FC870001\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +21 +FFFF\[^\n\]*\n"                 { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0045 078000\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0048 FC87FFFF\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +21 +0100\[^\n\]*\n"                 { set x [expr $x+1] }
            -re "\[^\n\]*\n"                            { }
            timeout                             { perror "timeout\n"; break }
            eof                                 { break }
@@ -675,19 +675,19 @@ proc do_other {} {
            -re "^ +\[0-9\]+ 0002 49\[^\n\]*\n"         { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0003 53\[^\n\]*\n"         { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0004 F0F6\[^\n\]*\n"       { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0006 CC0100\[^\n\]*\n"     { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0009 DC0001FF\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +8 +FF\[^\n\]*\n"                    { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 000e CD010005\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0006 CC0001\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0009 DCFFFF01\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +8 +00\[^\n\]*\n"                    { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 000e CD000130\[^\n\]*\n"   { set x [expr $x+1] }
            -re "^ +9 +09\[^\n\]*\n"                    { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0013 DD0001FF\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +10 +FF0920\[^\n\]*\n"               { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0013 DDFFFF01\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +10 +003020\[^\n\]*\n"               { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 001a F0F2\[^\n\]*\n"       { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 001c FAFF0100\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0020 FCFF0001\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +13 +FFFF\[^\n\]*\n"                 { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0026 DF0F07\[^\n\]*\n"     { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0029 DE0905\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 001c FAFF0001\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0020 FCFFFFFF\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +13 +0100\[^\n\]*\n"                 { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0026 DF3007\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0029 DE3005\[^\n\]*\n"     { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 002c F0FC\[^\n\]*\n"       { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 002e F0FD\[^\n\]*\n"       { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0030 F0FE\[^\n\]*\n"       { set x [expr $x+1] }
@@ -756,10 +756,10 @@ proc do_sub {} {
            -re "^ +\[0-9\]+ 0002 F12B\[^\n\]*\n"       { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0004 F11F\[^\n\]*\n"       { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0006 F13E\[^\n\]*\n"       { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 0008 FCC60001 \[^\n\]*\n"  { set x [expr $x+1] }
-           -re "^ +6 +FFFF\[^\n\]*\n"                  { set x [expr $x+1] }
-           -re "^ +\[0-9\]+ 000e FCD50001\[^\n\]*\n"   { set x [expr $x+1] }
-           -re "^ +7 +FFFF\[^\n\]*\n"                  { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0008 FCC6FFFF \[^\n\]*\n"  { set x [expr $x+1] }
+           -re "^ +6 +0100\[^\n\]*\n"                  { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 000e FCD5FFFF\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +7 +0100\[^\n\]*\n"                  { set x [expr $x+1] }
            -re "^ +\[0-9\]+ 0014 F186\[^\n\]*\n"       { set x [expr $x+1] }
            -re "\[^\n\]*\n"                            { }
            timeout                             { perror "timeout\n"; break }
@@ -775,6 +775,244 @@ proc do_sub {} {
     if [expr $x==9] then { pass $testname } else { fail $testname }
 }
 
+# start-sanitize-am33
+proc do_am33_1 {} {
+    set testname "am33.s: am33 tests part 1"
+    set x 0
+
+    gas_start "am33.s" "-al"
+
+    # Instead of having a variable for each match string just increment the
+    # total number of matches seen.  That's simpler when testing large numbers
+    # of instructions (as these tests to).
+    while 1 {
+       expect {
+           -re "^ +\[0-9\]+ 0000 CD000134\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +3 +09\[^\n\]*\n"                    { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0005 CD000132\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +4 +09\[^\n\]*\n"                    { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 000a CD000131\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +5 +09\[^\n\]*\n"                    { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 000f CD0001FF\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +6 +09\[^\n\]*\n"                    { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0014 DDFFFF01\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +7 +003409\[^\n\]*\n"                { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 001b DDFFFF01\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +8 +003209\[^\n\]*\n"                { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0022 DDFFFF01\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +9 +003109\[^\n\]*\n"                { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0029 DDFFFF01\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +10 +00FF09\[^\n\]*\n"               { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0030 CE34\[^\n\]*\n"       { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0032 CE32\[^\n\]*\n"       { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0034 CE31\[^\n\]*\n"       { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0036 CEFF\[^\n\]*\n"       { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0038 CF34\[^\n\]*\n"       { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 003a CF32\[^\n\]*\n"       { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 003c CF31\[^\n\]*\n"       { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 003e CFFF\[^\n\]*\n"       { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0040 F8CE34\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0043 F8CE32\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0046 F8CE31\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0049 F8CEFF\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 004c F8CF34\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 004f F8CF32\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0052 F8CF31\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0055 F8CFFF\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0058 F020\[^\n\]*\n"       { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 005a F025\[^\n\]*\n"       { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 005c F02A\[^\n\]*\n"       { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 005e F02F\[^\n\]*\n"       { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0060 F030\[^\n\]*\n"       { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0062 F035\[^\n\]*\n"       { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0064 F03A\[^\n\]*\n"       { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0066 F0E4\[^\n\]*\n"       { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0068 F2EC\[^\n\]*\n"       { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 006a F2F5\[^\n\]*\n"       { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 006c F501\[^\n\]*\n"       { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 006e F563\[^\n\]*\n"       { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0070 F595\[^\n\]*\n"       { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0072 F5DF\[^\n\]*\n"       { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0074 F630\[^\n\]*\n"       { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0076 F665\[^\n\]*\n"       { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0078 F6C0\[^\n\]*\n"       { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 007a F6D5\[^\n\]*\n"       { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 007c FCFC0000\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +45 +0200\[^\n\]*\n"         { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0082 FCFDFFFF\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +46 +0000\[^\n\]*\n"         { set x [expr $x+1] }
+           -re "\[^\n\]*\n"                            { }
+           timeout                             { perror "timeout\n"; break }
+           eof                                 { break }
+       }
+    }
+
+    # This was intended to do any cleanup necessary.  It kinda looks like it
+    # isn't needed, but just in case, please keep it in for now.
+    gas_finish
+
+    # Did we find what we were looking for?  If not, flunk it.
+    if [expr $x==54] then { pass $testname } else { fail $testname }
+}
+
+proc do_am33_2 {} {
+    set testname "am33_2.s: am33 tests part 2"
+    set x 0
+
+    gas_start "am33_2.s" "-al"
+
+    # Instead of having a variable for each match string just increment the
+    # total number of matches seen.  That's simpler when testing large numbers
+    # of instructions (as these tests to).
+    while 1 {
+       expect {
+           -re "^ +\[0-9\]+ 0000 F90801\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0003 F91822\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0006 F92834\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0009 F93845\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 000c F94867\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 000f F95878\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0012 F96899\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0015 F978AB\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0018 F988CD\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 001b F998EF\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 001e F9A8FE\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0021 F9B8DD\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0024 F9C8CC\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0027 F9D8BA\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 002a F9E801\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 002d F9F812\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0030 F90901\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0033 F91923\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0036 F92945\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0039 F93966\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 003c F94978\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 003f F9599A\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0042 F969BC\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0045 F979DD\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0048 F989EE\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 004b F999FF\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 004e F9A912\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0051 F9B934\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0054 F9C956\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0057 F9D978\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 005a F90A21\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 005d F91A34\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0060 F92A65\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0063 F93A78\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0066 F94AA9\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0069 F95ABC\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 006c CB\[^\n\]*\n" { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 006d CB\[^\n\]*\n" { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 006e CB\[^\n\]*\n" { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 006f CB\[^\n\]*\n" { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0070 CB\[^\n\]*\n" { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0071 CB\[^\n\]*\n" { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0072 F98A50\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0075 F99A60\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0078 F9AA70\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 007b F9BA80\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 007e F9CA90\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0081 F9DAA0\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0084 CB\[^\n\]*\n" { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0085 CB\[^\n\]*\n" { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0086 CB\[^\n\]*\n" { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0087 CB\[^\n\]*\n" { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0088 CB\[^\n\]*\n" { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0089 CB\[^\n\]*\n" { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 008a F90B12\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 008d F91B34\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0090 F92B56\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0093 F93B78\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0096 F94B9A\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0099 F95BBC\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 009c F96BDE\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 009f F97BFE\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 00a2 F98BDC\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 00a5 F99BBA\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 00a8 F9AB98\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 00ab F9BB76\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 00ae F9CB54\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 00b1 F9DB32\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 00b4 F9EB10\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 00b7 F9FB12\[^\n\]*\n"     { set x [expr $x+1] }
+           -re "\[^\n\]*\n"                            { }
+           timeout                             { perror "timeout\n"; break }
+           eof                                 { break }
+       }
+    }
+
+    # This was intended to do any cleanup necessary.  It kinda looks like it
+    # isn't needed, but just in case, please keep it in for now.
+    gas_finish
+
+    # Did we find what we were looking for?  If not, flunk it.
+    if [expr $x==70] then { pass $testname } else { fail $testname }
+}
+
+proc do_am33_3 {} {
+    set testname "am33_3.s: am33 tests part 3"
+    set x 0
+
+    gas_start "am33_3.s" "-al"
+
+    # Instead of having a variable for each match string just increment the
+    # total number of matches seen.  That's simpler when testing large numbers
+    # of instructions (as these tests to).
+    while 1 {
+       expect {
+           -re "^ +\[0-9\]+ 0000 FB081110\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0004 FB181110\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0008 FB781110\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 000c FB881110\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0010 FB981110\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0014 FBA81110\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0018 FBD81110\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 001c FBF81110\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0020 FB091110\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0024 FB191110\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0028 FB291110\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 002c FB491110\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0030 FB591110\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0034 FB691110\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0038 FBA91110\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 003c FBB91110\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0040 FBE91110\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0044 FB0A2110\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0048 FB1A2110\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 004c FB2A2110\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0050 FB3A2110\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0054 FB4A2110\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0058 FB5A2110\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 005c FB8A2010\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0060 FB9A2010\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0064 FBAA2010\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0068 FBBA2010\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 006c FBCA2010\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0070 FBDA2010\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0074 FB0B1110\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0078 FB1B1110\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 007c FB2B1110\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0080 FB3B1110\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0084 FB4B1110\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0088 FB5B1110\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 008c FBBB1110\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "^ +\[0-9\]+ 0090 FB7C1230\[^\n\]*\n"   { set x [expr $x+1] }
+           -re "\[^\n\]*\n"                            { }
+           timeout                             { perror "timeout\n"; break }
+           eof                                 { break }
+       }
+    }
+
+    # This was intended to do any cleanup necessary.  It kinda looks like it
+    # isn't needed, but just in case, please keep it in for now.
+    gas_finish
+
+    # Did we find what we were looking for?  If not, flunk it.
+    if [expr $x==36] then { pass $testname } else { fail $testname }
+}
+# end-sanitize-am33
+
 if [istarget mn10300*-*-*] then {
     # Test the basic instruction parser.
     do_add
@@ -796,4 +1034,9 @@ if [istarget mn10300*-*-*] then {
     do_other
     do_shift
     do_sub
+# start-sanitize-am33
+    do_am33_1
+    do_am33_2
+    do_am33_3
+# end-sanitize-am33
 }