[lld] r327903 - Revert "Support embedding natvis files in PDBs."
Zachary Turner via llvm-commits
llvm-commits at lists.llvm.org
Mon Mar 19 13:41:59 PDT 2018
Author: zturner
Date: Mon Mar 19 13:41:59 2018
New Revision: 327903
URL: http://llvm.org/viewvc/llvm-project?rev=327903&view=rev
Log:
Revert "Support embedding natvis files in PDBs."
This is causing a test failure on a certain bot, so I'm removing
this temporarily until we can figure out the source of the error.
Removed:
lld/trunk/test/COFF/Inputs/generic.yaml
lld/trunk/test/COFF/Inputs/natvis-1.natvis
lld/trunk/test/COFF/Inputs/natvis-2.natvis
lld/trunk/test/COFF/Inputs/natvis-3.natvis
lld/trunk/test/COFF/pdb-natvis.test
Modified:
lld/trunk/COFF/Config.h
lld/trunk/COFF/Driver.cpp
lld/trunk/COFF/Options.td
lld/trunk/COFF/PDB.cpp
lld/trunk/test/lit.cfg.py
lld/trunk/test/lit.site.cfg.py.in
Modified: lld/trunk/COFF/Config.h
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/COFF/Config.h?rev=327903&r1=327902&r2=327903&view=diff
==============================================================================
--- lld/trunk/COFF/Config.h (original)
+++ lld/trunk/COFF/Config.h Mon Mar 19 13:41:59 2018
@@ -99,7 +99,6 @@ struct Configuration {
bool DebugGHashes = false;
bool ShowTiming = false;
unsigned DebugTypes = static_cast<unsigned>(DebugType::None);
- std::vector<std::string> NatvisFiles;
llvm::SmallString<128> PDBPath;
std::vector<llvm::StringRef> Argv;
Modified: lld/trunk/COFF/Driver.cpp
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/COFF/Driver.cpp?rev=327903&r1=327902&r2=327903&view=diff
==============================================================================
--- lld/trunk/COFF/Driver.cpp (original)
+++ lld/trunk/COFF/Driver.cpp Mon Mar 19 13:41:59 2018
@@ -933,12 +933,9 @@ void LinkerDriver::link(ArrayRef<const c
// Handle /pdb
bool ShouldCreatePDB = Args.hasArg(OPT_debug, OPT_debug_ghash);
- if (ShouldCreatePDB) {
+ if (ShouldCreatePDB)
if (auto *Arg = Args.getLastArg(OPT_pdb))
Config->PDBPath = Arg->getValue();
- if (Args.hasArg(OPT_natvis))
- Config->NatvisFiles = Args.getAllArgValues(OPT_natvis);
- }
// Handle /noentry
if (Args.hasArg(OPT_noentry)) {
Modified: lld/trunk/COFF/Options.td
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/COFF/Options.td?rev=327903&r1=327902&r2=327903&view=diff
==============================================================================
--- lld/trunk/COFF/Options.td (original)
+++ lld/trunk/COFF/Options.td Mon Mar 19 13:41:59 2018
@@ -45,7 +45,6 @@ def nodefaultlib : P<"nodefaultlib", "Re
def opt : P<"opt", "Control optimizations">;
def order : P<"order", "Put functions in order">;
def out : P<"out", "Path to file to write output">;
-def natvis : P<"natvis", "Path to natvis file to embed in the PDB">;
def pdb : P<"pdb", "PDB file path">;
def section : P<"section", "Specify section attributes">;
def stack : P<"stack", "Size of the stack">;
@@ -163,6 +162,7 @@ def delay : QF<"delay">;
def errorreport : QF<"errorreport">;
def idlout : QF<"idlout">;
def maxilksize : QF<"maxilksize">;
+def natvis : QF<"natvis">;
def pdbaltpath : QF<"pdbaltpath">;
def tlbid : QF<"tlbid">;
def tlbout : QF<"tlbout">;
Modified: lld/trunk/COFF/PDB.cpp
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/COFF/PDB.cpp?rev=327903&r1=327902&r2=327903&view=diff
==============================================================================
--- lld/trunk/COFF/PDB.cpp (original)
+++ lld/trunk/COFF/PDB.cpp Mon Mar 19 13:41:59 2018
@@ -90,9 +90,6 @@ public:
/// Emit the basic PDB structure: initial streams, headers, etc.
void initialize(const llvm::codeview::DebugInfo &BuildId);
- /// Add natvis files specified on the command line.
- void addNatvisFiles();
-
/// Link CodeView from each object file in the symbol table into the PDB.
void addObjectsToPDB();
@@ -964,18 +961,6 @@ void PDBLinker::addObjectsToPDB() {
}
}
-void PDBLinker::addNatvisFiles() {
- for (StringRef File : Config->NatvisFiles) {
- ErrorOr<std::unique_ptr<MemoryBuffer>> DataOrErr =
- MemoryBuffer::getFile(File);
- if (!DataOrErr) {
- warn("Cannot open input file: " + File);
- continue;
- }
- Builder.addInjectedSource(File, std::move(*DataOrErr));
- }
-}
-
static void addCommonLinkerModuleSymbols(StringRef Path,
pdb::DbiModuleDescriptorBuilder &Mod,
BumpPtrAllocator &Allocator) {
@@ -1056,7 +1041,6 @@ void coff::createPDB(SymbolTable *Symtab
PDB.initialize(BuildId);
PDB.addObjectsToPDB();
PDB.addSections(OutputSections, SectionTable);
- PDB.addNatvisFiles();
ScopedTimer T2(DiskCommitTimer);
PDB.commit();
Removed: lld/trunk/test/COFF/Inputs/generic.yaml
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/COFF/Inputs/generic.yaml?rev=327902&view=auto
==============================================================================
--- lld/trunk/test/COFF/Inputs/generic.yaml (original)
+++ lld/trunk/test/COFF/Inputs/generic.yaml (removed)
@@ -1,282 +0,0 @@
---- !COFF
-header:
- Machine: IMAGE_FILE_MACHINE_AMD64
- Characteristics: [ ]
-sections:
- - Name: .text
- Characteristics: [ IMAGE_SCN_CNT_CODE, IMAGE_SCN_MEM_EXECUTE, IMAGE_SCN_MEM_READ ]
- Alignment: 16
- SectionData: 4883EC1831C0C7442414000000004889542408894C24044883C418C3
- - Name: .data
- Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ, IMAGE_SCN_MEM_WRITE ]
- Alignment: 4
- SectionData: ''
- - Name: .bss
- Characteristics: [ IMAGE_SCN_CNT_UNINITIALIZED_DATA, IMAGE_SCN_MEM_READ, IMAGE_SCN_MEM_WRITE ]
- Alignment: 4
- SectionData: ''
- - Name: .xdata
- Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ ]
- Alignment: 4
- SectionData: '0104010004220000'
- - Name: .drectve
- Characteristics: [ IMAGE_SCN_LNK_INFO, IMAGE_SCN_LNK_REMOVE ]
- Alignment: 1
- SectionData: 202F44454641554C544C49423A6C6962636D742E6C6962202F44454641554C544C49423A6F6C646E616D65732E6C6962
- - Name: '.debug$S'
- Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_DISCARDABLE, IMAGE_SCN_MEM_READ ]
- Alignment: 4
- SectionData: 04000000F10000002F0000002D003C1101000000D0000700000000000000581B000000000000636C616E672076657273696F6E20372E302E30200000F1000000760000002A0047110000000000000000000000001C000000000000000000000003100000000000000000006D61696E000D003E117400000001006172676300120045114F0100000400000017000000000005000D003E110010000001006172677600120045114F01000008000000170000000000050002004F110000F20000002800000000000000000000001C00000000000000020000001C00000000000000020000001700000003000000F40000001800000001000000100139E9A066A1995A99DD01F5A392F26D7C0000F30000003000000000443A5C7372635C6C6C766D6275696C645C636C5C52656C656173655C7836345C67656E657269632E63707000000000
- Subsections:
- - !Symbols
- Records:
- - Kind: S_COMPILE3
- Compile3Sym:
- Flags: [ ]
- Machine: X64
- FrontendMajor: 7
- FrontendMinor: 0
- FrontendBuild: 0
- FrontendQFE: 0
- BackendMajor: 7000
- BackendMinor: 0
- BackendBuild: 0
- BackendQFE: 0
- Version: 'clang version 7.0.0 '
- - !Symbols
- Records:
- - Kind: S_GPROC32_ID
- ProcSym:
- CodeSize: 28
- DbgStart: 0
- DbgEnd: 0
- FunctionType: 4099
- Flags: [ ]
- DisplayName: main
- - Kind: S_LOCAL
- LocalSym:
- Type: 116
- Flags: [ IsParameter ]
- VarName: argc
- - Kind: S_DEFRANGE_REGISTER_REL
- DefRangeRegisterRelSym:
- Register: 335
- Flags: 0
- BasePointerOffset: 4
- Range:
- OffsetStart: 23
- ISectStart: 0
- Range: 5
- Gaps:
- - Kind: S_LOCAL
- LocalSym:
- Type: 4096
- Flags: [ IsParameter ]
- VarName: argv
- - Kind: S_DEFRANGE_REGISTER_REL
- DefRangeRegisterRelSym:
- Register: 335
- Flags: 0
- BasePointerOffset: 8
- Range:
- OffsetStart: 23
- ISectStart: 0
- Range: 5
- Gaps:
- - Kind: S_PROC_ID_END
- ScopeEndSym:
- - !Lines
- CodeSize: 28
- Flags: [ ]
- RelocOffset: 0
- RelocSegment: 0
- Blocks:
- - FileName: 'D:\src\llvmbuild\cl\Release\x64\generic.cpp'
- Lines:
- - Offset: 0
- LineStart: 2
- IsStatement: false
- EndDelta: 0
- - Offset: 23
- LineStart: 3
- IsStatement: false
- EndDelta: 0
- Columns:
- - !FileChecksums
- Checksums:
- - FileName: 'D:\src\llvmbuild\cl\Release\x64\generic.cpp'
- Kind: MD5
- Checksum: 39E9A066A1995A99DD01F5A392F26D7C
- - !StringTable
- Strings:
- - 'D:\src\llvmbuild\cl\Release\x64\generic.cpp'
- - ''
- - ''
- - ''
- Relocations:
- - VirtualAddress: 100
- SymbolName: main
- Type: IMAGE_REL_AMD64_SECREL
- - VirtualAddress: 104
- SymbolName: main
- Type: IMAGE_REL_AMD64_SECTION
- - VirtualAddress: 139
- SymbolName: .text
- Type: IMAGE_REL_AMD64_SECREL
- - VirtualAddress: 143
- SymbolName: .text
- Type: IMAGE_REL_AMD64_SECTION
- - VirtualAddress: 174
- SymbolName: .text
- Type: IMAGE_REL_AMD64_SECREL
- - VirtualAddress: 178
- SymbolName: .text
- Type: IMAGE_REL_AMD64_SECTION
- - VirtualAddress: 196
- SymbolName: main
- Type: IMAGE_REL_AMD64_SECREL
- - VirtualAddress: 200
- SymbolName: main
- Type: IMAGE_REL_AMD64_SECTION
- - Name: '.debug$T'
- Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_DISCARDABLE, IMAGE_SCN_MEM_READ ]
- Alignment: 4
- SectionData: 040000000A000210700600000C0001000E0001120200000074000000001000000E0008107400000000000200011000001200011600000000021000006D61696E00F3F2F1
- Types:
- - Kind: LF_POINTER
- Pointer:
- ReferentType: 1648
- Attrs: 65548
- - Kind: LF_ARGLIST
- ArgList:
- ArgIndices: [ 116, 4096 ]
- - Kind: LF_PROCEDURE
- Procedure:
- ReturnType: 116
- CallConv: NearC
- Options: [ None ]
- ParameterCount: 2
- ArgumentList: 4097
- - Kind: LF_FUNC_ID
- FuncId:
- ParentScope: 0
- FunctionType: 4098
- Name: main
- - Name: .pdata
- Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ ]
- Alignment: 4
- SectionData: 000000001C00000000000000
- Relocations:
- - VirtualAddress: 0
- SymbolName: main
- Type: IMAGE_REL_AMD64_ADDR32NB
- - VirtualAddress: 4
- SymbolName: main
- Type: IMAGE_REL_AMD64_ADDR32NB
- - VirtualAddress: 8
- SymbolName: .xdata
- Type: IMAGE_REL_AMD64_ADDR32NB
-symbols:
- - Name: .text
- Value: 0
- SectionNumber: 1
- SimpleType: IMAGE_SYM_TYPE_NULL
- ComplexType: IMAGE_SYM_DTYPE_NULL
- StorageClass: IMAGE_SYM_CLASS_STATIC
- SectionDefinition:
- Length: 28
- NumberOfRelocations: 0
- NumberOfLinenumbers: 0
- CheckSum: 594448369
- Number: 1
- - Name: .data
- Value: 0
- SectionNumber: 2
- SimpleType: IMAGE_SYM_TYPE_NULL
- ComplexType: IMAGE_SYM_DTYPE_NULL
- StorageClass: IMAGE_SYM_CLASS_STATIC
- SectionDefinition:
- Length: 0
- NumberOfRelocations: 0
- NumberOfLinenumbers: 0
- CheckSum: 0
- Number: 2
- - Name: .bss
- Value: 0
- SectionNumber: 3
- SimpleType: IMAGE_SYM_TYPE_NULL
- ComplexType: IMAGE_SYM_DTYPE_NULL
- StorageClass: IMAGE_SYM_CLASS_STATIC
- SectionDefinition:
- Length: 0
- NumberOfRelocations: 0
- NumberOfLinenumbers: 0
- CheckSum: 0
- Number: 3
- - Name: .xdata
- Value: 0
- SectionNumber: 4
- SimpleType: IMAGE_SYM_TYPE_NULL
- ComplexType: IMAGE_SYM_DTYPE_NULL
- StorageClass: IMAGE_SYM_CLASS_STATIC
- SectionDefinition:
- Length: 8
- NumberOfRelocations: 0
- NumberOfLinenumbers: 0
- CheckSum: 1192424177
- Number: 4
- - Name: .drectve
- Value: 0
- SectionNumber: 5
- SimpleType: IMAGE_SYM_TYPE_NULL
- ComplexType: IMAGE_SYM_DTYPE_NULL
- StorageClass: IMAGE_SYM_CLASS_STATIC
- SectionDefinition:
- Length: 48
- NumberOfRelocations: 0
- NumberOfLinenumbers: 0
- CheckSum: 149686238
- Number: 5
- - Name: '.debug$S'
- Value: 0
- SectionNumber: 6
- SimpleType: IMAGE_SYM_TYPE_NULL
- ComplexType: IMAGE_SYM_DTYPE_NULL
- StorageClass: IMAGE_SYM_CLASS_STATIC
- SectionDefinition:
- Length: 324
- NumberOfRelocations: 8
- NumberOfLinenumbers: 0
- CheckSum: 4196717433
- Number: 6
- - Name: '.debug$T'
- Value: 0
- SectionNumber: 7
- SimpleType: IMAGE_SYM_TYPE_NULL
- ComplexType: IMAGE_SYM_DTYPE_NULL
- StorageClass: IMAGE_SYM_CLASS_STATIC
- SectionDefinition:
- Length: 68
- NumberOfRelocations: 0
- NumberOfLinenumbers: 0
- CheckSum: 485351071
- Number: 7
- - Name: .pdata
- Value: 0
- SectionNumber: 8
- SimpleType: IMAGE_SYM_TYPE_NULL
- ComplexType: IMAGE_SYM_DTYPE_NULL
- StorageClass: IMAGE_SYM_CLASS_STATIC
- SectionDefinition:
- Length: 12
- NumberOfRelocations: 3
- NumberOfLinenumbers: 0
- CheckSum: 722740324
- Number: 8
- - Name: main
- Value: 0
- SectionNumber: 1
- SimpleType: IMAGE_SYM_TYPE_NULL
- ComplexType: IMAGE_SYM_DTYPE_FUNCTION
- StorageClass: IMAGE_SYM_CLASS_EXTERNAL
-...
Removed: lld/trunk/test/COFF/Inputs/natvis-1.natvis
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/COFF/Inputs/natvis-1.natvis?rev=327902&view=auto
==============================================================================
--- lld/trunk/test/COFF/Inputs/natvis-1.natvis (original)
+++ lld/trunk/test/COFF/Inputs/natvis-1.natvis (removed)
@@ -1 +0,0 @@
-1st Natvis Test
Removed: lld/trunk/test/COFF/Inputs/natvis-2.natvis
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/COFF/Inputs/natvis-2.natvis?rev=327902&view=auto
==============================================================================
--- lld/trunk/test/COFF/Inputs/natvis-2.natvis (original)
+++ lld/trunk/test/COFF/Inputs/natvis-2.natvis (removed)
@@ -1 +0,0 @@
-Second Natvis Test
Removed: lld/trunk/test/COFF/Inputs/natvis-3.natvis
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/COFF/Inputs/natvis-3.natvis?rev=327902&view=auto
==============================================================================
--- lld/trunk/test/COFF/Inputs/natvis-3.natvis (original)
+++ lld/trunk/test/COFF/Inputs/natvis-3.natvis (removed)
@@ -1 +0,0 @@
-Third Natvis Test
Removed: lld/trunk/test/COFF/pdb-natvis.test
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/COFF/pdb-natvis.test?rev=327902&view=auto
==============================================================================
--- lld/trunk/test/COFF/pdb-natvis.test (original)
+++ lld/trunk/test/COFF/pdb-natvis.test (removed)
@@ -1,26 +0,0 @@
-REQUIRES: diasdk
-
-RUN: yaml2obj %p/Inputs/generic.yaml > %t.obj
-RUN: lld-link /DEBUG %t.obj /nodefaultlib /entry:main /NATVIS:%p/Inputs/natvis-1.natvis \
-RUN: /NATVIS:%p/Inputs/natvis-2.natvis /NATVIS:%p/Inputs/natvis-3.natvis /OUT:%t.exe \
-RUN: /PDB:%t.pdb
-RUN: llvm-pdbutil pretty -injected-sources -injected-source-content %t.pdb | FileCheck \
-RUN: --check-prefix=CHECK-FIRST %s
-RUN: llvm-pdbutil pretty -injected-sources -injected-source-content %t.pdb | FileCheck \
-RUN: --check-prefix=CHECK-SECOND %s
-RUN: llvm-pdbutil pretty -injected-sources -injected-source-content %t.pdb | FileCheck \
-RUN: --check-prefix=CHECK-THIRD %s
-
-RUN: lld-link /DEBUG %t.obj /nodefaultlib /entry:main /NATVIS:%p/Inputs/test2.natvis \
-RUN: /OUT:%t.exe /PDB:%t.pdb 2>&1 | FileCheck --check-prefix=CHECK-MISSING %s
-
-CHECK-FIRST: {{.*}}natvis-1.natvis (16 bytes): obj=<null>, vname={{.*}}natvis-1.natvis, crc=355285096, compression=None
-CHECK-FIRST-NEXT: 1st Natvis Test
-
-CHECK-SECOND: {{.*}}natvis-2.natvis (19 bytes): obj=<null>, vname={{.*}}natvis-2.natvis, crc=4252640062, compression=None
-CHECK-SECOND-NEXT: Second Natvis Test
-
-CHECK-THIRD: {{.*}}natvis-3.natvis (18 bytes): obj=<null>, vname={{.*}}natvis-3.natvis, crc=2069719849, compression=None
-CHECK-THIRD-NEXT: Third Natvis Test
-
-CHECK-MISSING: Cannot open input file: {{.*}}test2.natvis
\ No newline at end of file
Modified: lld/trunk/test/lit.cfg.py
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/lit.cfg.py?rev=327903&r1=327902&r2=327903&view=diff
==============================================================================
--- lld/trunk/test/lit.cfg.py (original)
+++ lld/trunk/test/lit.cfg.py Mon Mar 19 13:41:59 2018
@@ -85,9 +85,6 @@ if (lit.util.which('cvtres', config.envi
if (config.llvm_libxml2_enabled == '1'):
config.available_features.add('libxml2')
-if config.have_dia_sdk:
- config.available_features.add("diasdk")
-
tar_executable = lit.util.which('tar', config.environment['PATH'])
if tar_executable:
tar_version = subprocess.Popen(
Modified: lld/trunk/test/lit.site.cfg.py.in
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/lit.site.cfg.py.in?rev=327903&r1=327902&r2=327903&view=diff
==============================================================================
--- lld/trunk/test/lit.site.cfg.py.in (original)
+++ lld/trunk/test/lit.site.cfg.py.in Mon Mar 19 13:41:59 2018
@@ -1,6 +1,5 @@
@LIT_SITE_CFG_IN_HEADER@
-config.have_dia_sdk = "@LLVM_ENABLE_DIA_SDK@"
config.llvm_src_root = "@LLVM_SOURCE_DIR@"
config.llvm_obj_root = "@LLVM_BINARY_DIR@"
config.llvm_tools_dir = "@LLVM_TOOLS_DIR@"
More information about the llvm-commits
mailing list