diff options
author | Alan Modra <amodra@gmail.com> | 2015-01-17 21:33:43 +1030 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2015-01-19 21:26:30 +1030 |
commit | c4621b339e6f3153649898b254685f72df8c013d (patch) | |
tree | 4072fc9a77851dc3acf41c40b3452db137a2c7a5 /ld/testsuite/ld-mmix | |
parent | 740bdc67c057ee8012327420848eb134e1db4211 (diff) | |
download | gdb-c4621b339e6f3153649898b254685f72df8c013d.zip gdb-c4621b339e6f3153649898b254685f72df8c013d.tar.gz gdb-c4621b339e6f3153649898b254685f72df8c013d.tar.bz2 |
Fix garbage collection of common symbols
Running lang_common before garbage collection means slightly less work
in garbage collection code, since common symbols should no longer
appear there. It does have the side effect of keeping linker script
symbols (at least those defined outside of sections) global too,
hence some testsuite churn.
bfd/
PR 17165
* elf-bfd.h (ELF_COMMON_DEF): Note that this might be true for
linker script assignments too.
* elflink.c (elf_gc_sweep_symbol): Don't drop ELF_COMMON_DEF syms.
(bfd_elf_gc_mark_dynamic_ref_symbol): Similarly.
ld/
PR 17165
* ldlang.c (lang_process): Run lang_common before lang_gc_sections.
ld/testsuite/
* ld-gc/pr14265.d,
* ld-cris/tls-gc-68.d,
* ld-cris/tls-gc-69.d,
* ld-cris/tls-gc-70.d,
* ld-cris/tls-gc-71.d,
* ld-cris/tls-gc-75.d,
* ld-cris/tls-gc-76.d,
* ld-cris/tls-gc-79.d,
* ld-mmix/bpo-10.d,
* ld-mmix/bpo-11.d: Update.
Diffstat (limited to 'ld/testsuite/ld-mmix')
-rw-r--r-- | ld/testsuite/ld-mmix/bpo-10.d | 6 | ||||
-rw-r--r-- | ld/testsuite/ld-mmix/bpo-11.d | 6 |
2 files changed, 6 insertions, 6 deletions
diff --git a/ld/testsuite/ld-mmix/bpo-10.d b/ld/testsuite/ld-mmix/bpo-10.d index 1bc6269..1cb7d61 100644 --- a/ld/testsuite/ld-mmix/bpo-10.d +++ b/ld/testsuite/ld-mmix/bpo-10.d @@ -15,10 +15,10 @@ SYMBOL TABLE: 0+ l df \*ABS\* 0+ .* 0+ l \.init 0+ _start 0+ l df \*ABS\* 0+ .* -2000000000000000 l \.init 0+ __bss_start -2000000000000000 l \.init 0+ _edata -2000000000000000 l \.init 0+ _end 0+4 l \.init 0+ _start\. +2000000000000000 g \.init 0+ __bss_start +2000000000000000 g \.init 0+ _edata +2000000000000000 g \.init 0+ _end Contents of section \.init: 0000 e37704a6 .* diff --git a/ld/testsuite/ld-mmix/bpo-11.d b/ld/testsuite/ld-mmix/bpo-11.d index 7f47450..9b38be8 100644 --- a/ld/testsuite/ld-mmix/bpo-11.d +++ b/ld/testsuite/ld-mmix/bpo-11.d @@ -17,12 +17,12 @@ SYMBOL TABLE: 0+ l df \*ABS\* 0+ .* 0+ l \.init 0+ _start 0+ l df \*ABS\* 0+ .* -2000000000000000 l \.text 0+ __bss_start -2000000000000000 l \.text 0+ _edata -2000000000000000 l \.text 0+ _end 0+10 l \.text 0+ _start\. 0+14 g \.text 0+ x 0+10 g \.text 0+ x2 +2000000000000000 g \.text 0+ __bss_start +2000000000000000 g \.text 0+ _edata +2000000000000000 g \.text 0+ _end Contents of section \.init: 0000 00000000 0000003d 00000000 0000003a .* |