Fixes an invalid warning about memory region overflow on the ARM.
PR ld/19106 * emultempl/armelf.em (_set_symbols): New function. Enables relaxation for non-relocatable links. (LDEMUL_SET_SYMBOLS): Define.
This commit is contained in:
parent
797eee4264
commit
3940d2c36a
@ -1,3 +1,10 @@
|
||||
2015-11-16 Nick Clifton <nickc@redhat.com>
|
||||
|
||||
PR ld/19106
|
||||
* emultempl/armelf.em (_set_symbols): New function. Enables
|
||||
relaxation for non-relocatable links.
|
||||
(LDEMUL_SET_SYMBOLS): Define.
|
||||
|
||||
2015-11-13 Tristan Gingold <gingold@adacore.com>
|
||||
|
||||
* configure: Regenerate.
|
||||
|
@ -54,6 +54,19 @@ gld${EMULATION_NAME}_before_parse (void)
|
||||
config.separate_code = `if test "x${SEPARATE_CODE}" = xyes ; then echo TRUE ; else echo FALSE ; fi`;
|
||||
}
|
||||
|
||||
static void
|
||||
gld${EMULATION_NAME}_set_symbols (void)
|
||||
{
|
||||
/* PR 19106: The section resizing code in gldarmelf_after_allocation
|
||||
is effectively the same as relaxation, so prevent early memory
|
||||
region checks which produce bogus error messages.
|
||||
Note - this test has nothing to do with symbols. It is just here
|
||||
because this is the first emulation routine that is called after
|
||||
the command line has been parsed. */
|
||||
if (!bfd_link_relocatable (&link_info))
|
||||
TARGET_ENABLE_RELAXATION;
|
||||
}
|
||||
|
||||
static void
|
||||
arm_elf_before_allocation (void)
|
||||
{
|
||||
@ -728,6 +741,7 @@ LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS=arm_elf_create_output_section_statements
|
||||
|
||||
# Replace the elf before_parse function with our own.
|
||||
LDEMUL_BEFORE_PARSE=gld"${EMULATION_NAME}"_before_parse
|
||||
LDEMUL_SET_SYMBOLS=gld"${EMULATION_NAME}"_set_symbols
|
||||
|
||||
# Call the extra arm-elf function
|
||||
LDEMUL_FINISH=gld${EMULATION_NAME}_finish
|
||||
|
Loading…
x
Reference in New Issue
Block a user