diff options
author | Andrew Burgess <andrew.burgess@embecosm.com> | 2016-03-29 15:57:40 +0100 |
---|---|---|
committer | Andrew Burgess <andrew.burgess@embecosm.com> | 2016-04-05 23:08:28 +0100 |
commit | 9a5f28ae286634f2d7d381b7d234abc2f3aa5548 (patch) | |
tree | fca3f4e50e7c9996f20f45f2bcdd76dca8c9b0fc /ld/testsuite/lib | |
parent | 820f03ffe027367f275e9debb5f3f3376820ab37 (diff) | |
download | gdb-9a5f28ae286634f2d7d381b7d234abc2f3aa5548.zip gdb-9a5f28ae286634f2d7d381b7d234abc2f3aa5548.tar.gz gdb-9a5f28ae286634f2d7d381b7d234abc2f3aa5548.tar.bz2 |
ld/arc: Fix linker for big-endian arc targets
This aims to bring the linker for big-endian arc targets into line with
the linker for (the default) little endian arc targets.
The bulk of the changes are to extend the target pattern in the test
files from 'arc-*...' to 'arc*-*...' and so match both big and little
endian arc targets.
In the ld/emulparams/ directory the existing scripts checked for a
variable ARC_ENDIAN to switch between big and little endian targets,
however, this variable is never set up.
So, a new script snippet is introduced which sets up ARC_ENDIAN based on
the value of target, this snippet is then included from all of the
existing arc scripts.
The existing big-endian variants of all the scripts, which existed, but
were never used, are deleted in this commit.
ld/ChangeLog:
* emulparams/arc-endianness.sh: New file.
* emulparams/arcebelf.sh: Deleted.
* emulparams/arcebelf_prof.sh: Deleted.
* emulparams/arceblinux.sh: Deleted.
* emulparams/arceblinux_prof.sh: Deleted.
* emulparams/arcelf.sh: Include arc-endinness.sh.
* emulparams/arcelf_prof.sh: Include arc-endinness.sh.
* emulparams/arclinux.sh: Include arc-endinness.sh.
* emulparams/arclinux_prof.sh: Include arc-endinness.sh.
* emulparams/arcv2elf.sh: Include arc-endinness.sh.
* emulparams/arcv2elfx.sh: Include arc-endinness.sh.
* testsuite/ld-elf/compressed1d.d: Update pattern for big and
little endian arc targets.
* testsuite/ld-elf/eh-frame-hdr.d: Likewise.
* testsuite/ld-elf/group1.d: Likewise.
* testsuite/ld-elf/group3b.d: Likewise.
* testsuite/ld-elf/group8a.d: Likewise.
* testsuite/ld-elf/group8b.d: Likewise.
* testsuite/ld-elf/group9a.d: Likewise.
* testsuite/ld-elf/group9b.d: Likewise.
* testsuite/ld-elf/linkonce2.d: Likewise.
* testsuite/ld-elf/pr12851.d: Likewise.
* testsuite/ld-elf/pr12975.d: Likewise.
* testsuite/ld-elf/pr13177.d: Likewise.
* testsuite/ld-elf/pr13195.d: Likewise.
* testsuite/ld-elf/pr17615.d: Likewise.
* testsuite/ld-elf/pr19162.d: Likewise.
* testsuite/ld-elf/sec64k.exp: Likewise.
* testsuite/lib/ld-lib.exp: Likewise.
Diffstat (limited to 'ld/testsuite/lib')
-rw-r--r-- | ld/testsuite/lib/ld-lib.exp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/ld/testsuite/lib/ld-lib.exp b/ld/testsuite/lib/ld-lib.exp index 320ed82..ce446fd 100644 --- a/ld/testsuite/lib/ld-lib.exp +++ b/ld/testsuite/lib/ld-lib.exp @@ -1664,7 +1664,7 @@ proc check_gc_sections_available { } { if {![info exists gc_sections_available_saved]} { # Some targets don't support gc-sections despite whatever's # advertised by ld's options. - if { [istarget arc-*-*] + if { [istarget arc*-*-*] || [istarget d30v-*-*] || [istarget dlx-*-*] || [istarget i960-*-*] @@ -1706,7 +1706,7 @@ proc check_gc_sections_available { } { proc check_shared_lib_support { } { if {![istarget aarch64*-*-elf] - && ![istarget arc-*-*] + && ![istarget arc*-*-*] && ![istarget arm*-*-elf] && ![istarget avr-*-*] && ![istarget cr16-*-*] |