diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog index 6c40fb75d1..9cc49798fa 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2002-01-22 Alexandre Oliva + + * gas/mn10300/basic.exp (run_list_test): New proc, from alpha. + * gas/mn10300/movpc.s, gas/mn10300/movpc.l: New tests. + 2002-01-22 Richard Henderson * gas/alpha/unop.s, gas/alpha/unop.d: New test. diff --git a/gas/testsuite/gas/mn10300/basic.exp b/gas/testsuite/gas/mn10300/basic.exp index 0d268da6e8..af9d8732ca 100644 --- a/gas/testsuite/gas/mn10300/basic.exp +++ b/gas/testsuite/gas/mn10300/basic.exp @@ -1,4 +1,4 @@ -# Copyright (C) 1996, 2000 Free Software Foundation, Inc. +# Copyright (C) 1996, 2000, 2002 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 @@ -1734,6 +1734,19 @@ proc do_am33_8 {} { if [expr $x==67] then { pass $testname } else { fail $testname } } +proc run_list_test { name opts } { + global srcdir subdir + set testname "alpha $name" + set file $srcdir/$subdir/$name + gas_run ${name}.s $opts ">&dump.out" + if { [regexp_diff "dump.out" "${file}.l"] } then { + fail $testname + verbose "output is [file_contents "dump.out"]" 2 + return + } + pass $testname +} + if [istarget mn10300*-*-*] then { # Test the basic instruction parser. @@ -1765,4 +1778,6 @@ if [istarget mn10300*-*-*] then { do_am33_6 do_am33_7 do_am33_8 + + run_list_test "movpc" "" } diff --git a/gas/testsuite/gas/mn10300/movpc.l b/gas/testsuite/gas/mn10300/movpc.l new file mode 100644 index 0000000000..91166e3367 --- /dev/null +++ b/gas/testsuite/gas/mn10300/movpc.l @@ -0,0 +1,25 @@ +.*: Assembler messages: +.*:6: Error: Invalid opcode/operands +.*:7: Error: Unrecognized opcode: .* +.*:7: Error: Invalid opcode/operands +.*:8: Error: Unrecognized opcode: .* +.*:8: Error: Invalid opcode/operands +.*:9: Error: Unrecognized opcode: .* +.*:9: Error: Invalid opcode/operands +.*:10: Error: Unrecognized opcode: .* +.*:10: Error: Invalid opcode/operands +.*:11: Error: Unrecognized opcode: .* +.*:11: Error: Invalid opcode/operands +.*:12: Error: Unrecognized opcode: .* +.*:12: Error: Invalid opcode/operands +.*:13: Error: Unrecognized opcode: .* +.*:13: Error: Invalid opcode/operands +.*:14: Error: Unrecognized opcode: .* +.*:14: Error: Invalid opcode/operands +.*:15: Error: Unrecognized opcode: .* +.*:15: Error: Invalid opcode/operands +.*:16: Error: Unrecognized opcode: .* +.*:16: Error: Invalid opcode/operands +.*:17: Error: Unrecognized opcode: .* +.*:17: Error: Invalid opcode/operands +.*:18: Error: Unrecognized opcode: .* diff --git a/gas/testsuite/gas/mn10300/movpc.s b/gas/testsuite/gas/mn10300/movpc.s new file mode 100644 index 0000000000..15741fe57d --- /dev/null +++ b/gas/testsuite/gas/mn10300/movpc.s @@ -0,0 +1,17 @@ + .am33 + mov pc,a0 + mov pc,a1 + mov pc,a2 + mov pc,a3 + mov pc,d0 + mov pc,d1 + mov pc,d2 + mov pc,d3 + mov pc,r0 + mov pc,r1 + mov pc,r2 + mov pc,r3 + mov pc,r4 + mov pc,r5 + mov pc,r6 + mov pc,r7