mirror of
https://github.com/capstone-engine/llvm-capstone.git
synced 2024-12-01 01:31:26 +00:00
bf55c4e3e3
We introduce a new class hierarchy for debug types merging (in DebugTypes.h). The end-goal is to parallelize the type merging - please see the plan in D59226. Previously, dependency discovery was done on the fly, much later, during the type merging loop. Unfortunately, parallelizing the type merging requires the dependencies to be merged in first, before any dependent ObjFile, thus this early discovery. The overall intention for this path is to discover debug information dependencies at a much earlier stage, when processing input files. Currently, two types of dependency are supported: PDB type servers (when compiling with MSVC /Zi) and precompiled headers OBJs (when compiling with MSVC /Yc and /Yu). Once discovered, an explicit link is added into the dependent ObjFile, through the new debug types class hierarchy introduced in DebugTypes.h. Differential Revision: https://reviews.llvm.org/D59053 llvm-svn: 357383
49 lines
729 B
CMake
49 lines
729 B
CMake
set(LLVM_TARGET_DEFINITIONS Options.td)
|
|
tablegen(LLVM Options.inc -gen-opt-parser-defs)
|
|
add_public_tablegen_target(COFFOptionsTableGen)
|
|
|
|
if(NOT LLD_BUILT_STANDALONE)
|
|
set(tablegen_deps intrinsics_gen)
|
|
endif()
|
|
|
|
add_lld_library(lldCOFF
|
|
Chunks.cpp
|
|
DebugTypes.cpp
|
|
DLL.cpp
|
|
Driver.cpp
|
|
DriverUtils.cpp
|
|
ICF.cpp
|
|
InputFiles.cpp
|
|
LTO.cpp
|
|
MapFile.cpp
|
|
MarkLive.cpp
|
|
MinGW.cpp
|
|
PDB.cpp
|
|
SymbolTable.cpp
|
|
Symbols.cpp
|
|
Writer.cpp
|
|
|
|
LINK_COMPONENTS
|
|
${LLVM_TARGETS_TO_BUILD}
|
|
BinaryFormat
|
|
Core
|
|
DebugInfoCodeView
|
|
DebugInfoMSF
|
|
DebugInfoPDB
|
|
LibDriver
|
|
LTO
|
|
MC
|
|
Object
|
|
Option
|
|
Support
|
|
WindowsManifest
|
|
|
|
LINK_LIBS
|
|
lldCommon
|
|
${LLVM_PTHREAD_LIB}
|
|
|
|
DEPENDS
|
|
COFFOptionsTableGen
|
|
${tablegen_deps}
|
|
)
|