aboutsummaryrefslogtreecommitdiff
path: root/ld/testsuite
diff options
context:
space:
mode:
Diffstat (limited to 'ld/testsuite')
-rw-r--r--ld/testsuite/ChangeLog8
-rw-r--r--ld/testsuite/ld-h8300/h8300.exp32
-rw-r--r--ld/testsuite/ld-h8300/relax.d21
-rw-r--r--ld/testsuite/ld-h8300/relax.s10
4 files changed, 71 insertions, 0 deletions
diff --git a/ld/testsuite/ChangeLog b/ld/testsuite/ChangeLog
index 118c6e1..5460327 100644
--- a/ld/testsuite/ChangeLog
+++ b/ld/testsuite/ChangeLog
@@ -1,3 +1,11 @@
+2002-11-15 Nick Clifton <nickc@redhat.com>
+
+ * ld-h8300: New directory.
+ * ld-h8300/h8300.exp: New expect script. Only run tests for h8300
+ targets.
+ * ld-h8300/relax.s: New assembler source file.
+ * ld-h8300/relax.d: New expected output file.
+
2002-11-11 Hans-Peter Nilsson <hp@axis.com>
* ld-elf/sec64k.exp: New test.
diff --git a/ld/testsuite/ld-h8300/h8300.exp b/ld/testsuite/ld-h8300/h8300.exp
new file mode 100644
index 0000000..99542f4
--- /dev/null
+++ b/ld/testsuite/ld-h8300/h8300.exp
@@ -0,0 +1,32 @@
+# Expect script for ld-h8300 tests
+# Copyright 2002 Free Software Foundation, Inc.
+#
+# This file 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.
+#
+# Written by Nick Clifton <nickc@redhat.com>
+#
+
+# Test h8300
+
+if ![istarget h8300-*-*] {
+ return
+}
+
+set test_list [lsort [glob -nocomplain $srcdir/$subdir/*.d]]
+foreach test $test_list {
+ # We need to strip the ".d", but can leave the dirname.
+ verbose [file rootname $test]
+ run_dump_test [file rootname $test]
+}
diff --git a/ld/testsuite/ld-h8300/relax.d b/ld/testsuite/ld-h8300/relax.d
new file mode 100644
index 0000000..a5672a5
--- /dev/null
+++ b/ld/testsuite/ld-h8300/relax.d
@@ -0,0 +1,21 @@
+# name: H8300 Relxation Test
+# ld: --relax
+# objdump: -d --no-show-raw-insn
+
+# Based on the test case reported by Kazu Hirata:
+# http://sources.redhat.com/ml/binutils/2002-11/msg00301.html
+
+.*: file format .*-h8300
+
+Disassembly of section .text:
+
+00000100 <_start>:
+ 100: 0d 00 mov.w r0,r0
+ 102: 47 02 beq .+2 \(106\)
+ 104: 55 02 bsr .+2 \(108\)
+
+00000106 <.L1>:
+ 106: 54 70 rts
+
+00000108 <_bar>:
+ 108: 54 70 rts
diff --git a/ld/testsuite/ld-h8300/relax.s b/ld/testsuite/ld-h8300/relax.s
new file mode 100644
index 0000000..b06f3a9
--- /dev/null
+++ b/ld/testsuite/ld-h8300/relax.s
@@ -0,0 +1,10 @@
+ .text
+ .global _start
+_start:
+ mov.w r0,r0
+ beq .L1
+ jsr @_bar
+.L1:
+ rts
+_bar:
+ rts