GNU Binutils with patches for OS216
Revisión | 86f7d49be5e3dee5ca8326e3766983a27a968486 (tree) |
---|---|
Tiempo | 2013-04-23 00:03:01 |
Autor | Alan Modra <amodra@gmai...> |
Commiter | Alan Modra |
PR ld/15382
* elf-bfd.h (RELOC_AGAINST_DISCARDED_SECTION): Don't multiply
sh_size or reloc_count adjustment by count.
@@ -1,5 +1,11 @@ | ||
1 | 1 | 2013-04-22 Alan Modra <amodra@gmail.com> |
2 | 2 | |
3 | + PR ld/15382 | |
4 | + * elf-bfd.h (RELOC_AGAINST_DISCARDED_SECTION): Don't multiply | |
5 | + sh_size or reloc_count adjustment by count. | |
6 | + | |
7 | +2013-04-22 Alan Modra <amodra@gmail.com> | |
8 | + | |
3 | 9 | * elf64-ppc.c (ppc64_elf_check_relocs): Don't call |
4 | 10 | create_linkage_sections here.. |
5 | 11 | (ppc64_elf_init_stub_bfd): ..do so here. Return status. |
@@ -2497,16 +2497,16 @@ extern asection _bfd_elf_large_com_section; | ||
2497 | 2497 | rel_hdr = _bfd_elf_single_rel_hdr (input_section->output_section); \ |
2498 | 2498 | \ |
2499 | 2499 | /* Avoid empty output section. */ \ |
2500 | - if (rel_hdr->sh_size > count * rel_hdr->sh_entsize) \ | |
2500 | + if (rel_hdr->sh_size > rel_hdr->sh_entsize) \ | |
2501 | 2501 | { \ |
2502 | - rel_hdr->sh_size -= count * rel_hdr->sh_entsize; \ | |
2502 | + rel_hdr->sh_size -= rel_hdr->sh_entsize; \ | |
2503 | 2503 | rel_hdr = _bfd_elf_single_rel_hdr (input_section); \ |
2504 | - rel_hdr->sh_size -= count * rel_hdr->sh_entsize; \ | |
2504 | + rel_hdr->sh_size -= rel_hdr->sh_entsize; \ | |
2505 | 2505 | \ |
2506 | 2506 | memmove (rel, rel + count, \ |
2507 | 2507 | (relend - rel - count) * sizeof (*rel)); \ |
2508 | 2508 | \ |
2509 | - input_section->reloc_count -= count; \ | |
2509 | + input_section->reloc_count--; \ | |
2510 | 2510 | relend -= count; \ |
2511 | 2511 | rel--; \ |
2512 | 2512 | continue; \ |