search for: symbolmap

Displaying 10 results from an estimated 10 matches for "symbolmap".

2019 Sep 12
2
Questions after completed Kaleidoscope Chapter 1
...ot;? I understood, that the "Parent" will be the value from "ES.getMainJITDylib()" while "Names" will have the names that should be resolved. I saw an implementation for the Generator function that kinda looked like that: { orc::SymbolNameSet Added; orc::SymbolMap NewSymbols; for(auto &Name : Names) { Added.insert(Name); NewSymbols[Name] = //Something } Parent.define(absoluteSymbols(std::move(NewSymbols))); return Added; } I understood that "SymbolMap NewSymbols" will stor...
2020 Apr 13
4
LLVM 10 ORC2 issue with symbol resolution
..."); MainJD = ES->getJITDylibByName("<main>"); MainJD->addGenerator( cantFail(llvm::orc::DynamicLibrarySearchGenerator::GetForCurrentProcess( DL->getGlobalPrefix()))); auto &JD = *MainJD; llvm::orc::MangleAndInterner mangle(*ES, *this->DL); llvm::orc::SymbolMap Symbols; for (int i = 0; global_syms[i].name != nullptr; i++) { Symbols.insert({mangle(global_syms[i].name), llvm::JITEvaluatedSymbol(llvm::pointerToJITTargetAddress(global_syms[i].address), llvm::JITSymbolFlags(llvm::JITSymbolFlags::FlagNames::Absolute))}); } llvm::cantFail(JD.define(llvm::orc...
2019 Sep 12
2
Questions after completed Kaleidoscope Chapter 1
...ent” will be the value from > “ES.getMainJITDylib()” while “Names” will have the names that should be > resolved. I saw an implementation for the Generator function that kinda > looked like that: > > { > > > > orc::SymbolNameSet Added; > > > > orc::SymbolMap NewSymbols; > > > > > > > > for(auto &Name : Names) > > > > { > > > > Added.insert(Name); > > > > NewSymbols[Name] = //Something > > > > } > > > > > > > &gt...
2020 Apr 13
2
LLVM 10 ORC2 issue with symbol resolution
...ain>"); >> MainJD->addGenerator( >> cantFail(llvm::orc::DynamicLibrarySearchGenerator::GetForCurrentProcess( >> DL->getGlobalPrefix()))); >> auto &JD = *MainJD; >> llvm::orc::MangleAndInterner mangle(*ES, *this->DL); >> llvm::orc::SymbolMap Symbols; >> for (int i = 0; global_syms[i].name != nullptr; i++) { >> Symbols.insert({mangle(global_syms[i].name), >> >> llvm::JITEvaluatedSymbol(llvm::pointerToJITTargetAddress(global_syms[i].address), >> >> llvm::JITSymbolFlags(llvm::JITSymbolFlags::FlagNames...
2020 Apr 20
2
ORC JIT Weekly #12
...API to end up looking something like this: using ResourceKey = const class ResourceTracker*; class ResourceTracker { public: // Return the key for this tracker (just its address) ResourceKey getKey() { return this; } // Emit all not-yet-emitted symbols covered by this tracker. Expected<SymbolMap> emit(); // Remove all symbols covered by this tracker and // release resources. Error remove(); // Transfer tracking of all symbols / resources to the // containing JITDylib's tracker. void detach(); }; I'm hoping that usage will look like: LLJIT J = LLJITBuilder().creat...
2019 Aug 14
3
ORC v2 question
Hi Lang, On Tue, 13 Aug 2019 at 23:26, Lang Hames <lhames at gmail.com> wrote: >> I also get this message: >> JIT session error: Symbols not found: { raise_error } > > > Ahh -- I see the problem. The DynamicLibrarySearchGenerator is using the getAddressOfSymbol method, which (under the hood) is basically issuing an appropriate dlsym lookup, and that does not find
2020 Sep 23
2
ORC JIT - Can modules independently managed with one LLJIT instance? + problems with ExecutionSession.lookup
...at though: llvm::Error ReferenceManager::UndefinedReferenceResolver :: tryToGenerate(llvm::orc::LookupKind K, llvm::orc::JITDylib &JD, llvm::orc::JITDylibLookupFlags JDLookupFlags, const llvm::orc::SymbolLookupSet &LookupSet) { llvm::orc::SymbolNameVector notFound; llvm::orc::SymbolMap NewSymbols; for(const auto &name : LookupSet) { printf("Generate!\n"); const uintptr_t adr = UndefinedReferenceResolver::lookup((*name.first).data()); if(adr) { NewSymbols[name.first] = llvm:...
2020 Apr 13
2
LLVM 10 ORC2 issue with symbol resolution
...t; > >> > cantFail(llvm::orc::DynamicLibrarySearchGenerator::GetForCurrentProcess( > > >> DL->getGlobalPrefix()))); > > >> auto &JD = *MainJD; > > >> llvm::orc::MangleAndInterner mangle(*ES, *this->DL); > > >> llvm::orc::SymbolMap Symbols; > > >> for (int i = 0; global_syms[i].name != nullptr; i++) { > > >> Symbols.insert({mangle(global_syms[i].name), > > >> > > >> > llvm::JITEvaluatedSymbol(llvm::pointerToJITTargetAddress(global_syms[i].address), > > >> > &...
2020 Sep 24
2
ORC JIT - Can modules independently managed with one LLJIT instance? + problems with ExecutionSession.lookup
...at though: llvm::Error ReferenceManager::UndefinedReferenceResolver :: tryToGenerate(llvm::orc::LookupKind K, llvm::orc::JITDylib &JD, llvm::orc::JITDylibLookupFlags JDLookupFlags, const llvm::orc::SymbolLookupSet &LookupSet) { llvm::orc::SymbolNameVector notFound; llvm::orc::SymbolMap NewSymbols; for(const auto &name : LookupSet) { printf("Generate!\n"); const uintptr_t adr = UndefinedReferenceResolver::lookup((*name.first).data()); if(adr) { NewSymbols[name.first] = llvm:...
2020 Mar 26
3
Rebuilding and re-checking of downstream dependencies on CRAN Mac build machines
I have two questions about the CRAN machines that build binary packages for Mac. When a new version of a package is released, (A) Do the downstream dependencies get re-checked? (B) Do the downstream dependencies get re-built? I have heard (but do not know for sure) that the answer to (A) is no, the downstream dependencies do not get rechecked. >From publicly available information on the