[llvm-bugs] [Bug 34113] New: LLD doesn't set dynamic symbol names for --defsym correctly

via llvm-bugs llvm-bugs at lists.llvm.org
Mon Aug 7 23:27:34 PDT 2017


            Bug ID: 34113
           Summary: LLD doesn't set dynamic symbol names for --defsym
           Product: lld
           Version: unspecified
          Hardware: PC
                OS: All
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: COFF
          Assignee: unassignedbugs at nondot.org
          Reporter: smeenai at fb.com
                CC: compnerd at compnerd.org, grimar at accesssoftek.com,
                    llvm-bugs at lists.llvm.org, rafael.espindola at gmail.com,
                    ruiu at google.com

% cat sym.c
void f() {}

% clang -fPIC -c sym.c
% ld.lld -shared --defsym=g=f -o libsym.so sym.o
% nm -D libsym.so
0000000000001000 T f
0000000000001000 T f

We end up with two f's in the symbol table rather than an f and a g. This
appears to be a known issue; r306036 corrected it, but it had to be reverted in
r307110 because of PR33635.

The issue I have with this is that it prevents clients of the library from
using the aliased name, which limits the usefulness of --defsym quite a bit.
Both bfd and gold handle this correctly.

You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20170808/5a8109f8/attachment-0001.html>

More information about the llvm-bugs mailing list