mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-12-19 07:13:40 +08:00
99aefae681
Fix internal errors like: ld: BFD (GNU Binutils) 2.26.51.20160526 internal error, aborting at .../bfd/elfxx-mips.c:10278 in _bfd_mips_elf_relocate_section ld: Please report this bug. triggered by the `bfd_reloc_outofrange' condition on branch relocations. bfd/ * elfxx-mips.c (b_reloc_p): New function. (_bfd_mips_elf_relocate_section) <bfd_reloc_outofrange>: Handle branch relocations. ld/ * testsuite/ld-mips-elf/unaligned-branch.d: New test. * testsuite/ld-mips-elf/unaligned-branch.s: New test source. * testsuite/ld-mips-elf/unaligned-text.s: New test source. * testsuite/ld-mips-elf/mips-elf.exp: Run the new test.
22 lines
219 B
ArmAsm
22 lines
219 B
ArmAsm
.text
|
|
.align 4
|
|
.globl foo
|
|
.ent foo
|
|
foo:
|
|
b bar0
|
|
beqzc $2, bar0
|
|
bc bar0
|
|
b bar1
|
|
beqzc $2, bar1
|
|
bc bar1
|
|
b bar2
|
|
beqzc $2, bar2
|
|
bc bar2
|
|
b bar3
|
|
beqzc $2, bar3
|
|
bc bar3
|
|
b bar4
|
|
beqzc $2, bar4
|
|
bc bar4
|
|
.end foo
|