https://sourceware.org/bugzilla/show_bug.cgi?id=22048
--- Comment #5 from H.J. Lu <hjl.tools at gmail dot com> --- (In reply to H.J. Lu from comment #2) > [hjl@gnu-tools-1 glibc]$ cat elf/sofini.c > /* Finalizer module for ELF shared C library. This provides terminating > null pointer words in the `.ctors' and `.dtors' sections. */ > > #ifndef NO_CTORS_DTORS_SECTIONS > static void (*const __CTOR_END__[1]) (void) > __attribute__ ((used, section (".ctors"))) > = { 0 }; > static void (*const __DTOR_END__[1]) (void) > __attribute__ ((used, section (".dtors"))) > = { 0 }; > #endif > > /* Terminate the frame unwind info section with a 4byte 0 as a sentinel; > this would be the 'length' field in a real FDE. */ > > typedef unsigned int ui32 __attribute__ ((mode (SI))); > static const ui32 __FRAME_END__[1] > __attribute__ ((used, section (".eh_frame"))) > = { 0 }; > [hjl@gnu-tools-1 glibc]$ Given that there is -lgcc after elf/sofini.os: gcc -shared -static-libgcc -Wl,-O1 -Wl,-z,defs -Wl,-dynamic-linker=/lib64/ld-linux-x86-64.so.2 -B/export/build/gnu/glibc/build-x86_64-linux/csu/ -Wl,--version-script=/export/build/gnu/glibc/build-x86_64-linux/libc.map -Wl,-soname=libc.so.6 -Wl,-z,combreloc -Wl,-z,relro -Wl,--hash-style=both -nostdlib -nostartfiles -e __libc_main -L/export/build/gnu/glibc/build-x86_64-linux -L/export/build/gnu/glibc/build-x86_64-linux/math -L/export/build/gnu/glibc/build-x86_64-linux/elf -L/export/build/gnu/glibc/build-x86_64-linux/dlfcn -L/export/build/gnu/glibc/build-x86_64-linux/nss -L/export/build/gnu/glibc/build-x86_64-linux/nis -L/export/build/gnu/glibc/build-x86_64-linux/rt -L/export/build/gnu/glibc/build-x86_64-linux/resolv -L/export/build/gnu/glibc/build-x86_64-linux/crypt -L/export/build/gnu/glibc/build-x86_64-linux/mathvec -L/export/build/gnu/glibc/build-x86_64-linux/support -L/export/build/gnu/glibc/build-x86_64-linux/nptl -Wl,-rpath-link=/export/build/gnu/glibc/build-x86_64-linux:/export/build/gnu/glibc/build-x86_64-linux/math:/export/build/gnu/glibc/build-x86_64-linux/elf:/export/build/gnu/glibc/build-x86_64-linux/dlfcn:/export/build/gnu/glibc/build-x86_64-linux/nss:/export/build/gnu/glibc/build-x86_64-linux/nis:/export/build/gnu/glibc/build-x86_64-linux/rt:/export/build/gnu/glibc/build-x86_64-linux/resolv:/export/build/gnu/glibc/build-x86_64-linux/crypt:/export/build/gnu/glibc/build-x86_64-linux/mathvec:/export/build/gnu/glibc/build-x86_64-linux/support:/export/build/gnu/glibc/build-x86_64-linux/nptl -o /export/build/gnu/glibc/build-x86_64-linux/linkobj/libc.so -T /export/build/gnu/glibc/build-x86_64-linux/shlib.lds /export/build/gnu/glibc/build-x86_64-linux/csu/abi-note.o /export/build/gnu/glibc/build-x86_64-linux/elf/soinit.os -Wl,--whole-archive /export/build/gnu/glibc/build-x86_64-linux/linkobj/libc_pic.a -Wl,--no-whole-archive /export/build/gnu/glibc/build-x86_64-linux/elf/sofini.os /export/build/gnu/glibc/build-x86_64-linux/elf/interp.os /export/build/gnu/glibc/build-x86_64-linux/elf/ld.so -lgcc .eh_frame section in elf/sofini.os is placed in the middle of .eh_frame section in libc.so. -- 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