aboutsummaryrefslogtreecommitdiff
path: root/gas/testsuite
diff options
context:
space:
mode:
authorAlexandre Oliva <aoliva@redhat.com>2004-07-29 05:17:41 +0000
committerAlexandre Oliva <aoliva@redhat.com>2004-07-29 05:17:41 +0000
commit1d70c7fb832949b7322234e33454a128e0adb674 (patch)
tree1baaafc6acdcecc2e80bc6afca9fa385ad15ed75 /gas/testsuite
parente7fbc2bf98c9a29fa479efe08fd7d77fd163d7b9 (diff)
downloadfsf-binutils-gdb-1d70c7fb832949b7322234e33454a128e0adb674.zip
fsf-binutils-gdb-1d70c7fb832949b7322234e33454a128e0adb674.tar.gz
fsf-binutils-gdb-1d70c7fb832949b7322234e33454a128e0adb674.tar.bz2
include/elf/ChangeLog:
Introduce SH2a support. 2004-02-18 Corinna Vinschen <vinschen@redhat.com> * sh.h (EF_SH2A_NOFPU): New. 2003-12-01 Michael Snyder <msnyder@redhat.com> * sh.h (EF_SH2A): New. bfd/ChangeLog: Introduce SH2a support. 2004-02-18 Corinna Vinschen <vinschen@redhat.com> * archures.c (bfd_mach_sh2a_nofpu): New. * bfd-in2.h: Rebuilt. * cpu-sh.c (SH2A_NOFPU_NEXT): New. (arch_info_struct): Add sh2a_nofpu. * elf32-sh.c (sh_elf_set_mach_from_flags): Handle sh2a_nofpu. 2003-12-29 DJ Delorie <dj@redhat.com> * reloc.c: Add relocs for sh2a. * bfd-in2.h: Regenerate. * libbfd.hh: Regenerate. 2003-12-01 Michael Snyder <msnyder@redhat.com> * archures.c (bfd_mach_sh2a): New. * bfd-in2.h: Rebuilt. * cpu-sh.c (SH_NEXT, SH2_NEXT, etc.): Change defines to enums. (SH2A_NEXT): New. (arch_info_struct): Add sh2a. * elf32-sh.c (sh_elf_set_mach_from_flags): Handle sh2a. binutils/ChangeLog: * readelf.c (get_machine_flags <EM_SH>): Handle EF_SH2A and EF_SH2A_NOFPU. gas/ChangeLog: Introduce SH2a support. 2004-02-24 Corinna Vinschen <vinschen@redhat.com> * config/tc-sh.c (get_specific): Change arch_sh2a_up to arch_sh2a_nofpu_up. 2004-02-24 Corinna Vinschen <vinschen@redhat.com> * config/tc-sh.c (md_parse_option): Add sh2a-nofpu ISA handling. 2004-02-20 Corinna Vinschen <vinschen@redhat.com> * config/tc-sh.c (sh_elf_final_processing): Move sh2a recognition to end of conditional expression. 2004-02-20 Corinna Vinschen <vinschen@redhat.com> * config/tc-sh.c: Add sh2a-nofpu support. 2003-12-29 DJ Delorie <dj@redhat.com> * tc-sh.c: Add sh2a support. (parse_reg): Add tbr. (parse_at): Support @@(disp,tbr). (get_specific): Support sh2a opcodes. (insert4): New, for 4 byte relocs. (build_Mytes): Support sh2a opcodes. (md_apply_fix3_Mytes): Support sh2a opcodes. 2003-12-02 Michael Snyder <msnyder@redhat.com> * config/tc-sh.c (md_parse_option): Handle sh2a. (sh_elf_final_processing): Ditto. gas/testsuite/ChangeLog: 2003-12-30 DJ Delorie <dj@redhat.com> * gas/sh/sh2a.s: New. * gas/sh/sh2a.d: New. * gas/sh/basic.exp: Add it.
Diffstat (limited to 'gas/testsuite')
-rw-r--r--gas/testsuite/ChangeLog7
-rw-r--r--gas/testsuite/gas/sh/basic.exp1
-rw-r--r--gas/testsuite/gas/sh/sh2a.d68
-rw-r--r--gas/testsuite/gas/sh/sh2a.s96
4 files changed, 172 insertions, 0 deletions
diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog
index 13815bb..7311abf 100644
--- a/gas/testsuite/ChangeLog
+++ b/gas/testsuite/ChangeLog
@@ -1,3 +1,10 @@
+2004-07-29 Alexandre Oliva <aoliva@redhat.com>
+
+ 2003-12-30 DJ Delorie <dj@redhat.com>
+ * gas/sh/sh2a.s: New.
+ * gas/sh/sh2a.d: New.
+ * gas/sh/basic.exp: Add it.
+
2004-07-27 Tomer Levi <Tomer.Levi@nsc.com>
* gas/all/gas.exp (do_930509a): Disable test for crx.
diff --git a/gas/testsuite/gas/sh/basic.exp b/gas/testsuite/gas/sh/basic.exp
index 1e72ff1..0b3c210 100644
--- a/gas/testsuite/gas/sh/basic.exp
+++ b/gas/testsuite/gas/sh/basic.exp
@@ -160,6 +160,7 @@ if [istarget sh*-*-*] then {
# Test -renesas.
run_dump_test "renesas-1"
+ run_dump_test "sh2a"
}
}
diff --git a/gas/testsuite/gas/sh/sh2a.d b/gas/testsuite/gas/sh/sh2a.d
new file mode 100644
index 0000000..7b7b0c6
--- /dev/null
+++ b/gas/testsuite/gas/sh/sh2a.d
@@ -0,0 +1,68 @@
+#objdump: -dr --prefix-addresses --show-raw-insn
+#name: SH2a new instructions
+#as: -isa=sh2a
+
+dump.o: file format elf32-sh
+
+Disassembly of section .text:
+0x00000000 33 79 4f ff band.b #7,@\(4095,r3\)
+0x00000004 33 79 cf ff bandnot.b #7,@\(4095,r3\)
+0x00000008 33 79 0f ff bclr.b #7,@\(4095,r3\)
+0x0000000c 86 37 bclr #7,r3
+0x0000000e 33 79 3f ff bld.b #7,@\(4095,r3\)
+0x00000012 87 3f bld #7,r3
+0x00000014 33 79 bf ff bldnot.b #7,@\(4095,r3\)
+0x00000018 33 79 5f ff bor.b #7,@\(4095,r3\)
+0x0000001c 33 79 df ff bornot.b #7,@\(4095,r3\)
+0x00000020 33 79 1f ff bset.b #7,@\(4095,r3\)
+0x00000024 86 3f bset #7,r3
+0x00000026 33 79 2f ff bst.b #7,@\(4095,r3\)
+0x0000002a 87 37 bst #7,r3
+0x0000002c 33 79 6f ff bxor.b #7,@\(4095,r3\)
+0x00000030 43 91 clips.b r3
+0x00000032 43 95 clips.w r3
+0x00000034 43 81 clipu.b r3
+0x00000036 43 85 clipu.w r3
+0x00000038 43 94 divs r0,r3
+0x0000003a 43 84 divu r0,r3
+0x0000003c 33 31 3f ff fmov.s fr3,@\(16380,r3\)
+0x00000040 33 21 3f ff fmov.d dr2,@\(32760,r3\)
+0x00000044 33 31 7f ff fmov.s @\(16380,r3\),fr3
+0x00000048 32 31 7f ff fmov.d @\(32760,r3\),dr2
+0x0000004c 43 4b jsr/n @r3
+0x0000004e 83 ff jsr/n @@\(1020,tbr\)
+0x00000050 43 e5 ldbank @r3,r0
+0x00000052 43 4a ldc r3,tbr
+0x00000054 34 31 0f ff mov.b r3,@\(4095,r4\)
+0x00000058 34 31 1f ff mov.w r3,@\(8190,r4\)
+0x0000005c 34 31 2f ff mov.l r3,@\(16380,r4\)
+0x00000060 35 41 4f ff mov.b @\(4095,r4\),r5
+0x00000064 35 41 5f ff mov.w @\(8190,r4\),r5
+0x00000068 35 41 6f ff mov.l @\(16380,r4\),r5
+0x0000006c 43 8b mov.b r0,@r3\+
+0x0000006e 43 9b mov.w r0,@r3\+
+0x00000070 43 ab mov.l r0,@r3\+
+0x00000072 43 cb mov.b @-r3,r0
+0x00000074 43 db mov.w @-r3,r0
+0x00000076 43 eb mov.l @-r3,r0
+0x00000078 03 70 ff ff movi20 #524287,r3
+0x0000007c 03 80 00 00 movi20 #-524288,r3
+0x00000080 03 71 ff ff movi20s #134217472,r3
+0x00000084 03 81 00 00 movi20s #-134217728,r3
+0x00000088 43 f1 movml.l r3,@-r15
+0x0000008a 43 f5 movml.l @r15\+,r3
+0x0000008c 43 f0 movmu.l r3,@-r15
+0x0000008e 43 f4 movmu.l @r15\+,r3
+0x00000090 03 39 movrt r3
+0x00000092 34 31 8f ff movu.b @\(4095,r3\),r4
+0x00000096 34 31 9f ff movu.w @\(8190,r3\),r4
+0x0000009a 44 80 mulr r0,r4
+0x0000009c 00 68 nott
+0x0000009e 05 83 pref @r5
+0x000000a0 00 5b resbank
+0x000000a2 00 6b rts/n
+0x000000a4 03 7b rtv/n r3
+0x000000a6 44 3c shad r3,r4
+0x000000a8 44 3d shld r3,r4
+0x000000aa 45 e1 stbank r0,@r5
+0x000000ac 04 4a stc tbr,r4
diff --git a/gas/testsuite/gas/sh/sh2a.s b/gas/testsuite/gas/sh/sh2a.s
new file mode 100644
index 0000000..8ded738
--- /dev/null
+++ b/gas/testsuite/gas/sh/sh2a.s
@@ -0,0 +1,96 @@
+ .text
+
+# New instructions
+
+ band.b #7,@(4095,r3)
+
+ bandnot.b #7,@(4095,r3)
+
+ bclr.b #7,@(4095,r3)
+ bclr #7,r3
+
+ bld.b #7,@(4095,r3)
+ bld #7,r3
+
+ bldnot.b #7,@(4095,r3)
+
+ bor.b #7,@(4095,r3)
+
+ bornot.b #7,@(4095,r3)
+
+ bset.b #7,@(4095,r3)
+ bset #7,r3
+
+ bst.b #7,@(4095,r3)
+ bst #7,r3
+
+ bxor.b #7,@(4095,r3)
+
+ clips.b r3
+ clips.w r3
+ clipu.b r3
+ clipu.w r3
+
+ divs r0,r3
+ divu r0,r3
+
+ fmov.s fr3,@(4095*4,r3)
+ fmov.d dr2,@(4095*8,r3)
+ fmov.s @(4095*4,r3),fr3
+ fmov.d @(4095*8,r3),dr2
+
+ jsr/n @r3
+ jsr/n @@(255*4,tbr)
+
+ ldbank @r3,r0
+
+ ldc r3,tbr
+
+ mov.b r3,@(4095,r4)
+ mov.w r3,@(4095*2,r4)
+ mov.l r3,@(4095*4,r4)
+ mov.b @(4095,r4),r5
+ mov.w @(4095*2,r4),r5
+ mov.l @(4095*4,r4),r5
+
+ mov.b r0,@r3+
+ mov.w r0,@r3+
+ mov.l r0,@r3+
+ mov.b @-r3,r0
+ mov.w @-r3,r0
+ mov.l @-r3,r0
+
+ movi20 #524287,r3
+ movi20 #-524288,r3
+ movi20s #524287*256,r3
+ movi20s #-524288*256,r3
+
+ movml.l r3,@-r15
+ movml.l @r15+,r3
+
+ movmu.l r3,@-r15
+ movmu.l @r15+,r3
+
+ movrt r3
+
+ movu.b @(4095,r3),r4
+ movu.w @(4095*2,r3),r4
+
+ mulr r0,r4
+
+ nott
+
+ pref @r5
+
+ resbank
+
+ rts/n
+
+ rtv/n r3
+
+ shad r3,r4
+ shld r3,r4
+
+ stbank r0,@r5
+
+ stc tbr,r4