# Copyright (C) 2012-2014 Free Software Foundation, Inc.

# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
# 
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
# 
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.  

#
# Some h8300sx tests -- t02_mova
#

proc do_t02_mova_test {} {
    set testname "t02_mova.s -- h8sx mova tests"

    gas_start "t02_mova.s" "-al"

    # Check each instruction bit pattern to verify it got assembled correctly.

    set x 0
    expect {
	-re ".*   7 0000 78B87A89" { set x [expr $x+1]; exp_continue; }
	-re ".*   7      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*   8 0006 78397A99" { set x [expr $x+1]; exp_continue; }
	-re ".*   8      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*   9 000c 78B87AA9" { set x [expr $x+1]; exp_continue; }
	-re ".*   9      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  10 0012 78397AB9" { set x [expr $x+1]; exp_continue; }
	-re ".*  10      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  11 0018 78B87AC9" { set x [expr $x+1]; exp_continue; }
	-re ".*  11      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  12 001e 78397AD9" { set x [expr $x+1]; exp_continue; }
	-re ".*  12      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  13 0024 78B87A81" { set x [expr $x+1]; exp_continue; }
	-re ".*  13      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".*  14 002c 78397A91" { set x [expr $x+1]; exp_continue; }
	-re ".*  14      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".*  15 0034 78B87AA1" { set x [expr $x+1]; exp_continue; }
	-re ".*  15      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".*  16 003c 78397AB1" { set x [expr $x+1]; exp_continue; }
	-re ".*  16      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".*  17 0044 78B87AC1" { set x [expr $x+1]; exp_continue; }
	-re ".*  17      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".*  18 004c 78397AD1" { set x [expr $x+1]; exp_continue; }
	-re ".*  18      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".*  19              " {
	    if [expr $x == 24] then {
		pass "$testname: a"
	    } else {
		fail "$testname: a ($x)"
	    }
	}
        default	{ fail "$testname: a ($x)" }
    }

    set x 0
    expect {
	-re ".*  20 0054 78B87A89" { set x [expr $x+1]; exp_continue; }
	-re ".*  20      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  21 005a 78397A99" { set x [expr $x+1]; exp_continue; }
	-re ".*  21      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  22 0060 78B87AA9" { set x [expr $x+1]; exp_continue; }
	-re ".*  22      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  23 0066 78397AB9" { set x [expr $x+1]; exp_continue; }
	-re ".*  23      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  24 006c 78B87AC9" { set x [expr $x+1]; exp_continue; }
	-re ".*  24      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  25 0072 78397AD9" { set x [expr $x+1]; exp_continue; }
	-re ".*  25      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  26 0078 78B87A81" { set x [expr $x+1]; exp_continue; }
	-re ".*  26      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".*  27 0080 78397A91" { set x [expr $x+1]; exp_continue; }
	-re ".*  27      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".*  28 0088 78B87AA1" { set x [expr $x+1]; exp_continue; }
	-re ".*  28      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".*  29 0090 78397AB1" { set x [expr $x+1]; exp_continue; }
	-re ".*  29      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".*  30 0098 78B87AC1" { set x [expr $x+1]; exp_continue; }
	-re ".*  30      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".*  31 00a0 78397AD1" { set x [expr $x+1]; exp_continue; }
	-re ".*  31      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".*  32              " {
	    if [expr $x == 24] then {
		pass "$testname: b"
	    } else {
		fail "$testname: b ($x)"
	    }
	}
        default	{ fail "$testname: b ($x)" }
    }

    set x 0
    expect {
	-re ".*  33 00a8 017F0281" { set x [expr $x+1]; exp_continue; }
	-re ".*  33      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  34 00ae 017F1281" { set x [expr $x+1]; exp_continue; }
	-re ".*  34      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  35 00b4 017F8281" { set x [expr $x+1]; exp_continue; }
	-re ".*  35      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  36 00ba 017FB281" { set x [expr $x+1]; exp_continue; }
	-re ".*  36      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  37 00c0 017F9281" { set x [expr $x+1]; exp_continue; }
	-re ".*  37      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  38 00c6 017FA281" { set x [expr $x+1]; exp_continue; }
	-re ".*  38      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  39 00cc 017FC281" { set x [expr $x+1]; exp_continue; }
	-re ".*  39      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".*  40 00d4 017FCA81" { set x [expr $x+1]; exp_continue; }
	-re ".*  40      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".*  40      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  41 00de 017FD281" { set x [expr $x+1]; exp_continue; }
	-re ".*  41      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".*  42 00e6 017FE281" { set x [expr $x+1]; exp_continue; }
	-re ".*  42      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".*  43 00ee 017FF281" { set x [expr $x+1]; exp_continue; }
	-re ".*  43      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".*  44 00f6 017FDA81" { set x [expr $x+1]; exp_continue; }
	-re ".*  44      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".*  44      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  45 0100 017FEA81" { set x [expr $x+1]; exp_continue; }
	-re ".*  45      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".*  45      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  46 010a 017FFA81" { set x [expr $x+1]; exp_continue; }
	-re ".*  46      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".*  46      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  47 0114 017F4081" { set x [expr $x+1]; exp_continue; }
	-re ".*  47      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".*  48 011c 017F4881" { set x [expr $x+1]; exp_continue; }
	-re ".*  48      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".*  48      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  49              " {
	    if [expr $x == 37] then {
		pass "$testname: c"
	    } else {
		fail "$testname: c ($x)"
	    }
	}
        default	{ fail "$testname: c ($x)" }
    }

    set x 0
    expect {
	-re ".*  50 0126 015F0291" { set x [expr $x+1]; exp_continue; }
	-re ".*  50      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  51 012c 015F1291" { set x [expr $x+1]; exp_continue; }
	-re ".*  51      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  52 0132 015F8291" { set x [expr $x+1]; exp_continue; }
	-re ".*  52      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  53 0138 015FB291" { set x [expr $x+1]; exp_continue; }
	-re ".*  53      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  54 013e 015F9291" { set x [expr $x+1]; exp_continue; }
	-re ".*  54      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  55 0144 015FA291" { set x [expr $x+1]; exp_continue; }
	-re ".*  55      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  56 014a 015FC291" { set x [expr $x+1]; exp_continue; }
	-re ".*  56      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".*  57 0152 015FCA91" { set x [expr $x+1]; exp_continue; }
	-re ".*  57      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".*  57      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  58 015c 015FD291" { set x [expr $x+1]; exp_continue; }
	-re ".*  58      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".*  59 0164 015FE291" { set x [expr $x+1]; exp_continue; }
	-re ".*  59      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".*  60 016c 015FF291" { set x [expr $x+1]; exp_continue; }
	-re ".*  60      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".*  61 0174 015FDA91" { set x [expr $x+1]; exp_continue; }
	-re ".*  61      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".*  61      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  62 017e 015FEA91" { set x [expr $x+1]; exp_continue; }
	-re ".*  62      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".*  62      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  63 0188 015FFA91" { set x [expr $x+1]; exp_continue; }
	-re ".*  63      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".*  63      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  64 0192 015F4091" { set x [expr $x+1]; exp_continue; }
	-re ".*  64      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".*  65 019a 015F4891" { set x [expr $x+1]; exp_continue; }
	-re ".*  65      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".*  65      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  66              " {
	    if [expr $x == 37] then {
		pass "$testname: d"
	    } else {
		fail "$testname: d ($x)"
	    }
	}
        default	{ fail "$testname: d ($x)" }
    }

    set x 0
    expect {
	-re ".*  67 01a4 017F02A1" { set x [expr $x+1]; exp_continue; }
	-re ".*  67      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  68 01aa 017F12A1" { set x [expr $x+1]; exp_continue; }
	-re ".*  68      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  69 01b0 017F82A1" { set x [expr $x+1]; exp_continue; }
	-re ".*  69      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  70 01b6 017FB2A1" { set x [expr $x+1]; exp_continue; }
	-re ".*  70      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  71 01bc 017F92A1" { set x [expr $x+1]; exp_continue; }
	-re ".*  71      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  72 01c2 017FA2A1" { set x [expr $x+1]; exp_continue; }
	-re ".*  72      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  73 01c8 017FC2A1" { set x [expr $x+1]; exp_continue; }
	-re ".*  73      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".*  74 01d0 017FCAA1" { set x [expr $x+1]; exp_continue; }
	-re ".*  74      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".*  74      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  75 01da 017FD2A1" { set x [expr $x+1]; exp_continue; }
	-re ".*  75      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".*  76 01e2 017FE2A1" { set x [expr $x+1]; exp_continue; }
	-re ".*  76      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".*  77 01ea 017FF2A1" { set x [expr $x+1]; exp_continue; }
	-re ".*  77      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".*  78 01f2 017FDAA1" { set x [expr $x+1]; exp_continue; }
	-re ".*  78      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".*  78      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  79 01fc 017FEAA1" { set x [expr $x+1]; exp_continue; }
	-re ".*  79      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".*  79      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  80 0206 017FFAA1" { set x [expr $x+1]; exp_continue; }
	-re ".*  80      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".*  80      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  81 0210 017F40A1" { set x [expr $x+1]; exp_continue; }
	-re ".*  81      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".*  82 0218 017F48A1" { set x [expr $x+1]; exp_continue; }
	-re ".*  82      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".*  82      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  83              " {
	    if [expr $x == 37] then {
		pass "$testname: e"
	    } else {
		fail "$testname: e ($x)"
	    }
	}
        default	{ fail "$testname: e ($x)" }
    }

    set x 0
    expect {
	-re ".*  84 0222 015F02B1" { set x [expr $x+1]; exp_continue; }
	-re ".*  84      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  85 0228 015F12B1" { set x [expr $x+1]; exp_continue; }
	-re ".*  85      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  86 022e 015F82B1" { set x [expr $x+1]; exp_continue; }
	-re ".*  86      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  87 0234 015FB2B1" { set x [expr $x+1]; exp_continue; }
	-re ".*  87      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  88 023a 015F92B1" { set x [expr $x+1]; exp_continue; }
	-re ".*  88      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  89 0240 015FA2B1" { set x [expr $x+1]; exp_continue; }
	-re ".*  89      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  90 0246 015FC2B1" { set x [expr $x+1]; exp_continue; }
	-re ".*  90      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".*  91 024e 015FCAB1" { set x [expr $x+1]; exp_continue; }
	-re ".*  91      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".*  91      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  92 0258 015FD2B1" { set x [expr $x+1]; exp_continue; }
	-re ".*  92      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".*  93 0260 015FE2B1" { set x [expr $x+1]; exp_continue; }
	-re ".*  93      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".*  94 0268 015FF2B1" { set x [expr $x+1]; exp_continue; }
	-re ".*  94      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".*  95 0270 015FDAB1" { set x [expr $x+1]; exp_continue; }
	-re ".*  95      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".*  95      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  96 027a 015FEAB1" { set x [expr $x+1]; exp_continue; }
	-re ".*  96      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".*  96      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  97 0284 015FFAB1" { set x [expr $x+1]; exp_continue; }
	-re ".*  97      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".*  97      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".*  98 028e 015F40B1" { set x [expr $x+1]; exp_continue; }
	-re ".*  98      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".*  99 0296 015F48B1" { set x [expr $x+1]; exp_continue; }
	-re ".*  99      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".*  99      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".* 100              " {
	    if [expr $x == 37] then {
		pass "$testname: f"
	    } else {
		fail "$testname: f ($x)"
	    }
	}
        default	{ fail "$testname: f ($x)" }
    }

    set x 0
    expect {
	-re ".* 101 02a0 017F02C1" { set x [expr $x+1]; exp_continue; }
	-re ".* 101      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".* 102 02a6 017F12C1" { set x [expr $x+1]; exp_continue; }
	-re ".* 102      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".* 103 02ac 017F82C1" { set x [expr $x+1]; exp_continue; }
	-re ".* 103      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".* 104 02b2 017FB2C1" { set x [expr $x+1]; exp_continue; }
	-re ".* 104      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".* 105 02b8 017F92C1" { set x [expr $x+1]; exp_continue; }
	-re ".* 105      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".* 106 02be 017FA2C1" { set x [expr $x+1]; exp_continue; }
	-re ".* 106      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".* 107 02c4 017FC2C1" { set x [expr $x+1]; exp_continue; }
	-re ".* 107      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".* 108 02cc 017FCAC1" { set x [expr $x+1]; exp_continue; }
	-re ".* 108      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".* 108      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".* 109 02d6 017FD2C1" { set x [expr $x+1]; exp_continue; }
	-re ".* 109      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".* 110 02de 017FE2C1" { set x [expr $x+1]; exp_continue; }
	-re ".* 110      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".* 111 02e6 017FF2C1" { set x [expr $x+1]; exp_continue; }
	-re ".* 111      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".* 112 02ee 017FDAC1" { set x [expr $x+1]; exp_continue; }
	-re ".* 112      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".* 112      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".* 113 02f8 017FEAC1" { set x [expr $x+1]; exp_continue; }
	-re ".* 113      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".* 113      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".* 114 0302 017FFAC1" { set x [expr $x+1]; exp_continue; }
	-re ".* 114      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".* 114      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".* 115 030c 017F40C1" { set x [expr $x+1]; exp_continue; }
	-re ".* 115      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".* 116 0314 017F48C1" { set x [expr $x+1]; exp_continue; }
	-re ".* 116      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".* 116      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".* 117              " {
	    if [expr $x == 37] then {
		pass "$testname: g"
	    } else {
		fail "$testname: g ($x)"
	    }
	}
        default	{ fail "$testname: g ($x)" }
    }

    set x 0
    expect {
	-re ".* 118 031e 015F02D1" { set x [expr $x+1]; exp_continue; }
	-re ".* 118      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".* 119 0324 015F12D1" { set x [expr $x+1]; exp_continue; }
	-re ".* 119      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".* 120 032a 015F82D1" { set x [expr $x+1]; exp_continue; }
	-re ".* 120      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".* 121 0330 015FB2D1" { set x [expr $x+1]; exp_continue; }
	-re ".* 121      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".* 122 0336 015F92D1" { set x [expr $x+1]; exp_continue; }
	-re ".* 122      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".* 123 033c 015FA2D1" { set x [expr $x+1]; exp_continue; }
	-re ".* 123      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".* 124 0342 015FC2D1" { set x [expr $x+1]; exp_continue; }
	-re ".* 124      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".* 125 034a 015FCAD1" { set x [expr $x+1]; exp_continue; }
	-re ".* 125      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".* 125      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".* 126 0354 015FD2D1" { set x [expr $x+1]; exp_continue; }
	-re ".* 126      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".* 127 035c 015FE2D1" { set x [expr $x+1]; exp_continue; }
	-re ".* 127      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".* 128 0364 015FF2D1" { set x [expr $x+1]; exp_continue; }
	-re ".* 128      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".* 129 036c 015FDAD1" { set x [expr $x+1]; exp_continue; }
	-re ".* 129      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".* 129      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".* 130 0376 015FEAD1" { set x [expr $x+1]; exp_continue; }
	-re ".* 130      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".* 130      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".* 131 0380 015FFAD1" { set x [expr $x+1]; exp_continue; }
	-re ".* 131      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".* 131      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".* 132 038a 015F40D1" { set x [expr $x+1]; exp_continue; }
	-re ".* 132      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".* 133 0392 015F48D1" { set x [expr $x+1]; exp_continue; }
	-re ".* 133      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".* 133      1234"     { set x [expr $x+1]; exp_continue; }
	-re ".* 134              " {
	    if [expr $x == 37] then {
		pass "$testname: h"
	    } else {
		fail "$testname: h ($x)"
	    }
	}
        default	{ fail "$testname: h ($x)" }
    }

    set x 0
    expect {
	-re ".* 135 039c 017F0289" { set x [expr $x+1]; exp_continue; }
	-re ".* 135      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 136 03a4 017F1289" { set x [expr $x+1]; exp_continue; }
	-re ".* 136      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 137 03ac 017F8289" { set x [expr $x+1]; exp_continue; }
	-re ".* 137      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 138 03b4 017FB289" { set x [expr $x+1]; exp_continue; }
	-re ".* 138      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 139 03bc 017F9289" { set x [expr $x+1]; exp_continue; }
	-re ".* 139      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 140 03c4 017FA289" { set x [expr $x+1]; exp_continue; }
	-re ".* 140      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 141 03cc 017FC289" { set x [expr $x+1]; exp_continue; }
	-re ".* 141      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".* 141      5678"     { set x [expr $x+1]; exp_continue; }
	-re ".* 142 03d6 017FCA89" { set x [expr $x+1]; exp_continue; }
	-re ".* 142      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".* 142      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 143 03e2 017FD289" { set x [expr $x+1]; exp_continue; }
	-re ".* 143      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".* 143      5678"     { set x [expr $x+1]; exp_continue; }
	-re ".* 144 03ec 017FE289" { set x [expr $x+1]; exp_continue; }
	-re ".* 144      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".* 144      5678"     { set x [expr $x+1]; exp_continue; }
	-re ".* 145 03f6 017FF289" { set x [expr $x+1]; exp_continue; }
	-re ".* 145      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".* 145      5678"     { set x [expr $x+1]; exp_continue; }
	-re ".* 146 0400 017FDA89" { set x [expr $x+1]; exp_continue; }
	-re ".* 146      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".* 146      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 147 040c 017FEA89" { set x [expr $x+1]; exp_continue; }
	-re ".* 147      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".* 147      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 148 0418 017FFA89" { set x [expr $x+1]; exp_continue; }
	-re ".* 148      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".* 148      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 149 0424 017F4089" { set x [expr $x+1]; exp_continue; }
	-re ".* 149      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".* 149      5678"     { set x [expr $x+1]; exp_continue; }
	-re ".* 150 042e 017F4889" { set x [expr $x+1]; exp_continue; }
	-re ".* 150      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".* 150      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 151              " {
	    if [expr $x == 42] then {
		pass "$testname: i"
	    } else {
		fail "$testname: i ($x)"
	    }
	}
        default	{ fail "$testname: i ($x)" }
    }

    set x 0
    expect {
	-re ".* 152 043a 015F0299" { set x [expr $x+1]; exp_continue; }
	-re ".* 152      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 153 0442 015F1299" { set x [expr $x+1]; exp_continue; }
	-re ".* 153      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 154 044a 015F8299" { set x [expr $x+1]; exp_continue; }
	-re ".* 154      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 155 0452 015FB299" { set x [expr $x+1]; exp_continue; }
	-re ".* 155      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 156 045a 015F9299" { set x [expr $x+1]; exp_continue; }
	-re ".* 156      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 157 0462 015FA299" { set x [expr $x+1]; exp_continue; }
	-re ".* 157      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 158 046a 015FC299" { set x [expr $x+1]; exp_continue; }
	-re ".* 158      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".* 158      5678"     { set x [expr $x+1]; exp_continue; }
	-re ".* 159 0474 015FCA99" { set x [expr $x+1]; exp_continue; }
	-re ".* 159      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".* 159      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 160 0480 015FD299" { set x [expr $x+1]; exp_continue; }
	-re ".* 160      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".* 160      5678"     { set x [expr $x+1]; exp_continue; }
	-re ".* 161 048a 015FE299" { set x [expr $x+1]; exp_continue; }
	-re ".* 161      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".* 161      5678"     { set x [expr $x+1]; exp_continue; }
	-re ".* 162 0494 015FF299" { set x [expr $x+1]; exp_continue; }
	-re ".* 162      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".* 162      5678"     { set x [expr $x+1]; exp_continue; }
	-re ".* 163 049e 015FDA99" { set x [expr $x+1]; exp_continue; }
	-re ".* 163      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".* 163      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 164 04aa 015FEA99" { set x [expr $x+1]; exp_continue; }
	-re ".* 164      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".* 164      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 165 04b6 015FFA99" { set x [expr $x+1]; exp_continue; }
	-re ".* 165      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".* 165      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 166 04c2 015F4099" { set x [expr $x+1]; exp_continue; }
	-re ".* 166      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".* 166      5678"     { set x [expr $x+1]; exp_continue; }
	-re ".* 167 04cc 015F4899" { set x [expr $x+1]; exp_continue; }
	-re ".* 167      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".* 167      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 168              " {
	    if [expr $x == 42] then {
		pass "$testname: j"
	    } else {
		fail "$testname: j ($x)"
	    }
	}
        default	{ fail "$testname: j ($x)" }
    }

    set x 0
    expect {
	-re ".* 169 04d8 017F02A9" { set x [expr $x+1]; exp_continue; }
	-re ".* 169      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 170 04e0 017F12A9" { set x [expr $x+1]; exp_continue; }
	-re ".* 170      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 171 04e8 017F82A9" { set x [expr $x+1]; exp_continue; }
	-re ".* 171      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 172 04f0 017FB2A9" { set x [expr $x+1]; exp_continue; }
	-re ".* 172      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 173 04f8 017F92A9" { set x [expr $x+1]; exp_continue; }
	-re ".* 173      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 174 0500 017FA2A9" { set x [expr $x+1]; exp_continue; }
	-re ".* 174      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 175 0508 017FC2A9" { set x [expr $x+1]; exp_continue; }
	-re ".* 175      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".* 175      5678"     { set x [expr $x+1]; exp_continue; }
	-re ".* 176 0512 017FCAA9" { set x [expr $x+1]; exp_continue; }
	-re ".* 176      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".* 176      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 177 051e 017FD2A9" { set x [expr $x+1]; exp_continue; }
	-re ".* 177      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".* 177      5678"     { set x [expr $x+1]; exp_continue; }
	-re ".* 178 0528 017FE2A9" { set x [expr $x+1]; exp_continue; }
	-re ".* 178      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".* 178      5678"     { set x [expr $x+1]; exp_continue; }
	-re ".* 179 0532 017FF2A9" { set x [expr $x+1]; exp_continue; }
	-re ".* 179      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".* 179      5678"     { set x [expr $x+1]; exp_continue; }
	-re ".* 180 053c 017FDAA9" { set x [expr $x+1]; exp_continue; }
	-re ".* 180      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".* 180      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 181 0548 017FEAA9" { set x [expr $x+1]; exp_continue; }
	-re ".* 181      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".* 181      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 182 0554 017FFAA9" { set x [expr $x+1]; exp_continue; }
	-re ".* 182      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".* 182      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 183 0560 017F40A9" { set x [expr $x+1]; exp_continue; }
	-re ".* 183      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".* 183      5678"     { set x [expr $x+1]; exp_continue; }
	-re ".* 184 056a 017F48A9" { set x [expr $x+1]; exp_continue; }
	-re ".* 184      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".* 184      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 185              " {
	    if [expr $x == 42] then {
		pass "$testname: k"
	    } else {
		fail "$testname: k ($x)"
	    }
	}
        default	{ fail "$testname: k ($x)" }
    }

    set x 0
    expect {
	-re ".* 186 0576 015F02B9" { set x [expr $x+1]; exp_continue; }
	-re ".* 186      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 187 057e 015F12B9" { set x [expr $x+1]; exp_continue; }
	-re ".* 187      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 188 0586 015F82B9" { set x [expr $x+1]; exp_continue; }
	-re ".* 188      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 189 058e 015FB2B9" { set x [expr $x+1]; exp_continue; }
	-re ".* 189      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 190 0596 015F92B9" { set x [expr $x+1]; exp_continue; }
	-re ".* 190      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 191 059e 015FA2B9" { set x [expr $x+1]; exp_continue; }
	-re ".* 191      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 192 05a6 015FC2B9" { set x [expr $x+1]; exp_continue; }
	-re ".* 192      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".* 192      5678"     { set x [expr $x+1]; exp_continue; }
	-re ".* 193 05b0 015FCAB9" { set x [expr $x+1]; exp_continue; }
	-re ".* 193      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".* 193      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 194 05bc 015FD2B9" { set x [expr $x+1]; exp_continue; }
	-re ".* 194      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".* 194      5678"     { set x [expr $x+1]; exp_continue; }
	-re ".* 195 05c6 015FE2B9" { set x [expr $x+1]; exp_continue; }
	-re ".* 195      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".* 195      5678"     { set x [expr $x+1]; exp_continue; }
	-re ".* 196 05d0 015FF2B9" { set x [expr $x+1]; exp_continue; }
	-re ".* 196      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".* 196      5678"     { set x [expr $x+1]; exp_continue; }
	-re ".* 197 05da 015FDAB9" { set x [expr $x+1]; exp_continue; }
	-re ".* 197      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".* 197      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 198 05e6 015FEAB9" { set x [expr $x+1]; exp_continue; }
	-re ".* 198      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".* 198      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 199 05f2 015FFAB9" { set x [expr $x+1]; exp_continue; }
	-re ".* 199      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".* 199      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 200 05fe 015F40B9" { set x [expr $x+1]; exp_continue; }
	-re ".* 200      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".* 200      5678"     { set x [expr $x+1]; exp_continue; }
	-re ".* 201 0608 015F48B9" { set x [expr $x+1]; exp_continue; }
	-re ".* 201      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".* 201      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 202              " {
	    if [expr $x == 42] then {
		pass "$testname: l"
	    } else {
		fail "$testname: l ($x)"
	    }
	}
        default	{ fail "$testname: l ($x)" }
    }

    set x 0
    expect {
	-re ".* 203 0614 017F02C9" { set x [expr $x+1]; exp_continue; }
	-re ".* 203      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 204 061c 017F12C9" { set x [expr $x+1]; exp_continue; }
	-re ".* 204      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 205 0624 017F82C9" { set x [expr $x+1]; exp_continue; }
	-re ".* 205      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 206 062c 017FB2C9" { set x [expr $x+1]; exp_continue; }
	-re ".* 206      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 207 0634 017F92C9" { set x [expr $x+1]; exp_continue; }
	-re ".* 207      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 208 063c 017FA2C9" { set x [expr $x+1]; exp_continue; }
	-re ".* 208      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 209 0644 017FC2C9" { set x [expr $x+1]; exp_continue; }
	-re ".* 209      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".* 209      5678"     { set x [expr $x+1]; exp_continue; }
	-re ".* 210 064e 017FCAC9" { set x [expr $x+1]; exp_continue; }
	-re ".* 210      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".* 210      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 211 065a 017FD2C9" { set x [expr $x+1]; exp_continue; }
	-re ".* 211      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".* 211      5678"     { set x [expr $x+1]; exp_continue; }
	-re ".* 212 0664 017FE2C9" { set x [expr $x+1]; exp_continue; }
	-re ".* 212      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".* 212      5678"     { set x [expr $x+1]; exp_continue; }
	-re ".* 213 066e 017FF2C9" { set x [expr $x+1]; exp_continue; }
	-re ".* 213      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".* 213      5678"     { set x [expr $x+1]; exp_continue; }
	-re ".* 214 0678 017FDAC9" { set x [expr $x+1]; exp_continue; }
	-re ".* 214      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".* 214      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 215 0684 017FEAC9" { set x [expr $x+1]; exp_continue; }
	-re ".* 215      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".* 215      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 216 0690 017FFAC9" { set x [expr $x+1]; exp_continue; }
	-re ".* 216      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".* 216      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 217 069c 017F40C9" { set x [expr $x+1]; exp_continue; }
	-re ".* 217      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".* 217      5678"     { set x [expr $x+1]; exp_continue; }
	-re ".* 218 06a6 017F48C9" { set x [expr $x+1]; exp_continue; }
	-re ".* 218      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".* 218      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 219              " {
	    if [expr $x == 42] then {
		pass "$testname: m"
	    } else {
		fail "$testname: m ($x)"
	    }
	}
        default	{ fail "$testname: m ($x)" }
    }

    set x 0
    expect {
	-re ".* 220 06b2 015F02D9" { set x [expr $x+1]; exp_continue; }
	-re ".* 220      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 221 06ba 015F12D9" { set x [expr $x+1]; exp_continue; }
	-re ".* 221      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 222 06c2 015F82D9" { set x [expr $x+1]; exp_continue; }
	-re ".* 222      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 223 06ca 015FB2D9" { set x [expr $x+1]; exp_continue; }
	-re ".* 223      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 224 06d2 015F92D9" { set x [expr $x+1]; exp_continue; }
	-re ".* 224      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 225 06da 015FA2D9" { set x [expr $x+1]; exp_continue; }
	-re ".* 225      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 226 06e2 015FC2D9" { set x [expr $x+1]; exp_continue; }
	-re ".* 226      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".* 226      5678"     { set x [expr $x+1]; exp_continue; }
	-re ".* 227 06ec 015FCAD9" { set x [expr $x+1]; exp_continue; }
	-re ".* 227      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".* 227      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 228 06f8 015FD2D9" { set x [expr $x+1]; exp_continue; }
	-re ".* 228      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".* 228      5678"     { set x [expr $x+1]; exp_continue; }
	-re ".* 229 0702 015FE2D9" { set x [expr $x+1]; exp_continue; }
	-re ".* 229      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".* 229      5678"     { set x [expr $x+1]; exp_continue; }
	-re ".* 230 070c 015FF2D9" { set x [expr $x+1]; exp_continue; }
	-re ".* 230      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".* 230      5678"     { set x [expr $x+1]; exp_continue; }
	-re ".* 231 0716 015FDAD9" { set x [expr $x+1]; exp_continue; }
	-re ".* 231      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".* 231      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 232 0722 015FEAD9" { set x [expr $x+1]; exp_continue; }
	-re ".* 232      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".* 232      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 233 072e 015FFAD9" { set x [expr $x+1]; exp_continue; }
	-re ".* 233      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".* 233      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 234 073a 015F40D9" { set x [expr $x+1]; exp_continue; }
	-re ".* 234      9ABC1234" { set x [expr $x+1]; exp_continue; }
	-re ".* 234      5678"     { set x [expr $x+1]; exp_continue; }
	-re ".* 235 0744 015F48D9" { set x [expr $x+1]; exp_continue; }
	-re ".* 235      9ABCDEF0" { set x [expr $x+1]; exp_continue; }
	-re ".* 235      12345678" { set x [expr $x+1]; exp_continue; }
	-re ".* 236              " {
	    if [expr $x == 42] then {
		pass "$testname: n"
	    } else {
		fail "$testname: n ($x)"
	    }
	}
        default	{ fail "$testname: n ($x)" }
    }

    # 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

}

if [istarget h8300*-*-elf] then {
    # Test advanced h8300sx instructions.
    do_t02_mova_test
}

