diff options
Diffstat (limited to 'ld/testsuite')
-rw-r--r-- | ld/testsuite/ld-discard/static.d | 2 | ||||
-rw-r--r-- | ld/testsuite/ld-elf/endsym.d | 2 | ||||
-rw-r--r-- | ld/testsuite/ld-elf/merge.d | 2 | ||||
-rw-r--r-- | ld/testsuite/ld-elf/pr14926.d | 2 | ||||
-rw-r--r-- | ld/testsuite/ld-elf/sec64k.exp | 1 | ||||
-rw-r--r-- | ld/testsuite/ld-s12z/opr-linking.d | 20 | ||||
-rw-r--r-- | ld/testsuite/ld-s12z/opr-linking.s | 7 | ||||
-rw-r--r-- | ld/testsuite/ld-s12z/relative-linking.d | 14 | ||||
-rw-r--r-- | ld/testsuite/ld-s12z/relative-linking.s | 5 | ||||
-rw-r--r-- | ld/testsuite/ld-s12z/z12s.exp | 33 |
10 files changed, 84 insertions, 4 deletions
diff --git a/ld/testsuite/ld-discard/static.d b/ld/testsuite/ld-discard/static.d index 7a299cc..ebdbda8 100644 --- a/ld/testsuite/ld-discard/static.d +++ b/ld/testsuite/ld-discard/static.d @@ -3,5 +3,5 @@ #error: `(\.data\.exit|data)' referenced in section `\.text' of tmpdir/static.o: defined in discarded section `\.data\.exit' of tmpdir/static.o #objdump: -p #xfail: d30v-*-* dlx-*-* pj*-*-* -#xfail: m68hc12-*-* m6812-*-* +#xfail: m68hc12-*-* m6812-*-* #pass diff --git a/ld/testsuite/ld-elf/endsym.d b/ld/testsuite/ld-elf/endsym.d index 86fda21..39667e3 100644 --- a/ld/testsuite/ld-elf/endsym.d +++ b/ld/testsuite/ld-elf/endsym.d @@ -2,7 +2,7 @@ #source: endsym.s #ld: --sort-common #nm: -n -#xfail: m68hc1*-* xgate-* cr16-*-* crx-*-* dlx-*-* nds32*-*-* visium-*-* +#xfail: m68hc1*-* xgate-* cr16-*-* crx-*-* dlx-*-* nds32*-*-* visium-*-* s12z-*-* #xfail: pru-*-* #... diff --git a/ld/testsuite/ld-elf/merge.d b/ld/testsuite/ld-elf/merge.d index 2ac88ea..ebabae8 100644 --- a/ld/testsuite/ld-elf/merge.d +++ b/ld/testsuite/ld-elf/merge.d @@ -4,7 +4,7 @@ #xfail: "bfin-*-*" "cr16-*-*" "cris*-*-*" "crx-*-*" "d10v-*-*" "d30v-*-*" #xfail: "dlx-*-*" "fr30-*-*" "frv-*-*" "hppa*64*-*-*" "h8300-*-*" "score-*-*" #xfail: "ip2k-*-*" "iq2000-*-*" "lm32-*-*" -#xfail: "mcore-*-*" "mn102*-*-*" "ms1-*-*" "mep-*-*" "m68hc11-*-*" "nios2-*-*" +#xfail: "mcore-*-*" "mn102*-*-*" "ms1-*-*" "mep-*-*" "m68hc11-*-*" "nios2-*-*" s12z-*-* #xfail: "or32-*-*" "pj-*-*" "tic6x-*-*" "vax-*-*" "xstormy16-*-*" #xfail: "xtensa*-*-*" "metag-*-*" "ft32-*-*" "pru-*-*" diff --git a/ld/testsuite/ld-elf/pr14926.d b/ld/testsuite/ld-elf/pr14926.d index 8fc8e64..4e0a8da 100644 --- a/ld/testsuite/ld-elf/pr14926.d +++ b/ld/testsuite/ld-elf/pr14926.d @@ -1,6 +1,6 @@ #ld: -Ttext=0x60 #readelf: -S --wide -#notarget: d10v-* m68hc1*-* msp*-* visium-* xgate-* xstormy*-* pru-*-* +#notarget: d10v-* m68hc1*-* msp*-* visium-* xgate-* xstormy*-* pru-*-* s12z-*-* # the above targets use memory regions that don't allow 0x60 for .text #... diff --git a/ld/testsuite/ld-elf/sec64k.exp b/ld/testsuite/ld-elf/sec64k.exp index 2495cb8..b58139e 100644 --- a/ld/testsuite/ld-elf/sec64k.exp +++ b/ld/testsuite/ld-elf/sec64k.exp @@ -40,6 +40,7 @@ if {[istarget "ft32-*-*"] || [istarget "h8300-*-*"] || [istarget "ip2k-*-*"] || [istarget "m68hc1*-*"] + || [istarget "s12z-*"] || [istarget "xgate-*"] } { return } diff --git a/ld/testsuite/ld-s12z/opr-linking.d b/ld/testsuite/ld-s12z/opr-linking.d new file mode 100644 index 0000000..05d154b --- /dev/null +++ b/ld/testsuite/ld-s12z/opr-linking.d @@ -0,0 +1,20 @@ +#source: opr-linking.s +#ld: --no-relax --defsym here=0xfe0000 --defsym=foo=0xfe0050 --defsym=bar=0xfe0010 --defsym=wiz=0xfe0040 +#objdump: -d -r + +tmpdir/dump: file format elf32-s12z + + +Disassembly of section .text: + + +00fe0000 .*: + fe0000: 01 nop + fe0001: 01 nop + fe0002: 01 nop + fe0003: 01 nop + fe0004: 1b 37 f6 fa divs\.lw d7, bar, wiz + fe0008: fe 00 10 fa + fe000c: fe 00 40 + fe000f: bc fa fe 00 clr\.b foo + fe0013: 50 diff --git a/ld/testsuite/ld-s12z/opr-linking.s b/ld/testsuite/ld-s12z/opr-linking.s new file mode 100644 index 0000000..aa70566 --- /dev/null +++ b/ld/testsuite/ld-s12z/opr-linking.s @@ -0,0 +1,7 @@ +here: + nop + nop + nop + nop + divs.lw d7, bar, wiz + clr.b foo diff --git a/ld/testsuite/ld-s12z/relative-linking.d b/ld/testsuite/ld-s12z/relative-linking.d new file mode 100644 index 0000000..286fe52 --- /dev/null +++ b/ld/testsuite/ld-s12z/relative-linking.d @@ -0,0 +1,14 @@ +#source: relative-linking.s +#ld: --no-relax --defsym here=0xfe0020 --defsym=foo=0xfe0008 --defsym=bar=0xfe0010 --defsym=wiz=0xfe0040 +#objdump: -d -r + +tmpdir/dump: file format elf32-s12z + + +Disassembly of section .text: + +00fe0000 <here>: + fe0000: 20 80 08 bra foo + fe0003: 02 b0 bc 80 brclr.b d0, #3, bar + fe0007: 0d + fe0008: 0b 85 80 38 dbne d1, wiz diff --git a/ld/testsuite/ld-s12z/relative-linking.s b/ld/testsuite/ld-s12z/relative-linking.s new file mode 100644 index 0000000..fa52edb --- /dev/null +++ b/ld/testsuite/ld-s12z/relative-linking.s @@ -0,0 +1,5 @@ + +here: + bra foo + brclr.b d0, #3, bar + dbne d1, wiz diff --git a/ld/testsuite/ld-s12z/z12s.exp b/ld/testsuite/ld-s12z/z12s.exp new file mode 100644 index 0000000..4c9baa4 --- /dev/null +++ b/ld/testsuite/ld-s12z/z12s.exp @@ -0,0 +1,33 @@ +# Expect script for run_dump_test based ld-m68hc11 tests. +# Copyright (C) 2018 Free Software Foundation, Inc. +# +# This file is part of the GNU Binutils. +# +# 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 3 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., 51 Franklin Street - Fifth Floor, Boston, +# MA 02110-1301, USA. +# + +# Test S12Z linker tests. This tests the assembler as well as the linker. + +if { ![istarget s12z-*-*] } { + return +} + +set rd_test_list [lsort [glob -nocomplain $srcdir/$subdir/*.d]] +foreach shtest $rd_test_list { + # We need to strip the ".d", but can leave the dirname. + verbose [file rootname $shtest] + run_dump_test [file rootname $shtest] +} |