Simplify mangling by using mangleAndIntern

This commit is contained in:
Devajith Valaparambil Sreeramaswamy 2024-06-21 16:39:47 +02:00 committed by jenkins
parent 48788e4034
commit 900be1d0e8

View File

@ -648,21 +648,11 @@ IncrementalJIT::addOrReplaceDefinition(StringRef Name,
if (Symbol && (JITTargetAddress)Symbol == KnownAddr)
return KnownAddr;
llvm::SmallString<128> LinkerMangledName;
char LinkerPrefix = this->m_TM->createDataLayout().getGlobalPrefix();
bool HasLinkerPrefix = LinkerPrefix != '\0';
if (HasLinkerPrefix && Name.front() == LinkerPrefix) {
LinkerMangledName.assign(1, LinkerPrefix);
LinkerMangledName.append(Name);
} else {
LinkerMangledName.assign(Name);
}
// Let's inject it
bool Inserted;
SymbolMap::iterator It;
std::tie(It, Inserted) = m_InjectedSymbols.try_emplace(
Jit->getExecutionSession().intern(LinkerMangledName),
Jit->mangleAndIntern(Name),
JITEvaluatedSymbol(KnownAddr, JITSymbolFlags::Exported));
assert(Inserted && "Why wasn't this found in the initial Jit lookup?");