aboutsummaryrefslogtreecommitdiff
path: root/gas
diff options
context:
space:
mode:
authorAlexandre Oliva <aoliva@redhat.com>2004-01-16 03:16:07 +0000
committerAlexandre Oliva <aoliva@redhat.com>2004-01-16 03:16:07 +0000
commitac882a1d779c5a80ddff0815b164b271d280248a (patch)
treef366a9547d6cdeff5b5b62e1c73120e645c3455f /gas
parentd164ea7f0f0ced5cd9f00ae0e33340abac91ae4c (diff)
downloadgdb-ac882a1d779c5a80ddff0815b164b271d280248a.zip
gdb-ac882a1d779c5a80ddff0815b164b271d280248a.tar.gz
gdb-ac882a1d779c5a80ddff0815b164b271d280248a.tar.bz2
* gas/mn10300/mov5.s: New.
* gas/mn10300/basic.exp (do_mov5): New.
Diffstat (limited to 'gas')
-rw-r--r--gas/testsuite/ChangeLog5
-rw-r--r--gas/testsuite/gas/mn10300/basic.exp37
-rw-r--r--gas/testsuite/gas/mn10300/mov5.s7
3 files changed, 48 insertions, 1 deletions
diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog
index 69a9de3..c98cba9 100644
--- a/gas/testsuite/ChangeLog
+++ b/gas/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2004-01-16 Alexandre Oliva <aoliva@redhat.com>
+
+ * gas/mn10300/mov5.s: New.
+ * gas/mn10300/basic.exp (do_mov5): New.
+
2004-01-14 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
* gas/mips/relax-swap1-mips1.d: New test for branch relaxation
diff --git a/gas/testsuite/gas/mn10300/basic.exp b/gas/testsuite/gas/mn10300/basic.exp
index 519cb92..46c23d4 100644
--- a/gas/testsuite/gas/mn10300/basic.exp
+++ b/gas/testsuite/gas/mn10300/basic.exp
@@ -1,4 +1,4 @@
-# Copyright (C) 1996, 2000, 2002 Free Software Foundation, Inc.
+# Copyright (C) 1996, 2000, 2002, 2004 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
@@ -499,6 +499,40 @@ proc do_mov4 {} {
if [expr $x==16] then { pass $testname } else { fail $testname }
}
+proc do_mov5 {} {
+ set testname "mov5.s: mov5 tests"
+ set x 0
+
+ gas_start "mov5.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 FBF80008\[^\n\]*\n" { set x [expr $x+1] }
+ -re "^ +\[0-9\]+ 0004 FDF80000\[^\n\]*\n" { set x [expr $x+1] }
+ -re "^ +4 +0100\[^\n\]*\n" { set x [expr $x+1] }
+ -re "^ +\[0-9\]+ 000a FDF800FF\[^\n\]*\n" { set x [expr $x+1] }
+ -re "^ +5 +FF7F\[^\n\]*\n" { set x [expr $x+1] }
+ -re "^ +\[0-9\]+ 0010 FEF80080\[^\n\]*\n" { set x [expr $x+1] }
+ -re "^ +6 +FFFFFF\[^\n\]*\n" { set x [expr $x+1] }
+ -re "^ +\[0-9\]+ 0017 FEF80000\[^\n\]*\n" { set x [expr $x+1] }
+ -re "^ +7 +0080FF\[^\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==9] then { pass $testname } else { fail $testname }
+}
+
proc do_movbu {} {
set testname "movbu.s: movbu tests"
set x 0
@@ -1762,6 +1796,7 @@ if [istarget mn10300*-*-*] then {
do_mov2
do_mov3
do_mov4
+ do_mov5
do_movbu
do_movhu
do_movm
diff --git a/gas/testsuite/gas/mn10300/mov5.s b/gas/testsuite/gas/mn10300/mov5.s
new file mode 100644
index 0000000..c3551ff
--- /dev/null
+++ b/gas/testsuite/gas/mn10300/mov5.s
@@ -0,0 +1,7 @@
+ .am33
+ .text
+ mov 8,sp
+ mov 256,sp
+ mov +((1<<23)-1),sp
+ mov -128,sp
+ mov +((-1)<<23),sp