https://sourceware.org/bugzilla/show_bug.cgi?id=17553
--- Comment #9 from glaubitz at physik dot fu-berlin.de <glaubitz at physik dot fu-berlin.de> --- Since Matthis Klose recently updated binutils in Debian, I was able to test with a freshly compiled version of binutils. Unfortunately, the result is still the same. Here is the output of the full map if that helps: glaubitz@yamato:~$ ld -v GNU ld (GNU Binutils for Debian) 2.24.90.20141104 glaubitz@yamato:~$ ld -shared --eh-frame-hdr -o test.so test1.o test2.o --print-map ld: .eh_frame_hdr table[0] FDE at 000004d4 overlaps table[1] FDE at 000004f0. Discarded input sections .group 0x00000000 0x8 test1.o .group 0x00000000 0x8 test1.o .note.GNU-stack 0x00000000 0x0 test1.o .group 0x00000000 0x8 test2.o .group 0x00000000 0x8 test2.o .text._ZN1XD2Ev 0x00000000 0x16 test2.o .text._Z9xkcd_randv 0x00000000 0x5c test2.o .note.GNU-stack 0x00000000 0x0 test2.o Memory Configuration Name Origin Length Attributes *default* 0x00000000 0xffffffff Linker script and memory map LOAD test1.o LOAD test2.o 0x000000d4 . = (0x0 + SIZEOF_HEADERS) .note.gnu.build-id *(.note.gnu.build-id) .hash 0x000000d4 0x50 *(.hash) .hash 0x000000d4 0x50 test1.o .gnu.hash *(.gnu.hash) .dynsym 0x00000124 0xf0 *(.dynsym) .dynsym 0x00000124 0xf0 test1.o .dynstr 0x00000214 0xa7 *(.dynstr) .dynstr 0x00000214 0xa7 test1.o .gnu.version 0x000002bc 0x0 *(.gnu.version) .gnu.version 0x000002bc 0x0 test1.o .gnu.version_d 0x000002bc 0x0 *(.gnu.version_d) .gnu.version_d 0x000002bc 0x0 test1.o .gnu.version_r 0x000002bc 0x0 *(.gnu.version_r) .gnu.version_r 0x000002bc 0x0 test1.o .rela.dyn 0x000002bc 0x90 *(.rela.init) *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) .rela.text 0x000002bc 0x18 test1.o .rela.text._Z9xkcd_randv 0x000002d4 0x48 test1.o *(.rela.fini) *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) *(.rela.ctors) *(.rela.dtors) *(.rela.got) .rela.got 0x0000031c 0x0 test1.o *(.rela.sdata .rela.sdata.* .rela.gnu.linkonce.s.*) *(.rela.sbss .rela.sbss.* .rela.gnu.linkonce.sb.*) *(.rela.sdata2 .rela.sdata2.* .rela.gnu.linkonce.s2.*) *(.rela.sbss2 .rela.sbss2.* .rela.gnu.linkonce.sb2.*) *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) *(.rela.iplt) .rela.got.funcdesc 0x0000031c 0x0 test1.o .rela.eh_frame 0x0000031c 0x30 test1.o .rela.plt 0x0000034c 0x0 *(.rela.plt) .rela.plt 0x0000034c 0x0 test1.o .init *(SORT(.init)) .plt 0x0000034c 0x0 *(.plt) .plt 0x0000034c 0x0 test1.o .iplt *(.iplt) .text 0x0000034c 0xb4 *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) *(.text.hot .text.hot.*) *(.text .stub .text.* .gnu.linkonce.t.*) .text 0x0000034c 0x20 test1.o 0x0000034c f1() .text._ZN1XD2Ev 0x0000036c 0x16 test1.o 0x0000036c X::~X() 0x0000036c X::~X() *fill* 0x00000382 0x2 .text._Z9xkcd_randv 0x00000384 0x5c test1.o 0x00000384 xkcd_rand() .text 0x000003e0 0x20 test2.o 0x000003e0 f2() *(.gnu.warning) .fini *(SORT(.fini)) 0x00000400 PROVIDE (__etext, .) 0x00000400 PROVIDE (_etext, .) 0x00000400 PROVIDE (etext, .) .rodata *(.rodata .rodata.* .gnu.linkonce.r.*) .rofixup 0x00000400 0x0 .rofixup 0x00000400 0x0 test1.o .rodata1 *(.rodata1) .eh_frame_hdr 0x00000400 0x3c *(.eh_frame_hdr) .eh_frame_hdr 0x00000400 0x3c test1.o .eh_frame 0x0000043c 0x100 *(.eh_frame) .eh_frame 0x0000043c 0x98 test1.o .eh_frame 0x000004d4 0x68 test2.o 0x98 (size before relaxing) .gcc_except_table 0x0000053c 0x18 *(.gcc_except_table .gcc_except_table.*) .gcc_except_table 0x0000053c 0xc test1.o .gcc_except_table 0x00000548 0xc test2.o .exception_ranges *(.exception_ranges .exception_ranges*) 0x00000554 . = (ALIGN (0x10000) - ((0x10000 - .) & 0xffff)) 0x00010554 . = DATA_SEGMENT_ALIGN (0x10000, 0x1000) .eh_frame *(.eh_frame) .gcc_except_table *(.gcc_except_table .gcc_except_table.*) .exception_ranges *(.exception_ranges .exception_ranges*) .tdata *(.tdata .tdata.* .gnu.linkonce.td.*) .tbss *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) .preinit_array *(.preinit_array) .init_array *(SORT(.init_array.*) SORT(.ctors.*)) *(.init_array EXCLUDE_FILE(*crtend?.o *crtend.o *crtbegin?.o *crtbegin.o) .ctors) .fini_array *(SORT(.fini_array.*) SORT(.dtors.*)) *(.fini_array EXCLUDE_FILE(*crtend?.o *crtend.o *crtbegin?.o *crtbegin.o) .dtors) .ctors *crtbegin.o(.ctors) *crtbegin?.o(.ctors) *(EXCLUDE_FILE(*crtend?.o *crtend.o) .ctors) *(SORT(.ctors.*)) *(.ctors) .dtors *crtbegin.o(.dtors) *crtbegin?.o(.dtors) *(EXCLUDE_FILE(*crtend?.o *crtend.o) .dtors) *(SORT(.dtors.*)) *(.dtors) .jcr *(.jcr) .data.rel.ro *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro .data.rel.ro.* .gnu.linkonce.d.rel.ro.*) .dynamic 0x00010554 0x78 *(.dynamic) .dynamic 0x00010554 0x78 test1.o 0x00010554 _DYNAMIC 0x000105cc . = DATA_SEGMENT_RELRO_END (., 0x0) .data 0x000105cc 0x0 0x000105cc PROVIDE (__data_start, .) *(.data .data.* .gnu.linkonce.d.*) .data 0x000105cc 0x0 test1.o .data 0x000105cc 0x0 test2.o .got.funcdesc 0x000105cc 0x0 .got.funcdesc 0x000105cc 0x0 test1.o .data1 *(.data1) .note.ABI-tag *(.note.ABI-tag) .got 0x000105cc 0xc *(.got.plt) .got.plt 0x000105cc 0xc test1.o 0x000105cc _GLOBAL_OFFSET_TABLE_ *(.igot.plt) *(.got) .got 0x000105d8 0x0 test1.o *(.igot) .sdata *(.sdata2 .sdata2.* .gnu.linkonce.s2.*) *(.sdata .sdata.* .gnu.linkonce.s.*) 0x000105d8 _edata = . 0x000105d8 PROVIDE (edata, .) 0x000105d8 . = . 0x000105d8 __bss_start = . .sbss *(.sbss2 .sbss2.* .gnu.linkonce.sb2.*) *(.dynsbss) *(.sbss .sbss.* .gnu.linkonce.sb.*) *(.scommon) .bss 0x000105d8 0x0 *(.dynbss) .dynbss 0x000105d8 0x0 test1.o *(.bss .bss.* .gnu.linkonce.b.*) .bss 0x000105d8 0x0 test1.o .bss 0x000105d8 0x0 test2.o *(COMMON) 0x000105d8 . = ALIGN ((. != 0x0)?0x4:0x1) 0x000105d8 . = ALIGN (0x4) 0x000105d8 . = SEGMENT_START ("ldata-segment", .) 0x000105d8 . = ALIGN (0x4) 0x000105d8 _end = . 0x000105d8 PROVIDE (end, .) 0x000105d8 . = DATA_SEGMENT_END (.) .stab *(.stab) .stabstr *(.stabstr) .stab.excl *(.stab.excl) .stab.exclstr *(.stab.exclstr) .stab.index *(.stab.index) .stab.indexstr *(.stab.indexstr) .comment 0x00000000 0x1c *(.comment) .comment 0x00000000 0x1c test1.o 0x1d (size before relaxing) .comment 0x0000001c 0x1d test2.o .debug *(.debug) .line *(.line) .debug_srcinfo *(.debug_srcinfo) .debug_sfnames *(.debug_sfnames) .debug_aranges *(.debug_aranges) .debug_pubnames *(.debug_pubnames) .debug_info *(.debug_info .gnu.linkonce.wi.*) .debug_abbrev *(.debug_abbrev) .debug_line *(.debug_line .debug_line.* .debug_line_end) .debug_frame *(.debug_frame) .debug_str *(.debug_str) .debug_loc *(.debug_loc) .debug_macinfo *(.debug_macinfo) .debug_weaknames *(.debug_weaknames) .debug_funcnames *(.debug_funcnames) .debug_typenames *(.debug_typenames) .debug_varnames *(.debug_varnames) .debug_pubtypes *(.debug_pubtypes) .debug_ranges *(.debug_ranges) .debug_macro *(.debug_macro) .gnu.attributes *(.gnu.attributes) /DISCARD/ *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) OUTPUT(test.so elf32-sh-linux) glaubitz@yamato:~$ -- You are receiving this mail because: You are on the CC list for the bug. _______________________________________________ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils