[llvm-bugs] [Bug 24476] New: LLD's PE symbol tables are corrupted by mt.exe

via llvm-bugs llvm-bugs at lists.llvm.org
Mon Aug 17 09:37:06 PDT 2015


            Bug ID: 24476
           Summary: LLD's PE symbol tables are corrupted by mt.exe
           Product: lld
           Version: unspecified
          Hardware: PC
                OS: Windows NT
            Status: NEW
          Severity: normal
          Priority: P
         Component: All Bugs
          Assignee: unassignedbugs at nondot.org
          Reporter: rnk at google.com
                CC: llvm-bugs at lists.llvm.org
    Classification: Unclassified

cmake runs mt.exe on the linker output after the linker finishes to embed
Windows manifest files in the binary. mt.exe doesn't expect to find a
COFF-style symbol table in a PE image, so the PointerToSymbolTable field ends
up pointing past the end of the binary.

At high level, I'm trying to self-host clang with lld and asan on Windows. I
need to preserve the PE symbol table so that the long section names used by
DWARF (.debug_info) work.

For now, I can convince cmake that it doesn't need to add a manifest to our
binaries, and that will probably work. However, it would be nice if LLD or LLVM
provided some solution, like a replacement for mt.exe if it's trivial, that
avoided the problem altogether.

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/20150817/f386f6ef/attachment.html>

More information about the llvm-bugs mailing list