* gas/m68k/all.exp: Add support for fido.
authorKazu Hirata <kazu@codesourcery.com>
Wed, 27 Dec 2006 07:22:43 +0000 (07:22 +0000)
committerKazu Hirata <kazu@codesourcery.com>
Wed, 27 Dec 2006 07:22:43 +0000 (07:22 +0000)
* gas/m68k/fido.d, gas/m68k/fido.s: New.

gas/testsuite/ChangeLog
gas/testsuite/gas/m68k/all.exp
gas/testsuite/gas/m68k/fido.d [new file with mode: 0644]
gas/testsuite/gas/m68k/fido.s [new file with mode: 0644]

index 65d07cf..9c38008 100644 (file)
@@ -1,3 +1,8 @@
+2006-12-27  Kazu Hirata  <kazu@codesourcery.com>
+
+       * gas/m68k/all.exp: Add support for fido.
+       * gas/m68k/fido.d, gas/m68k/fido.s: New.
+
 2006-12-19  Nathan Sidwell  <nathan@codesourcery.com>
 
        * gas/cfi/cfi-common-6.s: Do not use |.
index 7d54f93..8b43ed4 100644 (file)
@@ -13,7 +13,7 @@ if [istarget "m6811-*-*"] then {
 if [istarget "m6812-*-*"] then {
    return
 }
-if [istarget m68*-*-*] then {
+if { [istarget m68*-*-*] || [istarget fido*-*-*] } then {
     gas_test "t2.s" "" "" "cross-section branch"
     if [istarget m68*-motorola-sysv] then {
        run_dump_test t2
@@ -29,9 +29,18 @@ if [istarget m68*-*-*] then {
     setup_xfail "*-*"
     clear_xfail "*-*-*elf*" "*-*-sysv4*" "*-*-rtems" "*-*-*gnu*" "*-*-psos*"
     run_dump_test pcrel
-    run_dump_test operands
-    run_dump_test cas
-    run_dump_test bitfield
+
+    # Since fido is basically CPU32, it does not support those
+    # instructions beyond CPU32.  Disable those tests that test them.
+    if ![istarget fido-*-*] then {
+       run_dump_test operands
+       run_dump_test cas
+       run_dump_test bitfield
+    } else {
+       # Test fido-specific instructions.
+       run_dump_test fido
+    }
+
     run_dump_test link
     run_dump_test fmoveml
     run_dump_test mcf-mov3q
diff --git a/gas/testsuite/gas/m68k/fido.d b/gas/testsuite/gas/m68k/fido.d
new file mode 100644 (file)
index 0000000..fff5abb
--- /dev/null
@@ -0,0 +1,41 @@
+#objdump: -d --prefix-addresses
+#name: fido
+
+# Test parsing of the operands of the fido-specific instructions.
+
+.*: +file format .*
+
+Disassembly of section .text:
+0+000 <foo> sleep
+0+002 <foo\+(0x|)2> trapx #0
+0+004 <foo\+(0x|)4> trapx #1
+0+006 <foo\+(0x|)6> trapx #2
+0+008 <foo\+(0x|)8> trapx #3
+0+00a <foo\+(0x|)a> trapx #4
+0+00c <foo\+(0x|)c> trapx #5
+0+00e <foo\+(0x|)e> trapx #6
+0+010 <foo\+(0x|)10> trapx #7
+0+012 <foo\+(0x|)12> trapx #8
+0+014 <foo\+(0x|)14> trapx #9
+0+016 <foo\+(0x|)16> trapx #10
+0+018 <foo\+(0x|)18> trapx #11
+0+01a <foo\+(0x|)1a> trapx #12
+0+01c <foo\+(0x|)1c> trapx #13
+0+01e <foo\+(0x|)1e> trapx #14
+0+020 <foo\+(0x|)20> trapx #15
+0+022 <foo\+(0x|)22> movec %cac,%d0
+0+026 <foo\+(0x|)26> movec %cac,%a0
+0+02a <foo\+(0x|)2a> movec %mbb,%d1
+0+02e <foo\+(0x|)2e> movec %mbb,%a1
+0+032 <foo\+(0x|)32> movec %d2,%cac
+0+036 <foo\+(0x|)36> movec %a2,%cac
+0+03a <foo\+(0x|)3a> movec %d3,%mbb
+0+03e <foo\+(0x|)3e> movec %a3,%mbb
+0+042 <foo\+(0x|)42> movec %cac,%d4
+0+046 <foo\+(0x|)46> movec %cac,%a4
+0+04a <foo\+(0x|)4a> movec %mbb,%d5
+0+04e <foo\+(0x|)4e> movec %mbb,%a5
+0+052 <foo\+(0x|)52> movec %d6,%cac
+0+056 <foo\+(0x|)56> movec %fp,%cac
+0+05a <foo\+(0x|)5a> movec %d7,%mbb
+0+05e <foo\+(0x|)5e> movec %sp,%mbb
diff --git a/gas/testsuite/gas/m68k/fido.s b/gas/testsuite/gas/m68k/fido.s
new file mode 100644 (file)
index 0000000..8aaac7c
--- /dev/null
@@ -0,0 +1,37 @@
+# Test parsing of the operands of the fido-specific instructions.
+       .text
+       .globl  foo
+foo:   
+       sleep
+       trapx #0
+       trapx #1
+       trapx #2
+       trapx #3
+       trapx #4
+       trapx #5
+       trapx #6
+       trapx #7
+       trapx #8
+       trapx #9
+       trapx #10
+       trapx #11
+       trapx #12
+       trapx #13
+       trapx #14
+       trapx #15
+       movec #0xffe,%d0
+       movec #0xffe,%a0
+       movec #0xfff,%d1
+       movec #0xfff,%a1
+       movec %d2,#0xffe
+       movec %a2,#0xffe
+       movec %d3,#0xfff
+       movec %a3,#0xfff
+       movec %cac,%d4
+       movec %cac,%a4
+       movec %mbb,%d5
+       movec %mbb,%a5
+       movec %d6,%cac
+       movec %a6,%cac
+       movec %d7,%mbb
+       movec %a7,%mbb