bug-binutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug ld/29797] error while loading shared libraries: unexpected PLT relo


From: hjl.tools at gmail dot com
Subject: [Bug ld/29797] error while loading shared libraries: unexpected PLT reloc type 0x00
Date: Wed, 16 Nov 2022 22:23:46 +0000

https://sourceware.org/bugzilla/show_bug.cgi?id=29797

--- Comment #3 from H.J. Lu <hjl.tools at gmail dot com> ---
Test without LTO:

[hjl@gnu-tgl-3 pr29797]$ cat x.cc 
#include <stdio.h>

__attribute ((target ("avx2")))
static void foo()
{
  puts("avx2");
}

__attribute ((target ("default")))
static void foo()
{
  puts("default");
}

int main()
{
  foo();
  return 0;
}
[hjl@gnu-tgl-3 pr29797]$ make
gcc -B./ -O2    -c -o x.o x.cc
gcc -B./ -s -o x x.o
./x
./x: error while loading shared libraries: unexpected PLT reloc type 0x00
make: *** [Makefile:8: all] Error 127
[hjl@gnu-tgl-3 pr29797]$ 

There is:

 /* If backend needs to output some local symbols not present in the hash
     table, do it now.  */
  if (bed->elf_backend_output_arch_local_syms
      && (info->strip != strip_all || emit_relocs))
    {
      if (! ((*bed->elf_backend_output_arch_local_syms)
             (abfd, info, &flinfo, elf_link_output_symstrtab)))
        {
          ret = false;
          goto return_local_hash_table;
        }
    }

Only backend knows how to properly handle local symbols.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]