aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2009-06-06 06:36:52 +0000
committerAlan Modra <amodra@gmail.com>2009-06-06 06:36:52 +0000
commit74681fc450b5239513653cd758364b9c1f755bad (patch)
treea830cead6f7966ea730784f1a35a5a05a0e35793
parentd8985ced1d3c23d6990067702d24cf7b1d6d7236 (diff)
downloadgdb-74681fc450b5239513653cd758364b9c1f755bad.zip
gdb-74681fc450b5239513653cd758364b9c1f755bad.tar.gz
gdb-74681fc450b5239513653cd758364b9c1f755bad.tar.bz2
* elf32-spu.c (spu_elf_relocate_section): Match overlay number
when looking for soft-icache stubs.
-rw-r--r--bfd/ChangeLog5
-rw-r--r--bfd/elf32-spu.c7
2 files changed, 9 insertions, 3 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 34bb1f8..14b4df5 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,8 @@
+2009-06-06 Alan Modra <amodra@bigpond.net.au>
+
+ * elf32-spu.c (spu_elf_relocate_section): Match overlay number
+ when looking for soft-icache stubs.
+
2009-06-05 Tristan Gingold <gingold@adacore.com>
* mach-o.h: Update copyright year.
diff --git a/bfd/elf32-spu.c b/bfd/elf32-spu.c
index db23807..af7afdb 100644
--- a/bfd/elf32-spu.c
+++ b/bfd/elf32-spu.c
@@ -4848,9 +4848,10 @@ spu_elf_relocate_section (bfd *output_bfd,
for (g = *head; g != NULL; g = g->next)
if (htab->params->ovly_flavour == ovly_soft_icache
- ? g->br_addr == (rel->r_offset
- + input_section->output_offset
- + input_section->output_section->vma)
+ ? (g->ovl == ovl
+ && g->br_addr == (rel->r_offset
+ + input_section->output_offset
+ + input_section->output_section->vma))
: g->addend == addend && (g->ovl == ovl || g->ovl == 0))
break;
if (g == NULL)