From 6ff185b89017b16e9092142515f0a119b684ac72 Mon Sep 17 00:00:00 2001 From: Alan Modra Date: Wed, 29 May 2019 22:56:30 +0930 Subject: [PATCH] s12z genelf.em This changes s12z to use generic.em and genelf.em, which is more suited to targets that use the generic linker hash table. A tweak or two to some testsuite predicates then gives a clean testsuite result on the target. PR 24596 binutils/ * testsuite/lib/binutils-common.exp (supports_gnu_unique): Add s12z to targets not supporting this feature. ld/ * emulparams/m9s12zelf.sh (TEMPLATE_NAME): Set to generic. (EXTRA_EM_FILE): Define to genelf. * testsuite/lib/ld-lib.exp (uses_genelf): Add s12z. --- binutils/ChangeLog | 5 +++++ binutils/testsuite/lib/binutils-common.exp | 7 ++++--- ld/ChangeLog | 7 +++++++ ld/emulparams/m9s12zelf.sh | 3 ++- ld/testsuite/lib/ld-lib.exp | 1 + 5 files changed, 19 insertions(+), 4 deletions(-) diff --git a/binutils/ChangeLog b/binutils/ChangeLog index 7f43a896535..76d9d529d8b 100644 --- a/binutils/ChangeLog +++ b/binutils/ChangeLog @@ -1,3 +1,8 @@ +2019-05-30 Alan Modra + + * testsuite/lib/binutils-common.exp (supports_gnu_unique): Add + s12z to targets not supporting this feature. + 2019-05-30 Alan Modra * testsuite/lib/binutils-common.exp (run_dump_test): Support diff --git a/binutils/testsuite/lib/binutils-common.exp b/binutils/testsuite/lib/binutils-common.exp index 9511d28c6ff..a523f4b7813 100644 --- a/binutils/testsuite/lib/binutils-common.exp +++ b/binutils/testsuite/lib/binutils-common.exp @@ -183,9 +183,9 @@ proc match_target { target } { # and Visium targets set OSABI to ELFOSABI_STANDALONE and cannot # support STB_GNU_UNIQUE. Likewise non-EABI ARM targets set OSABI to # ELFOSABI_ARM, and TI C6X targets to ELFOSABI_C6000_*. Finally -# rather than `bfd_elf_final_link' AM33/2.0, D30V, DLX, and -# picoJava targets use `_bfd_generic_final_link', which does not -# support STB_GNU_UNIQUE symbol binding causing assertion failures. +# rather than `bfd_elf_final_link' a number of targets use +# `_bfd_generic_final_link', which does not support STB_GNU_UNIQUE +# symbol binding causing assertion failures. # proc supports_gnu_unique {} { if { [istarget *-*-gnu*] @@ -212,6 +212,7 @@ proc supports_gnu_unique {} { || [istarget "d30v-*-*"] || [istarget "dlx-*-*"] || [istarget "pj*-*-*"] + || [istarget "s12z-*-*"] || [istarget "xgate-*-*"] } { return 0 } diff --git a/ld/ChangeLog b/ld/ChangeLog index 586f4b1a5a8..f0f71784e08 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,10 @@ +2019-05-30 Alan Modra + + PR 24596 + * emulparams/m9s12zelf.sh (TEMPLATE_NAME): Set to generic. + (EXTRA_EM_FILE): Define to genelf. + * testsuite/lib/ld-lib.exp (uses_genelf): Add s12z. + 2019-05-30 Alan Modra * testsuite/lib/ld-lib.exp (run_ld_link_tests): Support procedure diff --git a/ld/emulparams/m9s12zelf.sh b/ld/emulparams/m9s12zelf.sh index 7a819e84094..758c8e936b1 100644 --- a/ld/emulparams/m9s12zelf.sh +++ b/ld/emulparams/m9s12zelf.sh @@ -13,6 +13,7 @@ EEPROM_MEMORY=eeprom ARCH=s12z EMBEDDED=yes GENERIC_BOARD=no -TEMPLATE_NAME=elf32 +TEMPLATE_NAME=generic +EXTRA_EM_FILE=genelf NOP=0x00 diff --git a/ld/testsuite/lib/ld-lib.exp b/ld/testsuite/lib/ld-lib.exp index f4d6707de93..25049360825 100644 --- a/ld/testsuite/lib/ld-lib.exp +++ b/ld/testsuite/lib/ld-lib.exp @@ -1113,6 +1113,7 @@ proc uses_genelf { } { || [istarget "msp430-*-*"] || [istarget "mt-*-*"] || [istarget "pj*-*-*"] + || [istarget "s12z-*-*"] || [istarget "xgate-*-*"] } { return 1 } -- 2.30.2