diff options
Diffstat (limited to 'gdb/testsuite/gdb.disasm/t07_ari3.exp')
-rw-r--r-- | gdb/testsuite/gdb.disasm/t07_ari3.exp | 364 |
1 files changed, 364 insertions, 0 deletions
diff --git a/gdb/testsuite/gdb.disasm/t07_ari3.exp b/gdb/testsuite/gdb.disasm/t07_ari3.exp new file mode 100644 index 00000000000..7084a950aad --- /dev/null +++ b/gdb/testsuite/gdb.disasm/t07_ari3.exp @@ -0,0 +1,364 @@ +# Copyright (C) 2003 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 2 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + +# Please email any bugs, comments, and/or additions to this file to: +# bug-gdb@prep.ai.mit.edu + +# This file was written by Michael Snyder (msnyder@redhat.com) + +if $tracelevel then { + strace $tracelevel +} + +if ![istarget "h8300*-*-*"] { + verbose "Tests ignored for all but h8300s based targets." + return +} + +set prms_id 0 +set bug_id 0 + +set testfile "t07_ari3" +set srcfile ${srcdir}/${subdir}/${testfile}.s +set objfile ${objdir}/${subdir}/${testfile}.o +set binfile ${objdir}/${subdir}/${testfile}.x + +set asm-flags ""; +set link-flags "-m h8300sxelf"; + + +if {[target_assemble $srcfile $objfile "${asm-flags}"] != ""} then { + gdb_suppress_entire_file "Testcase assembly failed, so all tests in this file will automatically fail." +} + +if {[target_link $objfile $binfile "${link-flags}"] != ""} then { + gdb_suppress_entire_file "Testcase link failed, so all tests in this file will automatically fail." +} + +gdb_start +gdb_reinitialize_dir $srcdir/$subdir +gdb_load $binfile + +gdb_test "x /i _start" "neg.b\tr1h" \ + "neg.b r1h" +gdb_test "x" "neg.b\t@er1" \ + "neg.b @er1" +gdb_test "x" "neg.b\t@\\(0x3(:2|),er1\\)" \ + "neg.b @(0x3:2,er1)" +gdb_test "x" "neg.b\t@er1\\+" \ + "neg.b @er1+" +gdb_test "x" "neg.b\t@-er1" \ + "neg.b @-er1" +gdb_test "x" "neg.b\t@\\+er1" \ + "neg.b @+er1" +gdb_test "x" "neg.b\t@er1-" \ + "neg.b @er1-" +gdb_test "x" "neg.b\t@\\(0x1234(:16|),er1\\)" \ + "neg.b @(0x1234:16,er1)" +gdb_test "x" "neg.b\t@\\(0x12345678(:32|),er1\\)" \ + "neg.b @(0x12345678:32,er1)" +gdb_test "x" "neg.b\t@\\(0x1234(:16|),r2l.b\\)" \ + "neg.b @(0x1234:16,r2l.b)" +gdb_test "x" "neg.b\t@\\(0x1234(:16|),r2.w\\)" \ + "neg.b @(0x1234:16,r2.w)" +gdb_test "x" "neg.b\t@\\(0x1234(:16|),er2.l\\)" \ + "neg.b @(0x1234:16,er2.l)" +gdb_test "x" "neg.b\t@\\(0x12345678(:32|),r2l.b\\)" \ + "neg.b @(0x12345678:32,r2l.b)" +gdb_test "x" "neg.b\t@\\(0x12345678(:32|),r2.w\\)" \ + "neg.b @(0x12345678:32,r2.w)" +gdb_test "x" "neg.b\t@\\(0x12345678(:32|),er2.l\\)" \ + "neg.b @(0x12345678:32,er2.l)" +gdb_test "x" "neg.b\t@0x12(:8|)" \ + "neg.b @0x12:8" +gdb_test "x" "neg.b\t@0x1234(:16|)" \ + "neg.b @0x1234:16" +gdb_test "x" "neg.b\t@0x12345678(:32|)" \ + "neg.b @0x12345678:32" +gdb_test "x" "neg.w\tr1" \ + "neg.w r1" +gdb_test "x" "neg.w\t@er1" \ + "neg.w @er1" +gdb_test "x" "neg.w\t@\\(0x6(:2|),er1\\)" \ + "neg.w @(0x6:2,er1)" +gdb_test "x" "neg.w\t@er1\\+" \ + "neg.w @er1+" +gdb_test "x" "neg.w\t@-er1" \ + "neg.w @-er1" +gdb_test "x" "neg.w\t@\\+er1" \ + "neg.w @+er1" +gdb_test "x" "neg.w\t@er1-" \ + "neg.w @er1-" +gdb_test "x" "neg.w\t@\\(0x1234(:16|),er1\\)" \ + "neg.w @(0x1234:16,er1)" +gdb_test "x" "neg.w\t@\\(0x12345678(:32|),er1\\)" \ + "neg.w @(0x12345678:32,er1)" +gdb_test "x" "neg.w\t@\\(0x1234(:16|),r2l.b\\)" \ + "neg.w @(0x1234:16,r2l.b)" +gdb_test "x" "neg.w\t@\\(0x1234(:16|),r2.w\\)" \ + "neg.w @(0x1234:16,r2.w)" +gdb_test "x" "neg.w\t@\\(0x1234(:16|),er2.l\\)" \ + "neg.w @(0x1234:16,er2.l)" +gdb_test "x" "neg.w\t@\\(0x12345678(:32|),r2l.b\\)" \ + "neg.w @(0x12345678:32,r2l.b)" +gdb_test "x" "neg.w\t@\\(0x12345678(:32|),r2.w\\)" \ + "neg.w @(0x12345678:32,r2.w)" +gdb_test "x" "neg.w\t@\\(0x12345678(:32|),er2.l\\)" \ + "neg.w @(0x12345678:32,er2.l)" +gdb_test "x" "neg.w\t@0x1234(:16|)" \ + "neg.w @0x1234:16" +gdb_test "x" "neg.w\t@0x12345678(:32|)" \ + "neg.w @0x12345678:32" +gdb_test "x" "neg.l\ter1" \ + "neg.l er1" +gdb_test "x" "neg.l\t@er1" \ + "neg.l @er1" +gdb_test "x" "neg.l\t@\\(0xc(:2|),er1\\)" \ + "neg.l @(0xc:2,er1)" +gdb_test "x" "neg.l\t@er1\\+" \ + "neg.l @er1+" +gdb_test "x" "neg.l\t@-er1" \ + "neg.l @-er1" +gdb_test "x" "neg.l\t@\\+er1" \ + "neg.l @+er1" +gdb_test "x" "neg.l\t@er1-" \ + "neg.l @er1-" +gdb_test "x" "neg.l\t@\\(0x1234(:16|),er1\\)" \ + "neg.l @(0x1234:16,er1)" +gdb_test "x" "neg.l\t@\\(0x12345678(:32|),er1\\)" \ + "neg.l @(0x12345678:32,er1)" +gdb_test "x" "neg.l\t@\\(0x1234(:16|),r2l.b\\)" \ + "neg.l @(0x1234:16,r2l.b)" +gdb_test "x" "neg.l\t@\\(0x1234(:16|),r2.w\\)" \ + "neg.l @(0x1234:16,r2.w)" +gdb_test "x" "neg.l\t@\\(0x1234(:16|),er2.l\\)" \ + "neg.l @(0x1234:16,er2.l)" +gdb_test "x" "neg.l\t@\\(0x12345678(:32|),r2l.b\\)" \ + "neg.l @(0x12345678:32,r2l.b)" +gdb_test "x" "neg.l\t@\\(0x12345678(:32|),r2.w\\)" \ + "neg.l @(0x12345678:32,r2.w)" +gdb_test "x" "neg.l\t@\\(0x12345678(:32|),er2.l\\)" \ + "neg.l @(0x12345678:32,er2.l)" +gdb_test "x" "neg.l\t@0x1234(:16|)" \ + "neg.l @0x1234:16" +gdb_test "x" "neg.l\t@0x12345678(:32|)" \ + "neg.l @0x12345678:32" +gdb_test "x" "tas\t@er1" \ + "tas @er1" +gdb_test "x" "extu.w\tr1" \ + "extu.w r1" +gdb_test "x" "extu.w\t@er1" \ + "extu.w @er1" +gdb_test "x" "extu.w\t@\\(0x6(:2|),er1\\)" \ + "extu.w @(0x6:2,er1)" +gdb_test "x" "extu.w\t@er1\\+" \ + "extu.w @er1+" +gdb_test "x" "extu.w\t@-er1" \ + "extu.w @-er1" +gdb_test "x" "extu.w\t@\\+er1" \ + "extu.w @+er1" +gdb_test "x" "extu.w\t@er1-" \ + "extu.w @er1-" +gdb_test "x" "extu.w\t@\\(0x1234(:16|),er1\\)" \ + "extu.w @(0x1234:16,er1)" +gdb_test "x" "extu.w\t@\\(0x12345678(:32|),er1\\)" \ + "extu.w @(0x12345678:32,er1)" +gdb_test "x" "extu.w\t@\\(0x1234(:16|),r2l.b\\)" \ + "extu.w @(0x1234:16,r2l.b)" +gdb_test "x" "extu.w\t@\\(0x1234(:16|),r2.w\\)" \ + "extu.w @(0x1234:16,r2.w)" +gdb_test "x" "extu.w\t@\\(0x1234(:16|),er2.l\\)" \ + "extu.w @(0x1234:16,er2.l)" +gdb_test "x" "extu.w\t@\\(0x12345678(:32|),r2l.b\\)" \ + "extu.w @(0x12345678:32,r2l.b)" +gdb_test "x" "extu.w\t@\\(0x12345678(:32|),r2.w\\)" \ + "extu.w @(0x12345678:32,r2.w)" +gdb_test "x" "extu.w\t@\\(0x12345678(:32|),er2.l\\)" \ + "extu.w @(0x12345678:32,er2.l)" +gdb_test "x" "extu.w\t@0x1234(:16|)" \ + "extu.w @0x1234:16" +gdb_test "x" "extu.w\t@0x12345678(:32|)" \ + "extu.w @0x12345678:32" +gdb_test "x" "extu.l\ter1" \ + "extu.l er1" +gdb_test "x" "extu.l\t@er1" \ + "extu.l @er1" +gdb_test "x" "extu.l\t@\\(0xc(:2|),er1\\)" \ + "extu.l @(0xc:2,er1)" +gdb_test "x" "extu.l\t@er1\\+" \ + "extu.l @er1+" +gdb_test "x" "extu.l\t@-er1" \ + "extu.l @-er1" +gdb_test "x" "extu.l\t@\\+er1" \ + "extu.l @+er1" +gdb_test "x" "extu.l\t@er1-" \ + "extu.l @er1-" +gdb_test "x" "extu.l\t@\\(0x1234(:16|),er1\\)" \ + "extu.l @(0x1234:16,er1)" +gdb_test "x" "extu.l\t@\\(0x12345678(:32|),er1\\)" \ + "extu.l @(0x12345678:32,er1)" +gdb_test "x" "extu.l\t@\\(0x1234(:16|),r2l.b\\)" \ + "extu.l @(0x1234:16,r2l.b)" +gdb_test "x" "extu.l\t@\\(0x1234(:16|),r2.w\\)" \ + "extu.l @(0x1234:16,r2.w)" +gdb_test "x" "extu.l\t@\\(0x1234(:16|),er2.l\\)" \ + "extu.l @(0x1234:16,er2.l)" +gdb_test "x" "extu.l\t@\\(0x12345678(:32|),r2l.b\\)" \ + "extu.l @(0x12345678:32,r2l.b)" +gdb_test "x" "extu.l\t@\\(0x12345678(:32|),r2.w\\)" \ + "extu.l @(0x12345678:32,r2.w)" +gdb_test "x" "extu.l\t@\\(0x12345678(:32|),er2.l\\)" \ + "extu.l @(0x12345678:32,er2.l)" +gdb_test "x" "extu.l\t@0x1234(:16|)" \ + "extu.l @0x1234:16" +gdb_test "x" "extu.l\t@0x12345678(:32|)" \ + "extu.l @0x12345678:32" +gdb_test "x" "extu.l\t#2,er1" \ + "extu.l #2,er1" +gdb_test "x" "extu.l\t#2,@er1" \ + "extu.l #2,@er1" +gdb_test "x" "extu.l\t#2,@\\(0xc(:2|),er1\\)" \ + "extu.l #2,@(0xc:2,er1)" +gdb_test "x" "extu.l\t#2,@er1\\+" \ + "extu.l #2,@er1+" +gdb_test "x" "extu.l\t#2,@-er1" \ + "extu.l #2,@-er1" +gdb_test "x" "extu.l\t#2,@\\+er1" \ + "extu.l #2,@+er1" +gdb_test "x" "extu.l\t#2,@er1-" \ + "extu.l #2,@er1-" +gdb_test "x" "extu.l\t#2,@\\(0x1234(:16|),er1\\)" \ + "extu.l #2,@(0x1234:16,er1)" +gdb_test "x" "extu.l\t#2,@\\(0x12345678(:32|),er1\\)" \ + "extu.l #2,@(0x12345678:32,er1)" +gdb_test "x" "extu.l\t#2,@\\(0x1234(:16|),r2l.b\\)" \ + "extu.l #2,@(0x1234:16,r2l.b)" +gdb_test "x" "extu.l\t#2,@\\(0x1234(:16|),r2.w\\)" \ + "extu.l #2,@(0x1234:16,r2.w)" +gdb_test "x" "extu.l\t#2,@\\(0x1234(:16|),er2.l\\)" \ + "extu.l #2,@(0x1234:16,er2.l)" +gdb_test "x" "extu.l\t#2,@\\(0x12345678(:32|),r2l.b\\)" \ + "extu.l #2,@(0x12345678:32,r2l.b)" +gdb_test "x" "extu.l\t#2,@\\(0x12345678(:32|),r2.w\\)" \ + "extu.l #2,@(0x12345678:32,r2.w)" +gdb_test "x" "extu.l\t#2,@\\(0x12345678(:32|),er2.l\\)" \ + "extu.l #2,@(0x12345678:32,er2.l)" +gdb_test "x" "extu.l\t#2,@0x1234(:16|)" \ + "extu.l #2,@0x1234:16" +gdb_test "x" "extu.l\t#2,@0x12345678(:32|)" \ + "extu.l #2,@0x12345678:32" +gdb_test "x" "exts.w\tr1" \ + "exts.w r1" +gdb_test "x" "exts.w\t@er1" \ + "exts.w @er1" +gdb_test "x" "exts.w\t@\\(0x6(:2|),er1\\)" \ + "exts.w @(0x6:2,er1)" +gdb_test "x" "exts.w\t@er1\\+" \ + "exts.w @er1+" +gdb_test "x" "exts.w\t@-er1" \ + "exts.w @-er1" +gdb_test "x" "exts.w\t@\\+er1" \ + "exts.w @+er1" +gdb_test "x" "exts.w\t@er1-" \ + "exts.w @er1-" +gdb_test "x" "exts.w\t@\\(0x1234(:16|),er1\\)" \ + "exts.w @(0x1234:16,er1)" +gdb_test "x" "exts.w\t@\\(0x12345678(:32|),er1\\)" \ + "exts.w @(0x12345678:32,er1)" +gdb_test "x" "exts.w\t@\\(0x1234(:16|),r2l.b\\)" \ + "exts.w @(0x1234:16,r2l.b)" +gdb_test "x" "exts.w\t@\\(0x1234(:16|),r2.w\\)" \ + "exts.w @(0x1234:16,r2.w)" +gdb_test "x" "exts.w\t@\\(0x1234(:16|),er2.l\\)" \ + "exts.w @(0x1234:16,er2.l)" +gdb_test "x" "exts.w\t@\\(0x12345678(:32|),r2l.b\\)" \ + "exts.w @(0x12345678:32,r2l.b)" +gdb_test "x" "exts.w\t@\\(0x12345678(:32|),r2.w\\)" \ + "exts.w @(0x12345678:32,r2.w)" +gdb_test "x" "exts.w\t@\\(0x12345678(:32|),er2.l\\)" \ + "exts.w @(0x12345678:32,er2.l)" +gdb_test "x" "exts.w\t@0x1234(:16|)" \ + "exts.w @0x1234:16" +gdb_test "x" "exts.w\t@0x12345678(:32|)" \ + "exts.w @0x12345678:32" +gdb_test "x" "exts.l\ter1" \ + "exts.l er1" +gdb_test "x" "exts.l\t@er1" \ + "exts.l @er1" +gdb_test "x" "exts.l\t@\\(0xc(:2|),er1\\)" \ + "exts.l @(0xc:2,er1)" +gdb_test "x" "exts.l\t@er1\\+" \ + "exts.l @er1+" +gdb_test "x" "exts.l\t@-er1" \ + "exts.l @-er1" +gdb_test "x" "exts.l\t@\\+er1" \ + "exts.l @+er1" +gdb_test "x" "exts.l\t@er1-" \ + "exts.l @er1-" +gdb_test "x" "exts.l\t@\\(0x1234(:16|),er1\\)" \ + "exts.l @(0x1234:16,er1)" +gdb_test "x" "exts.l\t@\\(0x12345678(:32|),er1\\)" \ + "exts.l @(0x12345678:32,er1)" +gdb_test "x" "exts.l\t@\\(0x1234(:16|),r2l.b\\)" \ + "exts.l @(0x1234:16,r2l.b)" +gdb_test "x" "exts.l\t@\\(0x1234(:16|),r2.w\\)" \ + "exts.l @(0x1234:16,r2.w)" +gdb_test "x" "exts.l\t@\\(0x1234(:16|),er2.l\\)" \ + "exts.l @(0x1234:16,er2.l)" +gdb_test "x" "exts.l\t@\\(0x12345678(:32|),r2l.b\\)" \ + "exts.l @(0x12345678:32,r2l.b)" +gdb_test "x" "exts.l\t@\\(0x12345678(:32|),r2.w\\)" \ + "exts.l @(0x12345678:32,r2.w)" +gdb_test "x" "exts.l\t@\\(0x12345678(:32|),er2.l\\)" \ + "exts.l @(0x12345678:32,er2.l)" +gdb_test "x" "exts.l\t@0x1234(:16|)" \ + "exts.l @0x1234:16" +gdb_test "x" "exts.l\t@0x12345678(:32|)" \ + "exts.l @0x12345678:32" +gdb_test "x" "exts.l\t#2,er1" \ + "exts.l #2,er1" +gdb_test "x" "exts.l\t#2,@er1" \ + "exts.l #2,@er1" +gdb_test "x" "exts.l\t#2,@\\(0xc(:2|),er1\\)" \ + "exts.l #2,@(0xc:2,er1)" +gdb_test "x" "exts.l\t#2,@er1\\+" \ + "exts.l #2,@er1+" +gdb_test "x" "exts.l\t#2,@-er1" \ + "exts.l #2,@-er1" +gdb_test "x" "exts.l\t#2,@\\+er1" \ + "exts.l #2,@+er1" +gdb_test "x" "exts.l\t#2,@er1-" \ + "exts.l #2,@er1-" +gdb_test "x" "exts.l\t#2,@\\(0x1234(:16|),er1\\)" \ + "exts.l #2,@(0x1234:16,er1)" +gdb_test "x" "exts.l\t#2,@\\(0x12345678(:32|),er1\\)" \ + "exts.l #2,@(0x12345678:32,er1)" +gdb_test "x" "exts.l\t#2,@\\(0x1234(:16|),r2l.b\\)" \ + "exts.l #2,@(0x1234:16,r2l.b)" +gdb_test "x" "exts.l\t#2,@\\(0x1234(:16|),r2.w\\)" \ + "exts.l #2,@(0x1234:16,r2.w)" +gdb_test "x" "exts.l\t#2,@\\(0x1234(:16|),er2.l\\)" \ + "exts.l #2,@(0x1234:16,er2.l)" +gdb_test "x" "exts.l\t#2,@\\(0x12345678(:32|),r2l.b\\)" \ + "exts.l #2,@(0x12345678:32,r2l.b)" +gdb_test "x" "exts.l\t#2,@\\(0x12345678(:32|),r2.w\\)" \ + "exts.l #2,@(0x12345678:32,r2.w)" +gdb_test "x" "exts.l\t#2,@\\(0x12345678(:32|),er2.l\\)" \ + "exts.l #2,@(0x12345678:32,er2.l)" +gdb_test "x" "exts.l\t#2,@0x1234(:16|)" \ + "exts.l #2,@0x1234:16" +gdb_test "x" "exts.l\t#2,@0x12345678(:32|)" \ + "exts.l #2,@0x12345678:32" |