diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2017-10-14 11:09:29 -0700 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2017-10-14 11:09:44 -0700 |
commit | e01c16a83893b03433c8edf4ccae536d9b9f4831 (patch) | |
tree | d48c22fe5df5159d0f43418b970aa94df38db7a5 /ld | |
parent | 6ee6e05af482b356f9be4b0db877802fb47b2a12 (diff) | |
download | gdb-e01c16a83893b03433c8edf4ccae536d9b9f4831.zip gdb-e01c16a83893b03433c8edf4ccae536d9b9f4831.tar.gz gdb-e01c16a83893b03433c8edf4ccae536d9b9f4831.tar.bz2 |
cris: Check UNDEFWEAK_NO_DYNAMIC_RELOC
Don't generate dynamic relocation against weak undefined symbol if it
is resolved to zero. FIXME: UNDEFWEAK_NO_DYNAMIC_RELOC may need to be
checked in more places.
bfd/
PR ld/22269
* elf32-cris.c (cris_elf_relocate_section): Don't generate
dynamic relocation if UNDEFWEAK_NO_DYNAMIC_RELOC is true.
(cris_elf_check_relocs): Don't allocate dynamic relocation
if UNDEFWEAK_NO_DYNAMIC_RELOC is true.
ld/
PR ld/22269
* testsuite/ld-cris/weakhiddso.d: Update and remove R_CRIS_NONE.
Diffstat (limited to 'ld')
-rw-r--r-- | ld/ChangeLog | 5 | ||||
-rw-r--r-- | ld/testsuite/ld-cris/weakhiddso.d | 18 |
2 files changed, 13 insertions, 10 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog index 47cc5a8..6e7e58d 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,8 @@ +2017-10-14 H.J. Lu <hongjiu.lu@intel.com> + + PR ld/22269 + * testsuite/ld-cris/weakhiddso.d: Update and remove R_CRIS_NONE. + 2017-10-13 Alan Modra <amodra@gmail.com> PR ld/22263 diff --git a/ld/testsuite/ld-cris/weakhiddso.d b/ld/testsuite/ld-cris/weakhiddso.d index 71a4bdb..c9c793e 100644 --- a/ld/testsuite/ld-cris/weakhiddso.d +++ b/ld/testsuite/ld-cris/weakhiddso.d @@ -4,28 +4,26 @@ #objdump: -s -R -T # Check that .weak and .weak .hidden object references are handled -# correctly when generating a DSO. For now, we have to live with the -# R_CRIS_NONE entry. +# correctly when generating a DSO. .*: file format elf32-cris DYNAMIC SYMBOL TABLE: -0+2214 l d \.data 0+ \.data -0+2214 g DO \.data 0+c x +0+2208 l d \.data 0+ \.data +0+2208 g DO \.data 0+c x 0+ D \*UND\* 0+ xregobj -0+2220 g D \.data 0+ __bss_start +0+2214 g D \.data 0+ __bss_start 0+ w D \*UND\* 0+ xweakobj -0+2220 g D \.data 0+ _edata +0+2214 g D \.data 0+ _edata 0+2220 g D \.data 0+ _end DYNAMIC RELOCATION RECORDS OFFSET TYPE VALUE -0+ R_CRIS_NONE \*ABS\* -0+2218 R_CRIS_32 xweakobj -0+221c R_CRIS_32 xregobj +0+220c R_CRIS_32 xweakobj +0+2210 R_CRIS_32 xregobj Contents of section \.hash: #... Contents of section \.data: - 2214 00000000 00000000 00000000 .* + 2208 00000000 00000000 00000000 .* |