aboutsummaryrefslogtreecommitdiff
path: root/ld/testsuite/ld-srec
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2009-10-01 23:29:29 +0000
committerAlan Modra <amodra@gmail.com>2009-10-01 23:29:29 +0000
commit1b66220522691049e2a4c477d32fd8bc0f6f63c1 (patch)
treef083703c71941ff1fe18c1e03a447d5d4e141597 /ld/testsuite/ld-srec
parentc838b5167a2935819e0d2f17175aeec9d4199148 (diff)
downloadgdb-1b66220522691049e2a4c477d32fd8bc0f6f63c1.zip
gdb-1b66220522691049e2a4c477d32fd8bc0f6f63c1.tar.gz
gdb-1b66220522691049e2a4c477d32fd8bc0f6f63c1.tar.bz2
* lib/ld-lib.exp (ld_simple_link_defsyms): New proc, adding
powerpc-*-rtems to code setting symbols, extracted from.. * ld-srec/srec.exp (run_srec_test): ..here. Correct flags for sh64. * ld-gc/gc.exp (test_gc): Use ld_simple_link_defsyms.
Diffstat (limited to 'ld/testsuite/ld-srec')
-rw-r--r--ld/testsuite/ld-srec/srec.exp36
1 files changed, 4 insertions, 32 deletions
diff --git a/ld/testsuite/ld-srec/srec.exp b/ld/testsuite/ld-srec/srec.exp
index e5b5af3..0a3dc44 100644
--- a/ld/testsuite/ld-srec/srec.exp
+++ b/ld/testsuite/ld-srec/srec.exp
@@ -229,9 +229,9 @@ proc run_srec_test { test objs } {
global host_triplet
# Tell the ELF linker to not do anything clever with .eh_frame,
- # not to put anything in small data, and define a symbol referenced
- # by gcc -fstack-protector code.
- set flags "--traditional-format -G 0 --defsym __stack_chk_fail=0"
+ # not to put anything in small data, and define various symbols.
+ set flags "--traditional-format -G 0 "
+ append flags [ld_simple_link_defsyms]
# If the linker script uses SIZEOF_HEADERS, use a -Ttext argument
# to force both the normal link and the S-record link to be put in
@@ -244,7 +244,7 @@ proc run_srec_test { test objs } {
if [istarget sh64*-*-elf] {
# This is what gcc passes to ld by default.
- set flags "-mshelf32"
+ set flags "$flags -mshelf32"
# SH64 targets cannot convert format in the linker
# using the -oformat command line switch.
setup_xfail "sh64*-*-*"
@@ -254,10 +254,6 @@ proc run_srec_test { test objs } {
[istarget strongarm*-*-*] || \
[istarget xscale*-*-*] || \
[istarget thumb-*-*] } {
-
- # ARM targets call __gccmain
- set flags "$flags --defsym __gccmain=0"
-
# ARM targets cannot convert format in the linker
# using the --oformat command line switch
setup_xfail "*arm*-*-*"
@@ -265,23 +261,6 @@ proc run_srec_test { test objs } {
setup_xfail "thumb-*-*"
}
- # PowerPC EABI code calls __eabi.
- if [istarget powerpc*-*-eabi*] {
- set flags "$flags --defsym __eabi=0"
- }
-
- # mn10200 code calls __truncsipsi2_d0_d2.
- if {[istarget mn10200*-*-*]} then {
- set flags "$flags --defsym __truncsipsi2_d0_d2=0"
- }
-
- # m6811/m6812 code has references to soft registers.
- if {[istarget m6811-*-*] || [istarget m6812-*-*]} {
- set flags "$flags --defsym _.frame=0 --defsym _.d1=0 --defsym _.d2=0"
- set flags "$flags --defsym _.d3=0 --defsym _.d4=0"
- set flags "$flags --defsym _.tmp=0 --defsym _.xy=0 --defsym _.z=0"
- }
-
# V850 targets need libgcc.a
if [istarget v850*-*-elf] {
set objs "$objs -L ../gcc -lgcc"
@@ -292,13 +271,6 @@ proc run_srec_test { test objs } {
set flags "$flags -no-relax"
}
- # Some OpenBSD targets have ProPolice and reference __guard and
- # __stack_smash_handler.
- if [istarget *-*-openbsd*] {
- set flags "$flags --defsym __guard=0"
- set flags "$flags --defsym __stack_smash_handler=0"
- }
-
if { ![ld_simple_link $ld tmpdir/sr1 "$flags $objs"] \
|| ![ld_simple_link $ld tmpdir/sr2.sr "$flags --oformat srec $objs"] } {
fail $test