]> git.wh0rd.org Git - elf2flt.git/commitdiff
The .note.ABI-tag section exists to indicate to other projects (like gdb
authorDavid McCullough <davidm@snapgear.com>
Thu, 16 Dec 2010 01:37:41 +0000 (01:37 +0000)
committerDavid McCullough <davidm@snapgear.com>
Thu, 16 Dec 2010 01:37:41 +0000 (01:37 +0000)
or library loaders) information about the target OS.  It doesn't actually
contain anything that is used at runtime.  So while the current linker
script gathers this into the .data section, the final FLAT doesn't include
anything from it.  But tools expect to find a dedicated section in ELFs
which the current section merge prevents.^M

So give .note.ABI-tag its own output section so gdb can locate and use it.
This shouldn't change the FLAT files produced in any way.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
elf2flt.ld.in

index 6871ae91e62c492f83b3b0175568572e994fcb07..c7e01a6f978d427816c86d719baae15a1bdce28a 100644 (file)
@@ -81,7 +81,6 @@ R_RODAT               *(.gnu.linkonce.r*)
                *(__libc_atexit)
                *(__libc_subinit)
                *(__libc_subfreeres)
-               *(.note.ABI-tag)
 
                /* microblaze-specific read-only small data area
                   and associated locating symbols */
@@ -137,6 +136,7 @@ TOR:                @SYMBOL_PREFIX@__DTOR_END__ = .;
                PROVIDE (@SYMBOL_PREFIX@__fini_array_end = .);
        } > flatmem :data
 
+       .note.ABI-tag : { *(.note.ABI-tag) } > flatmem
        .eh_frame_hdr : { *(.eh_frame_hdr) } > flatmem
        .eh_frame : { KEEP(*(.eh_frame)) } > flatmem
        .gcc_except_table : {