This is the mail archive of the
binutils-cvs@sourceware.org
mailing list for the binutils project.
[binutils-gdb] Fixes an invalid warning about memory region overflow on the ARM.
- From: Nick Clifton <nickc at sourceware dot org>
- To: bfd-cvs at sourceware dot org
- Date: 16 Nov 2015 14:22:14 -0000
- Subject: [binutils-gdb] Fixes an invalid warning about memory region overflow on the ARM.
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=3940d2c36abbf7c4701e312bd76f6bb119898c8a
commit 3940d2c36abbf7c4701e312bd76f6bb119898c8a
Author: Nick Clifton <nickc@redhat.com>
Date: Mon Nov 16 14:21:28 2015 +0000
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.
Diff:
---
ld/ChangeLog | 7 +++++++
ld/emultempl/armelf.em | 14 ++++++++++++++
2 files changed, 21 insertions(+)
diff --git a/ld/ChangeLog b/ld/ChangeLog
index d5e450e..d4324ec 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -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.
diff --git a/ld/emultempl/armelf.em b/ld/emultempl/armelf.em
index b03aed4..2931a49 100644
--- a/ld/emultempl/armelf.em
+++ b/ld/emultempl/armelf.em
@@ -55,6 +55,19 @@ gld${EMULATION_NAME}_before_parse (void)
}
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)
{
bfd_elf32_arm_set_byteswap_code (&link_info, byteswap_code);
@@ -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