llvm-wrapper: adapt for LLVM 20 API changes
No functional changes intended. Adapts llvm-wrapper for the LLVM commits0f22d47a7a
andd6d8243dcd
.
This commit is contained in:
parent
4d7c095832
commit
b509b4226b
1 changed files with 11 additions and 0 deletions
|
@ -1607,8 +1607,13 @@ extern "C" void LLVMRustComputeLTOCacheKey(RustStringRef KeyOut,
|
||||||
const auto &ExportList = Data->ExportLists.lookup(ModId);
|
const auto &ExportList = Data->ExportLists.lookup(ModId);
|
||||||
const auto &ResolvedODR = Data->ResolvedODR.lookup(ModId);
|
const auto &ResolvedODR = Data->ResolvedODR.lookup(ModId);
|
||||||
const auto &DefinedGlobals = Data->ModuleToDefinedGVSummaries.lookup(ModId);
|
const auto &DefinedGlobals = Data->ModuleToDefinedGVSummaries.lookup(ModId);
|
||||||
|
#if LLVM_VERSION_GE(20, 0)
|
||||||
|
DenseSet<GlobalValue::GUID> CfiFunctionDefs;
|
||||||
|
DenseSet<GlobalValue::GUID> CfiFunctionDecls;
|
||||||
|
#else
|
||||||
std::set<GlobalValue::GUID> CfiFunctionDefs;
|
std::set<GlobalValue::GUID> CfiFunctionDefs;
|
||||||
std::set<GlobalValue::GUID> CfiFunctionDecls;
|
std::set<GlobalValue::GUID> CfiFunctionDecls;
|
||||||
|
#endif
|
||||||
|
|
||||||
// Based on the 'InProcessThinBackend' constructor in LLVM
|
// Based on the 'InProcessThinBackend' constructor in LLVM
|
||||||
for (auto &Name : Data->Index.cfiFunctionDefs())
|
for (auto &Name : Data->Index.cfiFunctionDefs())
|
||||||
|
@ -1618,9 +1623,15 @@ extern "C" void LLVMRustComputeLTOCacheKey(RustStringRef KeyOut,
|
||||||
CfiFunctionDecls.insert(
|
CfiFunctionDecls.insert(
|
||||||
GlobalValue::getGUID(GlobalValue::dropLLVMManglingEscape(Name)));
|
GlobalValue::getGUID(GlobalValue::dropLLVMManglingEscape(Name)));
|
||||||
|
|
||||||
|
#if LLVM_VERSION_GE(20, 0)
|
||||||
|
Key = llvm::computeLTOCacheKey(conf, Data->Index, ModId, ImportList,
|
||||||
|
ExportList, ResolvedODR, DefinedGlobals,
|
||||||
|
CfiFunctionDefs, CfiFunctionDecls);
|
||||||
|
#else
|
||||||
llvm::computeLTOCacheKey(Key, conf, Data->Index, ModId, ImportList,
|
llvm::computeLTOCacheKey(Key, conf, Data->Index, ModId, ImportList,
|
||||||
ExportList, ResolvedODR, DefinedGlobals,
|
ExportList, ResolvedODR, DefinedGlobals,
|
||||||
CfiFunctionDefs, CfiFunctionDecls);
|
CfiFunctionDefs, CfiFunctionDecls);
|
||||||
|
#endif
|
||||||
|
|
||||||
LLVMRustStringWriteImpl(KeyOut, Key.c_str(), Key.size());
|
LLVMRustStringWriteImpl(KeyOut, Key.c_str(), Key.size());
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue