https://sourceware.org/bugzilla/show_bug.cgi?id=17735
            Bug ID: 17735
           Summary: gold doesn't set ELFOSABI_GNU for IFUNC
           Product: binutils
           Version: 2.26 (HEAD)
            Status: NEW
          Severity: normal
          Priority: P2
         Component: gold
          Assignee: ccoutant at google dot com
          Reporter: hjl.tools at gmail dot com
                CC: ian at airs dot com

gold doesn't set ELFOSABI_GNU for IFUNC:

[hjl@gnu-tools-1 tmp]$ cat libb.c
void new_sd_get_seats(void);
static void (*resolve_sd_get_seats(void)) (void) {
        return new_sd_get_seats;
}
void sd_get_seats(void) __attribute__((ifunc("resolve_sd_get_seats")));
[hjl@gnu-tools-1 tmp]$ gcc -fpic -c libb.c
[hjl@gnu-tools-1 tmp]$ ld -shared libb.o
[hjl@gnu-tools-1 tmp]$ readelf -h a.out | grep OS/ABI 
  OS/ABI:                            UNIX - GNU
[hjl@gnu-tools-1 tmp]$ ld.gold -shared libb.o
[hjl@gnu-tools-1 tmp]$ readelf -h a.out | grep OS/ABI 
  OS/ABI:                            UNIX - System V
[hjl@gnu-tools-1 tmp]$ 

The same goes for STB_GNU_UNIQUE:

[hjl@gnu-tools-1 tmp]$ cat type.s 
    .data
    .type    unique_global,%gnu_unique_object
unique_global:
    .byte    0x0
    .size    unique_global,1
[hjl@gnu-tools-1 tmp]$ gcc -c type.s 
[hjl@gnu-tools-1 tmp]$ ld -shared type.o
[hjl@gnu-tools-1 tmp]$ readelf -h a.out | grep OS/ABI 
  OS/ABI:                            UNIX - GNU
[hjl@gnu-tools-1 tmp]$ ld.gold -shared type.o
[hjl@gnu-tools-1 tmp]$ readelf -h a.out | grep OS/ABI 
  OS/ABI:                            UNIX - System V
[hjl@gnu-tools-1 tmp]$

-- 
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

Reply via email to