summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBob Wilson <bob.wilson@acm.org>2005-10-03 21:49:17 +0000
committerBob Wilson <bob.wilson@acm.org>2005-10-03 21:49:17 +0000
commit00adaeea4b039d702dbd60ac5106546146252eb7 (patch)
tree89534a1efd04741a06736d7ecfdb142bef2e16f9
parentc951dc355be6fee17991c97ffb9fe3497a1b44bf (diff)
downloadgdb-00adaeea4b039d702dbd60ac5106546146252eb7.tar.gz
* elf32-xtensa.c (relocations_reach): Skip range check for
absolute literals.
-rw-r--r--bfd/ChangeLog5
-rw-r--r--bfd/elf32-xtensa.c5
2 files changed, 10 insertions, 0 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 683a88bd630..3ba259bd80d 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,8 @@
+2005-10-03 David Heine <dlheine@tensilica.com>
+
+ * elf32-xtensa.c (relocations_reach): Skip range check for
+ absolute literals.
+
2005-10-03 Alan Modra <amodra@bigpond.net.au>
* elf.c (_bfd_elf_get_synthetic_symtab): Set BSF_GLOBAL on
diff --git a/bfd/elf32-xtensa.c b/bfd/elf32-xtensa.c
index fc235deeb53..e565942bff5 100644
--- a/bfd/elf32-xtensa.c
+++ b/bfd/elf32-xtensa.c
@@ -7462,6 +7462,11 @@ relocations_reach (source_reloc *reloc,
!= sec->output_section)
return FALSE;
+ /* Absolute literals in the same output section can always be
+ combined. */
+ if (reloc[i].is_abs_literal)
+ continue;
+
/* A literal with no PC-relative relocations can be moved anywhere. */
if (reloc[i].opnd != -1)
{