d2ef37ebd9
With merging properties, report property change in linker map file, like Merging program properties Removed property 0xc0010000 to merge /usr/lib/gcc/x86_64-redhat-linux/8/../../../../lib64/crt1.o (0x0) and /usr/lib/gcc/x86_64-redhat-linux/8/../../../../lib64/crti.o (0x0) Removed property 0xc0000002 to merge /usr/lib/gcc/x86_64-redhat-linux/8/../../../../lib64/crt1.o (0x3) and x.o (not found) Removed property 0xc0000000 to merge /usr/lib/gcc/x86_64-redhat-linux/8/../../../../lib64/crt1.o (not found) and /usr/lib64/libc_nonshared.a(elf-init.oS) (0x0) Removed property 0xc0000001 to merge /usr/lib/gcc/x86_64-redhat-linux/8/../../../../lib64/crt1.o (not found) and /usr/lib64/libc_nonshared.a(elf-init.oS) (0x0) bfd/ * elf-properties.c (elf_find_and_remove_property): Add a bfd_boolean argument to indicate if the property should be removed. (elf_merge_gnu_property_list): Updated. Report property change in linker map file. (elf_get_gnu_property_section_size): Skip property_remove properties. (elf_write_gnu_properties): Likewise. (_bfd_elf_link_setup_gnu_properties): Report property merge in linker map file. Pass abfd to elf_merge_gnu_property_list. include/ * bfdlink.h (bfd_link_info): Add has_map_file. ld/ * NEWS: Updated for property change report. * ld.texi: Document property change report. * ldmain.c (main): Set link_info.has_map_file to TRUE when linker map file is used. * testsuite/ld-scripts/rgn-over1.d: Updated. * testsuite/ld-scripts/rgn-over2.d: Likewise. * testsuite/ld-scripts/rgn-over3.d: Likewise. * testsuite/ld-scripts/rgn-over4.d: Likewise. * testsuite/ld-scripts/rgn-over5.d: Likewise. * testsuite/ld-scripts/rgn-over6.d: Likewise. * testsuite/ld-scripts/rgn-over7.d: Likewise. * testsuite/ld-x86-64/property-x86-ibt1a-x32.d: Check linker map file. * testsuite/ld-x86-64/property-x86-ibt1a.d: Likewise. * testsuite/ld-x86-64/property-x86-ibt1a.map: New file.
37 lines
769 B
Makefile
37 lines
769 B
Makefile
# name: rgn-over1
|
|
# source: rgn-over.s
|
|
# ld: -T rgn-over1.t -Map tmpdir/rgn-over1.map
|
|
# error: \A[^ \n]*?ld[^:\n]*?: [^\n]*?section \`.text' will not fit in region `r1'\n[^ \n]*?ld[^:\n]*?: region `r1' overflowed by 16 bytes\Z
|
|
|
|
#...
|
|
Discarded input sections
|
|
#...
|
|
Memory\s+Configuration
|
|
|
|
Name\s+Origin\s+Length\s+Attributes
|
|
bss\s+0x0+0000\s+0x0+0000\s+xrw
|
|
r1\s+0x0+1000\s+0x0+0008\s+xrw
|
|
\*default\*\s+0x0+0000\s+0xf+ffff
|
|
|
|
Linker\s+script\s+and\s+memory\s+map
|
|
|
|
\s*0x0+1000\s+_start\s+=\s+0x1000
|
|
|
|
\s*\.bss\s+0x0+0000\s+0x0
|
|
\s*\*\(\.bss\)
|
|
\s*\.bss\s+0x0+0000\s+0x0\s+.*?
|
|
|
|
\s*\.text\s+0x0+1000\s+0xc
|
|
\s*\*\(\.txt\)
|
|
\s*\.txt\s+0x0+1000\s+0xc\s+.*?
|
|
|
|
\s*\.data\s+0x0+100c\s+0xc
|
|
\s*\*\(\.dat\)
|
|
\s*\.dat\s+0x0+100c\s+0xc\s+.*?
|
|
|
|
/DISCARD/
|
|
\*\(\*\)
|
|
LOAD\s+.*?
|
|
OUTPUT\(.*?\)
|
|
#pass
|