search for: symaddr

Displaying 13 results from an estimated 13 matches for "symaddr".

2018 Jun 28
3
Since MCJIT I can't get libm functions to work
...    if (auto Sym = CompileLayer.findSymbol(Name, false))                               return Sym;                             return llvm::JITSymbol(nullptr);                               },                               [](const std::string &Name) {                             if (auto SymAddr = llvm::RTDyldMemoryManager::getSymbolAddressInProcess(Name))                               return llvm::JITSymbol(SymAddr, llvm::JITSymbolFlags::Exported);                             return llvm::JITSymbol(nullptr);                               });       cantFail(CompileLayer.addModule(std...
2017 Sep 22
2
Question regarding GlobalMappingLayer in LLVM 5
...return Sym; return JITSymbol(nullptr); }, [](const std::string &Name) { if (auto SymAddr = RTDyldMemoryManager::getSymbolAddressInProcess(Name)) return JITSymbol(SymAddr, JITSymbolFlags::Exported); return JITSymbol(nullptr);...
2018 Jun 28
2
Since MCJIT I can't get libm functions to work
...ame, false)) >> return Sym; >> return llvm::JITSymbol(nullptr); >> }, >> [](const std::string &Name) { >> if (auto SymAddr = >> llvm::RTDyldMemoryManager::getSymbolAddressInProcess(Name)) >> return llvm::JITSymbol(SymAddr, llvm::JITSymbolFlags::Exported); >> return llvm::JITSymbol(nullptr); >> }); >>...
2017 Sep 28
0
Question regarding GlobalMappingLayer in LLVM 5
...m; > > return JITSymbol(nullptr); > > }, > > [](const std::string &Name) { > > if (auto SymAddr = > > RTDyldMemoryManager:: > getSymbolAddressInProcess(Name)) > > return > JITSymbol(SymAddr, JITSymbolFlags::Exported); > > re...
2017 May 07
2
[cfe-dev] JIT doens't resolve address - Resolve obj-Addresses?
...ullptr); > } > > Then, if it doesn't find a definition there, it falls back to searching in > the current process (this is what RTDyldMemoryManager::getSymbolAddressInProcess > does): > > [](const std::string &S) { > printf("PLUSH :0\n"); > if (auto SymAddr = > RTDyldMemoryManager::getSymbolAddressInProcess(S)) > return JITSymbol(SymAddr, JITSymbolFlags::Exported); > return JITSymbol(nullptr); > } > > If, for example, you wanted to redirect calls to printf to your own custom > version (while resolving all other exter...
2017 Feb 06
3
Kaleidoscope tutorial: comments, corrections and Windows support
...begining, as RTDyldMemoryManager uses > // GetProcAddress and standard libraries like msvcrt.dll use names > // with and without "_" (for example "_itoa" but "sin"). > if (Name.length() > 2 && Name[0] == '_') > if (auto SymAddr = RTDyldMemoryManager::getSymbolAddressInProcess( > Name.substr(1))) > return JITSymbol(SymAddr, JITSymbolFlags::Exported); > #endif > > return nullptr; > } - "ready> sin(1.0); Read top-level expression: define double @2() { entr...
2017 Nov 19
2
JIT and atexit crash
...ngine? Currently, I worked around this problem by resolving atexit to my custom function that does nothing. RuntimeDyld::SymbolInfo findSymbol(const std::string &Name) { if (Name == "_atexit") { return findSymbol("mull_custom_test_at_exit"); } if (auto SymAddr = RTDyldMemoryManager::getSymbolAddressInProcess(Name)) return RuntimeDyld::SymbolInfo(SymAddr, JITSymbolFlags::Exported); return RuntimeDyld::SymbolInfo(nullptr); } extern "C" int mull_custom_test_at_exit(void (* p)(void)) { return atexit(p); } The solution removes...
2017 Apr 09
2
Possible stack corruption during call to JITSymbol::getAddress()
...[&](const std::string &Name) { if (auto Sym = CompileLayer.findSymbol(Name, false)) return Sym; return JITSymbol(nullptr); }, [](const std::string &Name) { if (auto SymAddr = RTDyldMemoryManager::getSymbolAddressInProcess(Name)) return JITSymbol(SymAddr, JITSymbolFlags::Exported); return JITSymbol(nullptr); }); // Build a singleton module set to hold our module. std::vector<std::unique_pt...
2017 Apr 17
2
Possible stack corruption during call to JITSymbol::getAddress()
...if (auto Sym = CompileLayer.findSymbol(Name, false)) >> return Sym; >> return JITSymbol(nullptr); >> }, >> [](const std::string &Name) { >> if (auto SymAddr = >> RTDyldMemoryManager::getSymbol >> AddressInProcess(Name)) >> return JITSymbol(SymAddr, >> JITSymbolFlags::Exported); >> return JITSymbol(nullptr); >> }); >> >&gt...
2017 Apr 20
2
Possible stack corruption during call to JITSymbol::getAddress()
...ileLayer.findSymbol(Name, false)) >>>> return Sym; >>>> return JITSymbol(nullptr); >>>> }, >>>> [](const std::string &Name) { >>>> if (auto SymAddr = >>>> RTDyldMemoryManager::getSymbol >>>> AddressInProcess(Name)) >>>> return JITSymbol(SymAddr, >>>> JITSymbolFlags::Exported); >>>> return JITSymbol(nullptr); >&...
2017 May 01
1
Possible stack corruption during call to JITSymbol::getAddress()
...t;>>>> return Sym; >>>>>> return JITSymbol(nullptr); >>>>>> }, >>>>>> [](const std::string &Name) { >>>>>> if (auto SymAddr = >>>>>> RTDyldMemoryManager::getSymbol >>>>>> AddressInProcess(Name)) >>>>>> return JITSymbol(SymAddr, >>>>>> JITSymbolFlags::Exported); >>>>>>...
2017 Aug 06
2
Compile issues with LLVM ORC JIT
...rt of// the same "logical dylib".// Lambda 2: Search for external symbols in the host process.autoResolver=createLambdaResolver([&](conststd::string &Name){if(autoSym=CompileLayer.findSymbol(Name,false))returnSym;returnJITSymbol(nullptr);},[](conststd::string &Name){if(autoSymAddr=RTDyldMemoryManager::getSymbolAddressInProcess(Name))returnJITSymbol(SymAddr,JITSymbolFlags::Exported);returnJITSymbol(nullptr);});// Add the set to the JIT with the resolver we created above and a newly// created SectionMemoryManager.returncantFail(CompileLayer.addModule(std::move(M),std::move(...
2013 Sep 25
1
[LLVMdev] arm64 / iOS support
...), + GlobalRef); + } else + + if (GN->getOffset() != 0) + return DAG.getNode(ISD::ADD, dl, PtrVT, GlobalRef, + DAG.getConstant(GN->getOffset(), PtrVT)); + + return GlobalRef; +} + + SDValue AArch64TargetLowering::LowerTLSDescCall(SDValue SymAddr, SDValue DescAddr, SDLoc DL, @@ -2677,7 +2761,8 @@ AArch64TargetLowering::LowerOperation(SDValue Op, SelectionDAG &DAG) const { case ISD::BlockAddress: return LowerBlockAddress(Op, DAG); case...