mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-12-27 04:52:05 +08:00
5025eb7c0d
PR ld/20595 ld * testsuite/ld-arm/unwind-4.d: Add -q option to linker command line and -r option to objdump command line. Match emitted relocs to make sure that superflous relocs are not generated. bfd * elf-bfd.h (struct elf_backend_data): Add elf_backend_count_output_relocs callback to count relocations in the final output. * elf-arm.c (elf32_arm_add_relocation): Deleted. (elf32_arm_write_section): Move additional relocation to emit_relocs. (elf32_arm_count_output_relocs): New function. (emit_relocs): New function. (elf32_arm_emit_relocs): New function. (elf32_arm_vxworks_emit_relocs): New function. (elf_backend_emit_relocs): Updated to use the new functions. (elf_backend_count_output_relocs): New define. * bfd/elflink.c (bfd_elf_final_link): Do not add additional_reloc_count to the relocation count. (_bfd_elf_link_size_reloc_section): Use callback to count the relocations which will be in output. (_bfd_elf_default_count_output_relocs): New function. * bfd/elfxx-target.h (elf_backend_count_output_relocs): New define.
26 lines
721 B
Makefile
26 lines
721 B
Makefile
#ld: -q -T arm.ld
|
|
#objdump: -sr
|
|
|
|
.*: file format.*
|
|
|
|
#...
|
|
RELOCATION RECORDS FOR \[\.ARM\.exidx\]:
|
|
OFFSET TYPE VALUE
|
|
00000000 R_ARM_PREL31 \.text
|
|
00000000 R_ARM_NONE __aeabi_unwind_cpp_pr0
|
|
00000008 R_ARM_PREL31 \.text
|
|
00000008 R_ARM_NONE __aeabi_unwind_cpp_pr1
|
|
0000000c R_ARM_PREL31 \.text
|
|
00000010 R_ARM_PREL31 \.text
|
|
00000010 R_ARM_NONE __aeabi_unwind_cpp_pr0
|
|
00000018 R_ARM_PREL31 \.text
|
|
|
|
|
|
Contents of section .text:
|
|
#...
|
|
Contents of section .ARM.exidx:
|
|
8020 (e0ffff7f b0b0a880 dcffff7f e8ffff7f|7fffffe0 80a8b0b0 7fffffdc 7fffffe8) .*
|
|
8030 (d8ffff7f b0b0a880 d8ffff7f 01000000|7fffffd8 80a8b0b0 7fffffd8 00000001) .*
|
|
Contents of section .far:
|
|
#...
|