[ARC] PLT information was still being generated when symbol was forced_local.
authorCupertino Miranda <cmiranda@synopsys.com>
Fri, 2 Mar 2018 16:44:29 +0000 (17:44 +0100)
committerCupertino Miranda <cmiranda@synopsys.com>
Mon, 1 Oct 2018 11:42:11 +0000 (12:42 +0100)
A change upstream reveiled this issue, triggering an assert when linking glibc.

bfd/
2018-03-01  Cupertino Miranda <cmiranda@synopsys.com>

* elf32-arc.c (elf_arc_check_relocs): Changed.

bfd/elf32-arc.c

index 4d36a4175610d887f85bd401e4bfd1fc1ce0c924..180c4dcc52f2f8c324cfd66a7eecd73bbc3db129 100644 (file)
@@ -2057,7 +2057,8 @@ elf_arc_check_relocs (bfd *                        abfd,
          if (h == NULL)
            continue;
          else
-           h->needs_plt = 1;
+           if (h->forced_local == 0)
+             h->needs_plt = 1;
        }
 
       /* Add info to the symbol got_entry_list.  */