[llvm-bugs] [Bug 34181] New: Regressions in written import libraries since 4.0

via llvm-bugs llvm-bugs at lists.llvm.org
Mon Aug 14 03:05:16 PDT 2017


https://bugs.llvm.org/show_bug.cgi?id=34181

            Bug ID: 34181
           Summary: Regressions in written import libraries since 4.0
           Product: lld
           Version: unspecified
          Hardware: PC
                OS: All
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: COFF
          Assignee: unassignedbugs at nondot.org
          Reporter: martin at martin.st
                CC: llvm-bugs at lists.llvm.org

Since the 4.0 release, there are at least two regressions in produced import
libraries for i386:
- Exported stdcall functions on i386 don't get the right "name type" field in
the produced import library. Code that links to the import library succeeds to
link, but fails to run (since it ends up trying to load a function with the
decorated name).
- Functions renamed with /export:foo=bar end up as weak aliases in the import
library, instead of as a normal import library entry (which is the right thing
to do for such cases).

The former is a regression since LLD was switched over to the factorized
COFFImportLibrary functions in LLVM (in SVN r303491, and reapplied in r304573
with another bug fixed).

The latter is a regression since llvm-dlltool extended the COFFImportLibrary
functions to support writing weak aliases.

Fixes for the first of the issues are in review at:
https://reviews.llvm.org/D36544 (for LLVM)
https://reviews.llvm.org/D36545 (for LLD)

Fixes for the second of the issues are in review at:
https://reviews.llvm.org/D36633 (for LLVM)
https://reviews.llvm.org/D36634 (for LLD)


The former issue also shows similarly in the new llvm-dlltool, with a suggested
fix in review at:
https://reviews.llvm.org/D36548 (currently approved, but pending the common fix
in https://reviews.llvm.org/D36544)

-- 
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/20170814/f446af70/attachment.html>


More information about the llvm-bugs mailing list