summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--bfd/ChangeLog6
-rw-r--r--bfd/elf32-spu.c8
2 files changed, 10 insertions, 4 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 8eecf3a86b..6829c5ca77 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,9 @@
+2009-05-14 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * elf32-spu.c (spu_elf_size_stubs): Even in software i-cache mode,
+ generate only a 16-byte .toe section.
+ (spu_elf_build_stubs, spu_elf_auto_overlay): Likewise.
+
2009-05-14 Alan Modra <amodra@bigpond.net.au>
* elf32-spu.c (spu_elf_size_stubs): Split out section placement to..
diff --git a/bfd/elf32-spu.c b/bfd/elf32-spu.c
index 06091f3f90..7cdcb035f4 100644
--- a/bfd/elf32-spu.c
+++ b/bfd/elf32-spu.c
@@ -1748,7 +1748,7 @@ spu_elf_size_stubs (struct bfd_link_info *info)
if (htab->toe == NULL
|| !bfd_set_section_alignment (ibfd, htab->toe, 4))
return 0;
- htab->toe->size = htab->params->ovly_flavour == ovly_soft_icache ? 256 : 16;
+ htab->toe->size = 16;
return 2;
}
@@ -2088,7 +2088,7 @@ spu_elf_build_stubs (struct bfd_link_info *info)
return FALSE;
h->root.u.def.section = htab->toe;
h->root.u.def.value = 0;
- h->size = htab->params->ovly_flavour == ovly_soft_icache ? 16 * 16 : 16;
+ h->size = 16;
return TRUE;
}
@@ -4272,8 +4272,8 @@ spu_elf_auto_overlay (struct bfd_link_info *info)
fixed_size += htab->params->max_branch << (htab->num_lines_log2 + 4);
/* c) Indirect branch descriptors, 8 quadwords. */
fixed_size += 8 * 16;
- /* d) Pointers to __ea backing store, 16 quadwords. */
- fixed_size += 16 * 16;
+ /* d) Pointer to __ea backing store (toe), 1 quadword. */
+ fixed_size += 16;
}
else
{