# OBSOLETE # OBSOLETE # Copyright 1997 Free Software Foundation, Inc. # OBSOLETE # OBSOLETE # This program is free software; you can redistribute it and/or modify # OBSOLETE # it under the terms of the GNU General Public License as published by # OBSOLETE # the Free Software Foundation; either version 2 of the License, or # OBSOLETE # (at your option) any later version. # OBSOLETE # # OBSOLETE # This program is distributed in the hope that it will be useful, # OBSOLETE # but WITHOUT ANY WARRANTY; without even the implied warranty of # OBSOLETE # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # OBSOLETE # GNU General Public License for more details. # OBSOLETE # # OBSOLETE # You should have received a copy of the GNU General Public License # OBSOLETE # along with this program; if not, write to the Free Software # OBSOLETE # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # OBSOLETE # OBSOLETE # Please email any bugs, comments, and/or additions to this file to: # OBSOLETE # bug-gdb@prep.ai.mit.edu # OBSOLETE # OBSOLETE # This file was written by Jeff Law. (law@cygnus.com) # OBSOLETE # OBSOLETE if $tracelevel then { # OBSOLETE strace $tracelevel # OBSOLETE } # OBSOLETE # OBSOLETE if ![istarget "mn10200*-*-*"] { # OBSOLETE verbose "Tests ignored for all but mn10200 based targets." # OBSOLETE return # OBSOLETE } # OBSOLETE # OBSOLETE global exec_output # OBSOLETE set prms_id 0 # OBSOLETE set bug_id 0 # OBSOLETE # OBSOLETE set testfile "mn10200" # OBSOLETE set srcfile ${srcdir}/${subdir}/${testfile}.s # OBSOLETE set binfile ${objdir}/${subdir}/${testfile} # OBSOLETE if { [gdb_compile "${srcfile}" "${binfile}" executable ""] != "" } { # OBSOLETE gdb_suppress_entire_file "Testcase compile failed, so all tests in this file will automatically fail." # OBSOLETE } # OBSOLETE # OBSOLETE proc add_tests { } { # OBSOLETE global gdb_prompt # OBSOLETE global hex # OBSOLETE global decimal # OBSOLETE # OBSOLETE send_gdb "x/12i add_tests\n" # OBSOLETE gdb_expect { # OBSOLETE -re " # OBSOLETE .*add d1,d2.* # OBSOLETE .*add d2,a3.* # OBSOLETE .*add a2,d1.* # OBSOLETE .*add a3,a2.* # OBSOLETE .*add 16,d1.* # OBSOLETE .*add 256,d2.* # OBSOLETE .*add 131071,d3.* # OBSOLETE .*add 16,a1.* # OBSOLETE .*add 256,a2.* # OBSOLETE .*add 131071,a3.* # OBSOLETE .*addc d1,d2.* # OBSOLETE .*addnf 16,a2.* # OBSOLETE .*$gdb_prompt $" { pass "add tests" } # OBSOLETE -re "$gdb_prompt $" { fail "add tests" } # OBSOLETE timeout { fail "(timeout) add tests" } # OBSOLETE } # OBSOLETE } # OBSOLETE # OBSOLETE proc bcc_tests { } { # OBSOLETE global gdb_prompt # OBSOLETE global hex # OBSOLETE global decimal # OBSOLETE # OBSOLETE send_gdb "x/15i bCC_tests\n" # OBSOLETE gdb_expect { # OBSOLETE -re " # OBSOLETE .*beq 0x\[0-9a-f]+ .* # OBSOLETE .*bne 0x\[0-9a-f]+ .* # OBSOLETE .*bgt 0x\[0-9a-f]+ .* # OBSOLETE .*bge 0x\[0-9a-f]+ .* # OBSOLETE .*ble 0x\[0-9a-f]+ .* # OBSOLETE .*blt 0x\[0-9a-f]+ .* # OBSOLETE .*bhi 0x\[0-9a-f]+ .* # OBSOLETE .*bcc 0x\[0-9a-f]+ .* # OBSOLETE .*bls 0x\[0-9a-f]+ .* # OBSOLETE .*bcs 0x\[0-9a-f]+ .* # OBSOLETE .*bvc 0x\[0-9a-f]+ .* # OBSOLETE .*bvs 0x\[0-9a-f]+ .* # OBSOLETE .*bnc 0x\[0-9a-f]+ .* # OBSOLETE .*bns 0x\[0-9a-f]+ .* # OBSOLETE .*bra 0x\[0-9a-f]+ .* # OBSOLETE .*$gdb_prompt $" { pass "bCC tests" } # OBSOLETE -re "$gdb_prompt $" { fail "bCC tests" } # OBSOLETE timeout { fail "(timeout) bCC tests" } # OBSOLETE } # OBSOLETE } # OBSOLETE # OBSOLETE proc bccx_tests { } { # OBSOLETE global gdb_prompt # OBSOLETE global hex # OBSOLETE global decimal # OBSOLETE # OBSOLETE send_gdb "x/14i bCCx_tests\n" # OBSOLETE gdb_expect { # OBSOLETE -re " # OBSOLETE .*beqx 0x\[0-9a-f]+ .* # OBSOLETE .*bnex 0x\[0-9a-f]+ .* # OBSOLETE .*bgtx 0x\[0-9a-f]+ .* # OBSOLETE .*bgex 0x\[0-9a-f]+ .* # OBSOLETE .*blex 0x\[0-9a-f]+ .* # OBSOLETE .*bltx 0x\[0-9a-f]+ .* # OBSOLETE .*bhix 0x\[0-9a-f]+ .* # OBSOLETE .*bccx 0x\[0-9a-f]+ .* # OBSOLETE .*blsx 0x\[0-9a-f]+ .* # OBSOLETE .*bcsx 0x\[0-9a-f]+ .* # OBSOLETE .*bvcx 0x\[0-9a-f]+ .* # OBSOLETE .*bvsx 0x\[0-9a-f]+ .* # OBSOLETE .*bncx 0x\[0-9a-f]+ .* # OBSOLETE .*bnsx 0x\[0-9a-f]+ .* # OBSOLETE .*$gdb_prompt $" { pass "bCCx tests" } # OBSOLETE -re "$gdb_prompt $" { fail "bCCx tests" } # OBSOLETE timeout { fail "(timeout) bCCx tests" } # OBSOLETE } # OBSOLETE } # OBSOLETE # OBSOLETE proc bit_tests { } { # OBSOLETE global gdb_prompt # OBSOLETE global hex # OBSOLETE global decimal # OBSOLETE # OBSOLETE send_gdb "x/4 bit_tests\n" # OBSOLETE gdb_expect { # OBSOLETE -re " # OBSOLETE .*btst 64,d1.* # OBSOLETE .*btst 8192,d2.* # OBSOLETE .*bset d1,\\(a2\\).* # OBSOLETE .*bclr d1,\\(a2\\).* # OBSOLETE .*$gdb_prompt $" { pass "bit tests" } # OBSOLETE -re "$gdb_prompt $" { fail "bit tests" } # OBSOLETE timeout { fail "(timeout) bit tests" } # OBSOLETE } # OBSOLETE } # OBSOLETE # OBSOLETE proc cmp_tests { } { # OBSOLETE global gdb_prompt # OBSOLETE global hex # OBSOLETE global decimal # OBSOLETE # OBSOLETE send_gdb "x/9i cmp_tests\n" # OBSOLETE gdb_expect { # OBSOLETE -re " # OBSOLETE .*cmp d1,d2.* # OBSOLETE .*cmp d2,a3.* # OBSOLETE .*cmp a3,d3.* # OBSOLETE .*cmp a3,a2.* # OBSOLETE .*cmp 16,d3.* # OBSOLETE .*cmp 256,d2.* # OBSOLETE .*cmp 131071,d1.* # OBSOLETE .*cmp 256,a2.* # OBSOLETE .*cmp 131071,a1.* # OBSOLETE .*$gdb_prompt $" { pass "cmp tests" } # OBSOLETE -re "$gdb_prompt $" { fail "cmp tests" } # OBSOLETE timeout { fail "(timeout) cmp tests" } # OBSOLETE } # OBSOLETE } # OBSOLETE # OBSOLETE proc extend_tests { } { # OBSOLETE global gdb_prompt # OBSOLETE global hex # OBSOLETE global decimal # OBSOLETE # OBSOLETE send_gdb "x/5i extend_tests\n" # OBSOLETE gdb_expect { # OBSOLETE -re " # OBSOLETE .*ext d1.* # OBSOLETE .*extx d2.* # OBSOLETE .*extxu d3.* # OBSOLETE .*extxb d2.* # OBSOLETE .*extxbu d1.* # OBSOLETE .*$gdb_prompt $" { pass "extend tests" } # OBSOLETE -re "$gdb_prompt $" { fail "extend tests" } # OBSOLETE timeout { fail "(timeout) extend tests" } # OBSOLETE } # OBSOLETE } # OBSOLETE # OBSOLETE proc logical_tests { } { # OBSOLETE global gdb_prompt # OBSOLETE global hex # OBSOLETE global decimal # OBSOLETE # OBSOLETE send_gdb "x/11i logical_tests\n" # OBSOLETE gdb_expect { # OBSOLETE -re " # OBSOLETE .*and d1,d2.* # OBSOLETE .*and 127,d2.* # OBSOLETE .*and 32767,d3.* # OBSOLETE .*and 32767,psw.* # OBSOLETE .*or d1,d2.* # OBSOLETE .*or 127,d2.* # OBSOLETE .*or 32767,d3.* # OBSOLETE .*or 32767,psw.* # OBSOLETE .*xor d1,d2.* # OBSOLETE .*xor 32767,d3.* # OBSOLETE .*not d3.* # OBSOLETE .*$gdb_prompt $" { pass "logical tests" } # OBSOLETE -re "$gdb_prompt $" { fail "logical tests" } # OBSOLETE timeout { fail "(timeout) logical tests" } # OBSOLETE } # OBSOLETE } # OBSOLETE # OBSOLETE proc mov_tests_1 { } { # OBSOLETE global gdb_prompt # OBSOLETE global hex # OBSOLETE global decimal # OBSOLETE # OBSOLETE send_gdb "x/12i mov_tests_1\n" # OBSOLETE gdb_expect { # OBSOLETE -re " # OBSOLETE .*mov d1,a2.* # OBSOLETE .*mov a2,d1.* # OBSOLETE .*mov d1,d2.* # OBSOLETE .*mov a2,a1.* # OBSOLETE .*mov psw,d3.* # OBSOLETE .*mov d2,psw.* # OBSOLETE .*mov mdr,d1.* # OBSOLETE .*mov d2,mdr.* # OBSOLETE .*mov \\(a2\\),d1.* # OBSOLETE .*mov \\(8,a2\\),d1.* # OBSOLETE .*mov \\(256,a2\\),d1.* # OBSOLETE .*mov \\(131071,a2\\),d1.* # OBSOLETE .*$gdb_prompt $" { pass "mov1 tests" } # OBSOLETE -re "$gdb_prompt $" { fail "mov1 tests" } # OBSOLETE timeout { fail "(timeout) mov1 tests" } # OBSOLETE } # OBSOLETE } # OBSOLETE # OBSOLETE proc mov_tests_2 { } { # OBSOLETE global gdb_prompt # OBSOLETE global hex # OBSOLETE global decimal # OBSOLETE # OBSOLETE send_gdb "x/9 mov_tests_2\n" # OBSOLETE gdb_expect { # OBSOLETE -re " # OBSOLETE .*mov \\(d1,a1\\),d2.* # OBSOLETE .*mov \\(0x8000.*\\),d1.* # OBSOLETE .*mov \\(0x1ffff.*\\),d1.* # OBSOLETE .*mov \\(8,a2\\),a1.* # OBSOLETE .*mov \\(256,a2\\),a1.* # OBSOLETE .*mov \\(131071,a2\\),a1.* # OBSOLETE .*mov \\(d1,a1\\),a2.* # OBSOLETE .*mov \\(0x8000.*\\),a1.* # OBSOLETE .*mov \\(0x1ffff.*\\),a1.* # OBSOLETE .*$gdb_prompt $" { pass "mov2 tests" } # OBSOLETE -re "$gdb_prompt $" { fail "mov2 tests" } # OBSOLETE timeout { fail "(timeout) mov2 tests" } # OBSOLETE } # OBSOLETE } # OBSOLETE # OBSOLETE proc mov_tests_3 { } { # OBSOLETE global gdb_prompt # OBSOLETE global hex # OBSOLETE global decimal # OBSOLETE # OBSOLETE send_gdb "x/10 mov_tests_3\n" # OBSOLETE gdb_expect { # OBSOLETE -re " # OBSOLETE .*mov d1,\\(a2\\).* # OBSOLETE .*mov d1,\\(32,a2\\).* # OBSOLETE .*mov d1,\\(256,a2\\).* # OBSOLETE .*mov d1,\\(131071,a2\\).* # OBSOLETE .*mov d1,\\(d2,a2\\).* # OBSOLETE .*mov d1,\\(0x80.*\\).* # OBSOLETE .*mov d1,\\(0x1ffff.*\\).* # OBSOLETE .*mov a1,\\(32,a2\\).* # OBSOLETE .*mov a1,\\(256,a2\\).* # OBSOLETE .*mov a1,\\(131071,a2\\).* # OBSOLETE .*$gdb_prompt $" { pass "mov3 tests" } # OBSOLETE -re "$gdb_prompt $" { fail "mov3 tests" } # OBSOLETE timeout { fail "(timeout) mov3 tests" } # OBSOLETE } # OBSOLETE } # OBSOLETE # OBSOLETE proc mov_tests_4 { } { # OBSOLETE global gdb_prompt # OBSOLETE global hex # OBSOLETE global decimal # OBSOLETE # OBSOLETE send_gdb "x/8 mov_tests_4\n" # OBSOLETE gdb_expect { # OBSOLETE -re " # OBSOLETE .*mov a1,\\(d2,a2\\).* # OBSOLETE .*mov a1,\\(0x80.*\\).* # OBSOLETE .*mov a1,\\(0x1ffff.*\\).* # OBSOLETE .*mov 8,d1.* # OBSOLETE .*mov 256,d1.* # OBSOLETE .*mov 131071,d1.* # OBSOLETE .*mov 256,a1.* # OBSOLETE .*mov 131071,a1.* # OBSOLETE .*$gdb_prompt $" { pass "mov4 tests" } # OBSOLETE -re "$gdb_prompt $" { fail "mov4 tests" } # OBSOLETE timeout { fail "(timeout) mov4 tests" } # OBSOLETE } # OBSOLETE } # OBSOLETE # OBSOLETE proc movb_tests { } { # OBSOLETE global gdb_prompt # OBSOLETE global hex # OBSOLETE global decimal # OBSOLETE # OBSOLETE send_gdb "x/12 movb_tests\n" # OBSOLETE gdb_expect { # OBSOLETE -re " # OBSOLETE .*movb \\(8,a2\\),d1.* # OBSOLETE .*movb \\(256,a2\\),d1.* # OBSOLETE .*movb \\(131071,a2\\),d1.* # OBSOLETE .*movb \\(d2,a2\\),d3.* # OBSOLETE .*movb \\(0x1ffff.*\\),d2.* # OBSOLETE .*movb d1,\\(a2\\).* # OBSOLETE .*movb d1,\\(8,a2\\).* # OBSOLETE .*movb d1,\\(256,a2\\).* # OBSOLETE .*movb d1,\\(131071,a2\\).* # OBSOLETE .*movb d1,\\(d2,a2\\).* # OBSOLETE .*movb d1,\\(0x100.*\\).* # OBSOLETE .*movb d1,\\(0x1ffff.*\\).* # OBSOLETE .*$gdb_prompt $" { pass "movb tests" } # OBSOLETE -re "$gdb_prompt $" { fail "movb tests" } # OBSOLETE timeout { fail "(timeout) movb tests" } # OBSOLETE } # OBSOLETE } # OBSOLETE # OBSOLETE proc movbu_tests { } { # OBSOLETE global gdb_prompt # OBSOLETE global hex # OBSOLETE global decimal # OBSOLETE # OBSOLETE send_gdb "x/7 movbu_tests\n" # OBSOLETE gdb_expect { # OBSOLETE -re " # OBSOLETE .*movbu \\(a2\\),d1.* # OBSOLETE .*movbu \\(8,a2\\),d1.* # OBSOLETE .*movbu \\(256,a2\\),d1.* # OBSOLETE .*movbu \\(131071,a2\\),d1.* # OBSOLETE .*movbu \\(d1,a1\\),d2.* # OBSOLETE .*movbu \\(0x8000.*\\),d1.* # OBSOLETE .*movbu \\(0x1ffff.*\\),d1.* # OBSOLETE .*$gdb_prompt $" { pass "movbu tests" } # OBSOLETE -re "$gdb_prompt $" { fail "movbu tests" } # OBSOLETE timeout { fail "(timeout) movbu tests" } # OBSOLETE } # OBSOLETE } # OBSOLETE # OBSOLETE proc movx_tests { } { # OBSOLETE global gdb_prompt # OBSOLETE global hex # OBSOLETE global decimal # OBSOLETE # OBSOLETE send_gdb "x/6 movx_tests\n" # OBSOLETE gdb_expect { # OBSOLETE -re " # OBSOLETE .*movx \\(8,a2\\),d1.* # OBSOLETE .*movx \\(256,a2\\),d1.* # OBSOLETE .*movx \\(131071,a2\\),d1.* # OBSOLETE .*movx d1,\\(8,a2\\).* # OBSOLETE .*movx d1,\\(256,a2\\).* # OBSOLETE .*movx d1,\\(131071,a2\\).* # OBSOLETE .*$gdb_prompt $" { pass "movx tests" } # OBSOLETE -re "$gdb_prompt $" { fail "movx tests" } # OBSOLETE timeout { fail "(timeout) movx tests" } # OBSOLETE } # OBSOLETE } # OBSOLETE # OBSOLETE proc muldiv_tests { } { # OBSOLETE global gdb_prompt # OBSOLETE global hex # OBSOLETE global decimal # OBSOLETE # OBSOLETE send_gdb "x/3 muldiv_tests\n" # OBSOLETE gdb_expect { # OBSOLETE -re " # OBSOLETE .*mul d1,d2.* # OBSOLETE .*mulu d2,d3.* # OBSOLETE .*divu d3,d2.* # OBSOLETE .*$gdb_prompt $" { pass "muldiv tests" } # OBSOLETE -re "$gdb_prompt $" { fail "muldiv tests" } # OBSOLETE timeout { fail "(timeout) muldiv tests" } # OBSOLETE } # OBSOLETE } # OBSOLETE # OBSOLETE proc misc_tests { } { # OBSOLETE global gdb_prompt # OBSOLETE global hex # OBSOLETE global decimal # OBSOLETE # OBSOLETE send_gdb "x/9 misc_tests\n" # OBSOLETE gdb_expect { # OBSOLETE -re " # OBSOLETE .*jmp 0x\[0-9a-f]+
.* # OBSOLETE .*jmp 0x\[0-9a-f]+ .* # OBSOLETE .*jmp \\(a2\\).* # OBSOLETE .*jsr 0x\[0-9a-f]+
.* # OBSOLETE .*jsr 0x\[0-9a-f]+ .* # OBSOLETE .*jsr \\(a2\\).* # OBSOLETE .*rts.* # OBSOLETE .*rti.* # OBSOLETE .*nop.* # OBSOLETE .*$gdb_prompt $" { pass "misc tests" } # OBSOLETE -re "$gdb_prompt $" { fail "misc tests" } # OBSOLETE timeout { fail "(timeout) misc tests" } # OBSOLETE } # OBSOLETE } # OBSOLETE # OBSOLETE proc shift_tests { } { # OBSOLETE global gdb_prompt # OBSOLETE global hex # OBSOLETE global decimal # OBSOLETE # OBSOLETE send_gdb "x/4i shift_tests\n" # OBSOLETE gdb_expect { # OBSOLETE -re " # OBSOLETE .*asr d2.* # OBSOLETE .*lsr d3.* # OBSOLETE .*ror d1.* # OBSOLETE .*rol d2.* # OBSOLETE .*$gdb_prompt $" { pass "shift tests" } # OBSOLETE -re "$gdb_prompt $" { fail "shift tests" } # OBSOLETE timeout { fail "(timeout) shift tests" } # OBSOLETE } # OBSOLETE } # OBSOLETE # OBSOLETE proc sub_tests { } { # OBSOLETE global gdb_prompt # OBSOLETE global hex # OBSOLETE global decimal # OBSOLETE # OBSOLETE send_gdb "x/9i sub_tests\n" # OBSOLETE gdb_expect { # OBSOLETE -re " # OBSOLETE .*sub d1,d2.* # OBSOLETE .*sub d2,a3.* # OBSOLETE .*sub a3,d3.* # OBSOLETE .*sub a3,a2.* # OBSOLETE .*sub 32767,d2.* # OBSOLETE .*sub 131071,d2.* # OBSOLETE .*sub 32767,a2.* # OBSOLETE .*sub 131071,a2.* # OBSOLETE .*subc d1,d2.* # OBSOLETE .*$gdb_prompt $" { pass "sub tests" } # OBSOLETE -re "$gdb_prompt $" { fail "sub tests" } # OBSOLETE timeout { fail "(timeout) sub tests" } # OBSOLETE } # OBSOLETE } # OBSOLETE # OBSOLETE # Start with a fresh gdb. # OBSOLETE # OBSOLETE gdb_exit # OBSOLETE gdb_start # OBSOLETE gdb_reinitialize_dir $srcdir/$subdir # OBSOLETE gdb_load $binfile # OBSOLETE # OBSOLETE add_tests # OBSOLETE bcc_tests # OBSOLETE bccx_tests # OBSOLETE bit_tests # OBSOLETE cmp_tests # OBSOLETE extend_tests # OBSOLETE logical_tests # OBSOLETE mov_tests_1 # OBSOLETE mov_tests_2 # OBSOLETE mov_tests_3 # OBSOLETE mov_tests_4 # OBSOLETE movb_tests # OBSOLETE movbu_tests # OBSOLETE movx_tests # OBSOLETE muldiv_tests # OBSOLETE misc_tests # OBSOLETE shift_tests # OBSOLETE sub_tests