diff options
-rw-r--r-- | bfd/ChangeLog | 6 | ||||
-rw-r--r-- | bfd/elf32-spu.c | 8 |
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 { |