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

            Bug ID: 36198
           Summary: PDB produced by lld doesn't store compiland
                    environments
           Product: lld
           Version: unspecified
          Hardware: PC
                OS: Windows NT
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: All Bugs
          Assignee: unassignedb...@nondot.org
          Reporter: stefan.reinal...@molecular-matters.com
                CC: llvm-bugs@lists.llvm.org

At the moment, PDB files produced by lld do not contain compiland environment
data stored with compilands. PDBs created by Microsoft's toolchain contain
extra data known as "compiland environment" which stores info like the
following for each compiland:

CompilandEnv   : obj =
"C:\Development\Projects\LiveCode\Code\temp\Win32\Debug\ExeForDll\main.obj"
CompilandDetails: 
        Language: C++
        Target processor: Pentium III
        Compiled for edit and continue: yes
        Compiled without debugging info: no
        Compiled with LTCG: no
        Compiled with /bzalign: no
        Managed code present: no
        Compiled with /GS: yes
        Compiled with /sdl: no
        Compiled with /hotpatch: yes
        Converted by CVTCIL: no
        MSIL module: no
        Frontend Version: Major = 19, Minor = 12, Build = 25834, QFE = 0
        Backend Version: Major = 19, Minor = 12, Build = 25834, QFE = 0
        Version string: Microsoft (R) Optimizing Compiler

CompilandEnv   : cwd = "C:\Development\Projects\LiveCode\Code\build"
CompilandEnv   : cl = "C:\Program Files (x86)\Microsoft Visual
Studio\2017\Community\VC\Tools\MSVC\14.12.25827\bin\HostX86\x86\CL.exe"
CompilandEnv   : cmd = "-c -ZI -nologo -W3 -WX- -diagnostics:classic -Od -Oy-
-DWIN32 -D_DEBUG -D_CONSOLE -DIMPORT_FUNCTIONS_FROM_DLL -D_UNICODE -DUNICODE
-Gm -EHs -EHc -RTC1 -MDd -GS -fp:precise -hotpatch -Zc:wchar_t -Zc:forScope
-Zc:inline -FoC:\Development\Projects\LiveCode\Code\temp\Win32\Debug\ExeForDll\
-FdC:\Development\Projects\LiveCode\Code\temp\Win32\Debug\ExeForDll\vc141.pdb
-Gd -TP -analyze- -errorreport:prompt -I"C:\Program Files (x86)\Microsoft
Visual Studio\2017\Community\VC\Tools\MSVC\14.12.25827\include" -I"C:\Program
Files (x86)\Microsoft Visual
Studio\2017\Community\VC\Tools\MSVC\14.12.25827\atlmfc\include" -I"C:\Program
Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\VS\include"
-I"C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt"
-I"C:\Program Files (x86)\Microsoft Visual
Studio\2017\Community\VC\Auxiliary\VS\UnitTest\include" -I"C:\Program Files
(x86)\Windows Kits\8.1\Include\um" -I"C:\Program Files (x86)\Windows
Kits\8.1\Include\shared" -I"C:\Program Files (x86)\Windows
Kits\8.1\Include\winrt" -X"
CompilandEnv   : src = "..\src\Tests\main.cpp"
CompilandEnv   : pdb =
"C:\Development\Projects\LiveCode\Code\temp\Win32\Debug\ExeForDll\vc141.pdb"


The compiland environment stores information like working directory, the
compiler that built the .obj, the source file, PDB path. This information is
really useful for certain tools and it would be nice if lld could also produce
this extra information.

The above output can be reproduced by using DIA2Dump on any PDB produced by
Visual Studio.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to