mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2025-04-02 07:41:38 +00:00
[CodeView] More appropriate name and type for a Microsoft precompiled headers parameter. NFC
llvm-svn: 350520
This commit is contained in:
parent
8ce48187ca
commit
433131868b
@ -84,20 +84,20 @@ Error mergeTypeAndIdRecords(MergingTypeTableBuilder &DestIds,
|
|||||||
MergingTypeTableBuilder &DestTypes,
|
MergingTypeTableBuilder &DestTypes,
|
||||||
SmallVectorImpl<TypeIndex> &SourceToDest,
|
SmallVectorImpl<TypeIndex> &SourceToDest,
|
||||||
const CVTypeArray &IdsAndTypes,
|
const CVTypeArray &IdsAndTypes,
|
||||||
Optional<EndPrecompRecord> &EndPrecomp);
|
Optional<uint32_t> &PCHSignature);
|
||||||
|
|
||||||
Error mergeTypeAndIdRecords(GlobalTypeTableBuilder &DestIds,
|
Error mergeTypeAndIdRecords(GlobalTypeTableBuilder &DestIds,
|
||||||
GlobalTypeTableBuilder &DestTypes,
|
GlobalTypeTableBuilder &DestTypes,
|
||||||
SmallVectorImpl<TypeIndex> &SourceToDest,
|
SmallVectorImpl<TypeIndex> &SourceToDest,
|
||||||
const CVTypeArray &IdsAndTypes,
|
const CVTypeArray &IdsAndTypes,
|
||||||
ArrayRef<GloballyHashedType> Hashes,
|
ArrayRef<GloballyHashedType> Hashes,
|
||||||
Optional<EndPrecompRecord> &EndPrecomp);
|
Optional<uint32_t> &PCHSignature);
|
||||||
|
|
||||||
Error mergeTypeRecords(GlobalTypeTableBuilder &Dest,
|
Error mergeTypeRecords(GlobalTypeTableBuilder &Dest,
|
||||||
SmallVectorImpl<TypeIndex> &SourceToDest,
|
SmallVectorImpl<TypeIndex> &SourceToDest,
|
||||||
const CVTypeArray &Types,
|
const CVTypeArray &Types,
|
||||||
ArrayRef<GloballyHashedType> Hashes,
|
ArrayRef<GloballyHashedType> Hashes,
|
||||||
Optional<EndPrecompRecord> &EndPrecomp);
|
Optional<uint32_t> &PCHSignature);
|
||||||
|
|
||||||
Error mergeIdRecords(GlobalTypeTableBuilder &Dest, ArrayRef<TypeIndex> Types,
|
Error mergeIdRecords(GlobalTypeTableBuilder &Dest, ArrayRef<TypeIndex> Types,
|
||||||
SmallVectorImpl<TypeIndex> &SourceToDest,
|
SmallVectorImpl<TypeIndex> &SourceToDest,
|
||||||
|
@ -77,8 +77,7 @@ public:
|
|||||||
// Local hashing entry points
|
// Local hashing entry points
|
||||||
Error mergeTypesAndIds(MergingTypeTableBuilder &DestIds,
|
Error mergeTypesAndIds(MergingTypeTableBuilder &DestIds,
|
||||||
MergingTypeTableBuilder &DestTypes,
|
MergingTypeTableBuilder &DestTypes,
|
||||||
const CVTypeArray &IdsAndTypes,
|
const CVTypeArray &IdsAndTypes, Optional<uint32_t> &S);
|
||||||
Optional<EndPrecompRecord> &EP);
|
|
||||||
Error mergeIdRecords(MergingTypeTableBuilder &Dest,
|
Error mergeIdRecords(MergingTypeTableBuilder &Dest,
|
||||||
ArrayRef<TypeIndex> TypeSourceToDest,
|
ArrayRef<TypeIndex> TypeSourceToDest,
|
||||||
const CVTypeArray &Ids);
|
const CVTypeArray &Ids);
|
||||||
@ -90,14 +89,14 @@ public:
|
|||||||
GlobalTypeTableBuilder &DestTypes,
|
GlobalTypeTableBuilder &DestTypes,
|
||||||
const CVTypeArray &IdsAndTypes,
|
const CVTypeArray &IdsAndTypes,
|
||||||
ArrayRef<GloballyHashedType> Hashes,
|
ArrayRef<GloballyHashedType> Hashes,
|
||||||
Optional<EndPrecompRecord> &EP);
|
Optional<uint32_t> &S);
|
||||||
Error mergeIdRecords(GlobalTypeTableBuilder &Dest,
|
Error mergeIdRecords(GlobalTypeTableBuilder &Dest,
|
||||||
ArrayRef<TypeIndex> TypeSourceToDest,
|
ArrayRef<TypeIndex> TypeSourceToDest,
|
||||||
const CVTypeArray &Ids,
|
const CVTypeArray &Ids,
|
||||||
ArrayRef<GloballyHashedType> Hashes);
|
ArrayRef<GloballyHashedType> Hashes);
|
||||||
Error mergeTypeRecords(GlobalTypeTableBuilder &Dest, const CVTypeArray &Types,
|
Error mergeTypeRecords(GlobalTypeTableBuilder &Dest, const CVTypeArray &Types,
|
||||||
ArrayRef<GloballyHashedType> Hashes,
|
ArrayRef<GloballyHashedType> Hashes,
|
||||||
Optional<EndPrecompRecord> &EP);
|
Optional<uint32_t> &S);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
Error doit(const CVTypeArray &Types);
|
Error doit(const CVTypeArray &Types);
|
||||||
@ -197,7 +196,7 @@ private:
|
|||||||
/// its type indices.
|
/// its type indices.
|
||||||
SmallVector<uint8_t, 256> RemapStorage;
|
SmallVector<uint8_t, 256> RemapStorage;
|
||||||
|
|
||||||
Optional<EndPrecompRecord> EndPrecomp;
|
Optional<uint32_t> PCHSignature;
|
||||||
};
|
};
|
||||||
|
|
||||||
} // end anonymous namespace
|
} // end anonymous namespace
|
||||||
@ -275,12 +274,12 @@ Error TypeStreamMerger::mergeIdRecords(MergingTypeTableBuilder &Dest,
|
|||||||
Error TypeStreamMerger::mergeTypesAndIds(MergingTypeTableBuilder &DestIds,
|
Error TypeStreamMerger::mergeTypesAndIds(MergingTypeTableBuilder &DestIds,
|
||||||
MergingTypeTableBuilder &DestTypes,
|
MergingTypeTableBuilder &DestTypes,
|
||||||
const CVTypeArray &IdsAndTypes,
|
const CVTypeArray &IdsAndTypes,
|
||||||
Optional<EndPrecompRecord> &EP) {
|
Optional<uint32_t> &S) {
|
||||||
DestIdStream = &DestIds;
|
DestIdStream = &DestIds;
|
||||||
DestTypeStream = &DestTypes;
|
DestTypeStream = &DestTypes;
|
||||||
UseGlobalHashes = false;
|
UseGlobalHashes = false;
|
||||||
auto Err = doit(IdsAndTypes);
|
auto Err = doit(IdsAndTypes);
|
||||||
EP = EndPrecomp;
|
S = PCHSignature;
|
||||||
return Err;
|
return Err;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -288,12 +287,12 @@ Error TypeStreamMerger::mergeTypesAndIds(MergingTypeTableBuilder &DestIds,
|
|||||||
Error TypeStreamMerger::mergeTypeRecords(GlobalTypeTableBuilder &Dest,
|
Error TypeStreamMerger::mergeTypeRecords(GlobalTypeTableBuilder &Dest,
|
||||||
const CVTypeArray &Types,
|
const CVTypeArray &Types,
|
||||||
ArrayRef<GloballyHashedType> Hashes,
|
ArrayRef<GloballyHashedType> Hashes,
|
||||||
Optional<EndPrecompRecord> &EP) {
|
Optional<uint32_t> &S) {
|
||||||
DestGlobalTypeStream = &Dest;
|
DestGlobalTypeStream = &Dest;
|
||||||
UseGlobalHashes = true;
|
UseGlobalHashes = true;
|
||||||
GlobalHashes = Hashes;
|
GlobalHashes = Hashes;
|
||||||
auto Err = doit(Types);
|
auto Err = doit(Types);
|
||||||
EP = EndPrecomp;
|
S = PCHSignature;
|
||||||
return Err;
|
return Err;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -313,13 +312,13 @@ Error TypeStreamMerger::mergeTypesAndIds(GlobalTypeTableBuilder &DestIds,
|
|||||||
GlobalTypeTableBuilder &DestTypes,
|
GlobalTypeTableBuilder &DestTypes,
|
||||||
const CVTypeArray &IdsAndTypes,
|
const CVTypeArray &IdsAndTypes,
|
||||||
ArrayRef<GloballyHashedType> Hashes,
|
ArrayRef<GloballyHashedType> Hashes,
|
||||||
Optional<EndPrecompRecord> &EP) {
|
Optional<uint32_t> &S) {
|
||||||
DestGlobalIdStream = &DestIds;
|
DestGlobalIdStream = &DestIds;
|
||||||
DestGlobalTypeStream = &DestTypes;
|
DestGlobalTypeStream = &DestTypes;
|
||||||
UseGlobalHashes = true;
|
UseGlobalHashes = true;
|
||||||
GlobalHashes = Hashes;
|
GlobalHashes = Hashes;
|
||||||
auto Err = doit(IdsAndTypes);
|
auto Err = doit(IdsAndTypes);
|
||||||
EP = EndPrecomp;
|
S = PCHSignature;
|
||||||
return Err;
|
return Err;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -445,28 +444,27 @@ Error llvm::codeview::mergeIdRecords(MergingTypeTableBuilder &Dest,
|
|||||||
Error llvm::codeview::mergeTypeAndIdRecords(
|
Error llvm::codeview::mergeTypeAndIdRecords(
|
||||||
MergingTypeTableBuilder &DestIds, MergingTypeTableBuilder &DestTypes,
|
MergingTypeTableBuilder &DestIds, MergingTypeTableBuilder &DestTypes,
|
||||||
SmallVectorImpl<TypeIndex> &SourceToDest, const CVTypeArray &IdsAndTypes,
|
SmallVectorImpl<TypeIndex> &SourceToDest, const CVTypeArray &IdsAndTypes,
|
||||||
Optional<EndPrecompRecord> &EndPrecomp) {
|
Optional<uint32_t> &PCHSignature) {
|
||||||
TypeStreamMerger M(SourceToDest);
|
TypeStreamMerger M(SourceToDest);
|
||||||
return M.mergeTypesAndIds(DestIds, DestTypes, IdsAndTypes, EndPrecomp);
|
return M.mergeTypesAndIds(DestIds, DestTypes, IdsAndTypes, PCHSignature);
|
||||||
}
|
}
|
||||||
|
|
||||||
Error llvm::codeview::mergeTypeAndIdRecords(
|
Error llvm::codeview::mergeTypeAndIdRecords(
|
||||||
GlobalTypeTableBuilder &DestIds, GlobalTypeTableBuilder &DestTypes,
|
GlobalTypeTableBuilder &DestIds, GlobalTypeTableBuilder &DestTypes,
|
||||||
SmallVectorImpl<TypeIndex> &SourceToDest, const CVTypeArray &IdsAndTypes,
|
SmallVectorImpl<TypeIndex> &SourceToDest, const CVTypeArray &IdsAndTypes,
|
||||||
ArrayRef<GloballyHashedType> Hashes,
|
ArrayRef<GloballyHashedType> Hashes, Optional<uint32_t> &PCHSignature) {
|
||||||
Optional<EndPrecompRecord> &EndPrecomp) {
|
|
||||||
TypeStreamMerger M(SourceToDest);
|
TypeStreamMerger M(SourceToDest);
|
||||||
return M.mergeTypesAndIds(DestIds, DestTypes, IdsAndTypes, Hashes,
|
return M.mergeTypesAndIds(DestIds, DestTypes, IdsAndTypes, Hashes,
|
||||||
EndPrecomp);
|
PCHSignature);
|
||||||
}
|
}
|
||||||
|
|
||||||
Error llvm::codeview::mergeTypeRecords(GlobalTypeTableBuilder &Dest,
|
Error llvm::codeview::mergeTypeRecords(GlobalTypeTableBuilder &Dest,
|
||||||
SmallVectorImpl<TypeIndex> &SourceToDest,
|
SmallVectorImpl<TypeIndex> &SourceToDest,
|
||||||
const CVTypeArray &Types,
|
const CVTypeArray &Types,
|
||||||
ArrayRef<GloballyHashedType> Hashes,
|
ArrayRef<GloballyHashedType> Hashes,
|
||||||
Optional<EndPrecompRecord> &EndPrecomp) {
|
Optional<uint32_t> &PCHSignature) {
|
||||||
TypeStreamMerger M(SourceToDest);
|
TypeStreamMerger M(SourceToDest);
|
||||||
return M.mergeTypeRecords(Dest, Types, Hashes, EndPrecomp);
|
return M.mergeTypeRecords(Dest, Types, Hashes, PCHSignature);
|
||||||
}
|
}
|
||||||
|
|
||||||
Error llvm::codeview::mergeIdRecords(GlobalTypeTableBuilder &Dest,
|
Error llvm::codeview::mergeIdRecords(GlobalTypeTableBuilder &Dest,
|
||||||
@ -483,11 +481,13 @@ Expected<bool> TypeStreamMerger::shouldRemapType(const CVType &Type) {
|
|||||||
// signature, through EndPrecompRecord. This is done here for performance
|
// signature, through EndPrecompRecord. This is done here for performance
|
||||||
// reasons, to avoid re-parsing the Types stream.
|
// reasons, to avoid re-parsing the Types stream.
|
||||||
if (Type.kind() == LF_ENDPRECOMP) {
|
if (Type.kind() == LF_ENDPRECOMP) {
|
||||||
assert(!EndPrecomp);
|
EndPrecompRecord EP;
|
||||||
EndPrecomp.emplace();
|
|
||||||
if (auto EC = TypeDeserializer::deserializeAs(const_cast<CVType &>(Type),
|
if (auto EC = TypeDeserializer::deserializeAs(const_cast<CVType &>(Type),
|
||||||
EndPrecomp.getValue()))
|
EP))
|
||||||
return joinErrors(std::move(EC), errorCorruptRecord());
|
return joinErrors(std::move(EC), errorCorruptRecord());
|
||||||
|
if (PCHSignature.hasValue())
|
||||||
|
return errorCorruptRecord();
|
||||||
|
PCHSignature.emplace(EP.getSignature());
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
|
@ -1248,9 +1248,9 @@ void COFFDumper::mergeCodeViewTypes(MergingTypeTableBuilder &CVIDs,
|
|||||||
error(object_error::parse_failed);
|
error(object_error::parse_failed);
|
||||||
}
|
}
|
||||||
SmallVector<TypeIndex, 128> SourceToDest;
|
SmallVector<TypeIndex, 128> SourceToDest;
|
||||||
Optional<EndPrecompRecord> EndPrecomp;
|
Optional<uint32_t> PCHSignature;
|
||||||
if (auto EC = mergeTypeAndIdRecords(CVIDs, CVTypes, SourceToDest, Types,
|
if (auto EC = mergeTypeAndIdRecords(CVIDs, CVTypes, SourceToDest, Types,
|
||||||
EndPrecomp))
|
PCHSignature))
|
||||||
return error(std::move(EC));
|
return error(std::move(EC));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user