mirror of
https://github.com/capstone-engine/llvm-capstone.git
synced 2025-01-09 09:32:20 +00:00
[COFF] Avoid CodeView include in header
Most LLD/COFF files don't care about CodeView. Avoid using CodeView types in InputFiles.h.
This commit is contained in:
parent
adfad4d7c8
commit
de3fb1ec05
@ -767,7 +767,8 @@ void ObjFile::initializeDependencies() {
|
||||
if (firstType == types.end())
|
||||
return;
|
||||
|
||||
debugTypes.emplace(types);
|
||||
// Remember the .debug$T or .debug$P section.
|
||||
debugTypes = data;
|
||||
|
||||
if (isPCH) {
|
||||
debugTypesObj = makePrecompSource(this);
|
||||
|
@ -15,7 +15,6 @@
|
||||
#include "llvm/ADT/DenseMap.h"
|
||||
#include "llvm/ADT/DenseSet.h"
|
||||
#include "llvm/BinaryFormat/Magic.h"
|
||||
#include "llvm/DebugInfo/CodeView/TypeRecord.h"
|
||||
#include "llvm/Object/Archive.h"
|
||||
#include "llvm/Object/COFF.h"
|
||||
#include "llvm/Support/StringSaver.h"
|
||||
@ -204,8 +203,8 @@ public:
|
||||
// If the OBJ has a .debug$T stream, this tells how it will be handled.
|
||||
TpiSource *debugTypesObj = nullptr;
|
||||
|
||||
// The .debug$T stream if there's one.
|
||||
llvm::Optional<llvm::codeview::CVTypeArray> debugTypes;
|
||||
// The .debug$P or .debug$T section data if present. Empty otherwise.
|
||||
ArrayRef<uint8_t> debugTypes;
|
||||
|
||||
llvm::Optional<std::pair<StringRef, uint32_t>>
|
||||
getVariableLocation(StringRef var);
|
||||
|
@ -369,8 +369,10 @@ PDBLinker::mergeDebugT(ObjFile *file, CVIndexMap *objectIndexMap) {
|
||||
// don't merge any type information.
|
||||
return maybeMergeTypeServerPDB(file);
|
||||
}
|
||||
|
||||
CVTypeArray &types = *file->debugTypes;
|
||||
|
||||
CVTypeArray types;
|
||||
BinaryStreamReader reader(file->debugTypes, support::little);
|
||||
cantFail(reader.readArray(types, reader.getLength()));
|
||||
|
||||
if (file->debugTypesObj->kind == TpiSource::UsingPCH) {
|
||||
// This object was compiled with /Yu, so process the corresponding
|
||||
|
Loading…
Reference in New Issue
Block a user