[llvm-dev] Assertion triggered when running simple hello-world code on iOS device using ORC/LLLazyJIT (original) (raw)

Igor Gomon via llvm-dev llvm-dev at lists.llvm.org
Sat May 23 11:22:34 PDT 2020


Hello,

I am trying to run this basic C++ hello-world code in my iOS app that has LLVM libraries linked in (the app runs on the actual device - iPad Pro, iOS 13.4.1).

#include int main (int argh, char *argv[]) { std::cout << "Hello World!" << std::endl; return 0; }

So below is the break down of the steps that I do: First I compile this code to an instance of llvm::Module by using the logic borrowed from the lli tool. Once I have the Module instance I construct an instance of orc::LLLazyJIT (J), configure it (again closely following the logic in lli tool) to which I then add the module like this:

// Add the main module.

ExitOnErr(J->addLazyIRModule(orc::ThreadSafeModule(std::move(MainModule), TSCtx)));

Finally the module is executed like this:

// Run main.

auto MainSym = ExitOnErr(J->lookup("main"));


typedef int (*MainFnPtr)(int, char *[]);

auto Result = orc::runAsMain(

jitTargetAddressToFunction(MainSym.getAddress()), Args,

StringRef("lli"));

The Xcode halts the execution when an assertion is triggered in llvm::jitlink::Symbol::constructNamedDef (the full call stack is below).

The line that triggers the assertion is this:

assert(Offset < Base.getSize() && "Symbol offset is outside block");

because both Offset and Base.getSize() evaluate to 0).

The data referred to by the Base block is "Hello World!".

I don't understand why this assertion happens. Should the Base block size be > 0 ?

I am relatively new to LLVM, I did read the documentation on OCR Design and Implementation - but still can't figure out what's going on.

If there is any additional documentation I can read on running code using ORC/JIT APIs that would shed more light on the internals/implementation?

Any help would be greatly appreciated.

Thank you.

--

Best,

Igor

#4 0x0000000106696d70 in llvm::jitlink::Symbol::constructNamedDef(void*, llvm::jitlink::Block&, unsigned long long, llvm::StringRef, unsigned long long, llvm::jitlink::Linkage, llvm::jitlink::Scope, bool, bool) at /Users/igorgomon/dev/third-party/llvm-project/llvm/include/llvm/ExecutionEngine/JITLink/JITLink.h:366

#5 0x0000000106691e8c in llvm::jitlink::LinkGraph::addDefinedSymbol(llvm::jitlink::Block&, unsigned long long, llvm::StringRef, unsigned long long, llvm::jitlink::Linkage, llvm::jitlink::Scope, bool, bool) at /Users/igorgomon/dev/third-party/llvm-project/llvm/include/llvm/ExecutionEngine/JITLink/JITLink.h:897

#6 0x000000010668f654 in llvm::jitlink::MachOLinkGraphBuilder::graphifyRegularSymbols() at /Users/igorgomon/dev/third-party/llvm-project/llvm/lib/ExecutionEngine/JITLink/MachOLinkGraphBuilder.cpp:502

#7 0x000000010668d16c in llvm::jitlink::MachOLinkGraphBuilder::buildGraph() at /Users/igorgomon/dev/third-party/llvm-project/llvm/lib/ExecutionEngine/JITLink/MachOLinkGraphBuilder.cpp:36

#8 0x000000010666cd08 in llvm::jitlink::MachOJITLinker_arm64::buildGraph(llvm::MemoryBufferRef) at /Users/igorgomon/dev/third-party/llvm-project/llvm/lib/ExecutionEngine/JITLink/MachO_arm64.cpp:493

#9 0x00000001066236bc in llvm::jitlink::JITLinkerBase::linkPhase1(std::__1::unique_ptr<llvm::jitlink::JITLinkerBase, std::__1::default_deletellvm::jitlink::JITLinkerBase >) at /Users/igorgomon/dev/third-party/llvm-project/llvm/lib/ExecutionEngine/JITLink/JITLinkGeneric.cpp:28

#10 0x000000010665fc10 in void llvm::jitlink::JITLinkerllvm::jitlink::MachOJITLinker_arm64::link<std::__1::unique_ptr<llvm::jitlink::JITLinkContext, std::__1::default_deletellvm::jitlink::JITLinkContext >, llvm::jitlink::PassConfiguration>(std::__1::unique_ptr<llvm::jitlink::JITLinkContext, std::__1::default_deletellvm::jitlink::JITLinkContext >&&, llvm::jitlink::PassConfiguration&&) at /Users/igorgomon/dev/third-party/llvm-project/llvm/lib/ExecutionEngine/JITLink/JITLinkGeneric.h:139

#11 0x000000010665f93c in llvm::jitlink::jitLink_MachO_arm64(std::__1::unique_ptr<llvm::jitlink::JITLinkContext, std::__1::default_deletellvm::jitlink::JITLinkContext >) at /Users/igorgomon/dev/third-party/llvm-project/llvm/lib/ExecutionEngine/JITLink/MachO_arm64.cpp:685

#12 0x000000010665e604 in llvm::jitlink::jitLink_MachO(std::__1::unique_ptr<llvm::jitlink::JITLinkContext, std::__1::default_deletellvm::jitlink::JITLinkContext >) at /Users/igorgomon/dev/third-party/llvm-project/llvm/lib/ExecutionEngine/JITLink/MachO.cpp:69

#13 0x0000000106616f58 in llvm::jitlink::jitLink(std::__1::unique_ptr<llvm::jitlink::JITLinkContext, std::__1::default_deletellvm::jitlink::JITLinkContext >) at /Users/igorgomon/dev/third-party/llvm-project/llvm/lib/ExecutionEngine/JITLink/JITLink.cpp:306

#14 0x00000001063db144 in llvm::orc::ObjectLinkingLayer::emit(llvm::orc::MaterializationResponsibility, std::__1::unique_ptr<llvm::MemoryBuffer, std::__1::default_deletellvm::MemoryBuffer >) at /Users/igorgomon/dev/third-party/llvm-project/llvm/lib/ExecutionEngine/Orc/ObjectLinkingLayer.cpp:343

#15 0x00000001064044f4 in llvm::orc::ObjectTransformLayer::emit(llvm::orc::MaterializationResponsibility, std::__1::unique_ptr<llvm::MemoryBuffer, std::__1::default_deletellvm::MemoryBuffer >) at /Users/igorgomon/dev/third-party/llvm-project/llvm/lib/ExecutionEngine/Orc/ObjectTransformLayer.cpp:35

#16 0x000000010638e9c8 in llvm::orc::IRCompileLayer::emit(llvm::orc::MaterializationResponsibility, llvm::orc::ThreadSafeModule) at /Users/igorgomon/dev/third-party/llvm-project/llvm/lib/ExecutionEngine/Orc/IRCompileLayer.cpp:35

#17 0x000000010638ff64 in llvm::orc::IRTransformLayer::emit(llvm::orc::MaterializationResponsibility, llvm::orc::ThreadSafeModule) at /Users/igorgomon/dev/third-party/llvm-project/llvm/lib/ExecutionEngine/Orc/IRTransformLayer.cpp:25

#18 0x00000001062b2b5c in llvm::orc::CompileOnDemandLayer::emitPartition(llvm::orc::MaterializationResponsibility, llvm::orc::ThreadSafeModule, std::__1::map<llvm::orc::SymbolStringPtr, llvm::GlobalValue*, std::__1::lessllvm::orc::SymbolStringPtr, std::__1::allocator<std::__1::pair<llvm::orc::SymbolStringPtr const, llvm::GlobalValue*> > >) at /Users/igorgomon/dev/third-party/llvm-project/llvm/lib/ExecutionEngine/Orc/CompileOnDemandLayer.cpp:320

#19 0x00000001062b8470 in llvm::orc::PartitioningIRMaterializationUnit::materialize(llvm::orc::MaterializationResponsibility) at /Users/igorgomon/dev/third-party/llvm-project/llvm/lib/ExecutionEngine/Orc/CompileOnDemandLayer.cpp:86

#20 0x00000001062e2844 in llvm::orc::MaterializationUnit::doMaterialize(llvm::orc::JITDylib&) at /Users/igorgomon/dev/third-party/llvm-project/llvm/include/llvm/ExecutionEngine/Orc/Core.h:563

#21 0x00000001062db744 in llvm::orc::ExecutionSession::materializeOnCurrentThread(llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit >) at /Users/igorgomon/dev/third-party/llvm-project/llvm/include/llvm/ExecutionEngine/Orc/Core.h:1212

#22 0x00000001062eaf98 in decltype(std::__1::forward<void (*&)(llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit

_)>(fp)(std::1::forwardllvm::orc::JITDylib&(fp0), std::__1::forward<std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit > >(fp0))) std::__1::__invoke<void (&)(llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit >), llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit > >(void (&)(llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit >), llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit >&&) at /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/type_traits:4425

#23 0x00000001062eaef8 in void std::__1::__invoke_void_return_wrapper::__call<void (&)(llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit >), llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit > >(void (&)(llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit >), llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit >&&) at /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/__functional_base:348

#24 0x00000001062eae94 in std::__1::__function::__alloc_func<void (*)(llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit >), std::__1::allocator<void (*)(llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit >)>, void (llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit

)>::operator()(llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit >&&) at /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/functional:1533

#25 0x00000001062e980c in std::__1::__function::__func<void (*)(llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit >), std::__1::allocator<void (*)(llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit >)>, void (llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit

)>::operator()(llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit >&&) at /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/functional:1707

#26 0x00000001062e2314 in std::__1::__function::__value_func<void (llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit

)>::operator()(llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit >&&) const at /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/functional:1860

#27 0x00000001062e2198 in std::__1::function<void (llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit

)>::operator()(llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit >) const at /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/functional:2419

#28 0x00000001062d76b4 in llvm::orc::ExecutionSession::dispatchMaterialization(llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit >) at /Users/igorgomon/dev/third-party/llvm-project/llvm/include/llvm/ExecutionEngine/Orc/Core.h:1198

#29 0x00000001062d955c in llvm::orc::ExecutionSession::runOutstandingMUs() at /Users/igorgomon/dev/third-party/llvm-project/llvm/lib/ExecutionEngine/Orc/Core.cpp:2161

#30 0x00000001062d623c in llvm::orc::ExecutionSession::lookup(llvm::orc::LookupKind, std::__1::vector<std::__1::pair<llvm::orc::JITDylib*, llvm::orc::JITDylibLookupFlags>, std::__1::allocator<std::__1::pair<llvm::orc::JITDylib*, llvm::orc::JITDylibLookupFlags> > > const&, llvm::orc::SymbolLookupSet, llvm::orc::SymbolState, llvm::unique_function<void (llvm::Expected<llvm::DenseMap<llvm::orc::SymbolStringPtr, llvm::JITEvaluatedSymbol, llvm::DenseMapInfollvm::orc::SymbolStringPtr, llvm::detail::DenseMapPair<llvm::orc::SymbolStringPtr, llvm::JITEvaluatedSymbol> > >)>, std::__1::function<void (llvm::DenseMap<llvm::orc::JITDylib*, llvm::DenseSet<llvm::orc::SymbolStringPtr, llvm::DenseMapInfollvm::orc::SymbolStringPtr >, llvm::DenseMapInfollvm::orc::JITDylib*, llvm::detail::DenseMapPair<llvm::orc::JITDylib*, llvm::DenseSet<llvm::orc::SymbolStringPtr, llvm::DenseMapInfollvm::orc::SymbolStringPtr > > > const&)>) at /Users/igorgomon/dev/third-party/llvm-project/llvm/lib/ExecutionEngine/Orc/Core.cpp:2058

#31 0x00000001063e5128 in llvm::orc::ObjectLinkingLayerJITLinkContext::lookup(llvm::DenseMap<llvm::StringRef, llvm::jitlink::SymbolLookupFlags, llvm::DenseMapInfollvm::StringRef, llvm::detail::DenseMapPair<llvm::StringRef, llvm::jitlink::SymbolLookupFlags> > const&, std::__1::unique_ptr<llvm::jitlink::JITLinkAsyncLookupContinuation, std::__1::default_deletellvm::jitlink::JITLinkAsyncLookupContinuation >) at /Users/igorgomon/dev/third-party/llvm-project/llvm/lib/ExecutionEngine/Orc/ObjectLinkingLayer.cpp:87

#32 0x0000000106623bac in llvm::jitlink::JITLinkerBase::linkPhase1(std::__1::unique_ptr<llvm::jitlink::JITLinkerBase, std::__1::default_deletellvm::jitlink::JITLinkerBase >) at /Users/igorgomon/dev/third-party/llvm-project/llvm/lib/ExecutionEngine/JITLink/JITLinkGeneric.cpp:77

#33 0x000000010665fc10 in void llvm::jitlink::JITLinkerllvm::jitlink::MachOJITLinker_arm64::link<std::__1::unique_ptr<llvm::jitlink::JITLinkContext, std::__1::default_deletellvm::jitlink::JITLinkContext >, llvm::jitlink::PassConfiguration>(std::__1::unique_ptr<llvm::jitlink::JITLinkContext, std::__1::default_deletellvm::jitlink::JITLinkContext >&&, llvm::jitlink::PassConfiguration&&) at /Users/igorgomon/dev/third-party/llvm-project/llvm/lib/ExecutionEngine/JITLink/JITLinkGeneric.h:139

#34 0x000000010665f93c in llvm::jitlink::jitLink_MachO_arm64(std::__1::unique_ptr<llvm::jitlink::JITLinkContext, std::__1::default_deletellvm::jitlink::JITLinkContext >) at /Users/igorgomon/dev/third-party/llvm-project/llvm/lib/ExecutionEngine/JITLink/MachO_arm64.cpp:685

#35 0x000000010665e604 in llvm::jitlink::jitLink_MachO(std::__1::unique_ptr<llvm::jitlink::JITLinkContext, std::__1::default_deletellvm::jitlink::JITLinkContext >) at /Users/igorgomon/dev/third-party/llvm-project/llvm/lib/ExecutionEngine/JITLink/MachO.cpp:69

#36 0x0000000106616f58 in llvm::jitlink::jitLink(std::__1::unique_ptr<llvm::jitlink::JITLinkContext, std::__1::default_deletellvm::jitlink::JITLinkContext >) at /Users/igorgomon/dev/third-party/llvm-project/llvm/lib/ExecutionEngine/JITLink/JITLink.cpp:306

#37 0x00000001063db144 in llvm::orc::ObjectLinkingLayer::emit(llvm::orc::MaterializationResponsibility, std::__1::unique_ptr<llvm::MemoryBuffer, std::__1::default_deletellvm::MemoryBuffer >) at /Users/igorgomon/dev/third-party/llvm-project/llvm/lib/ExecutionEngine/Orc/ObjectLinkingLayer.cpp:343

#38 0x00000001064044f4 in llvm::orc::ObjectTransformLayer::emit(llvm::orc::MaterializationResponsibility, std::__1::unique_ptr<llvm::MemoryBuffer, std::__1::default_deletellvm::MemoryBuffer >) at /Users/igorgomon/dev/third-party/llvm-project/llvm/lib/ExecutionEngine/Orc/ObjectTransformLayer.cpp:35

#39 0x000000010638e9c8 in llvm::orc::IRCompileLayer::emit(llvm::orc::MaterializationResponsibility, llvm::orc::ThreadSafeModule) at /Users/igorgomon/dev/third-party/llvm-project/llvm/lib/ExecutionEngine/Orc/IRCompileLayer.cpp:35

#40 0x000000010638ff64 in llvm::orc::IRTransformLayer::emit(llvm::orc::MaterializationResponsibility, llvm::orc::ThreadSafeModule) at /Users/igorgomon/dev/third-party/llvm-project/llvm/lib/ExecutionEngine/Orc/IRTransformLayer.cpp:25

#41 0x00000001062b2b5c in llvm::orc::CompileOnDemandLayer::emitPartition(llvm::orc::MaterializationResponsibility, llvm::orc::ThreadSafeModule, std::__1::map<llvm::orc::SymbolStringPtr, llvm::GlobalValue*, std::__1::lessllvm::orc::SymbolStringPtr, std::__1::allocator<std::__1::pair<llvm::orc::SymbolStringPtr const, llvm::GlobalValue*> > >) at /Users/igorgomon/dev/third-party/llvm-project/llvm/lib/ExecutionEngine/Orc/CompileOnDemandLayer.cpp:320

#42 0x00000001062b8470 in llvm::orc::PartitioningIRMaterializationUnit::materialize(llvm::orc::MaterializationResponsibility) at /Users/igorgomon/dev/third-party/llvm-project/llvm/lib/ExecutionEngine/Orc/CompileOnDemandLayer.cpp:86

#43 0x00000001062e2844 in llvm::orc::MaterializationUnit::doMaterialize(llvm::orc::JITDylib&) at /Users/igorgomon/dev/third-party/llvm-project/llvm/include/llvm/ExecutionEngine/Orc/Core.h:563

#44 0x00000001062db744 in llvm::orc::ExecutionSession::materializeOnCurrentThread(llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit >) at /Users/igorgomon/dev/third-party/llvm-project/llvm/include/llvm/ExecutionEngine/Orc/Core.h:1212

#45 0x00000001062eaf98 in decltype(std::__1::forward<void (*&)(llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit

_)>(fp)(std::1::forwardllvm::orc::JITDylib&(fp0), std::__1::forward<std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit > >(fp0))) std::__1::__invoke<void (&)(llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit >), llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit > >(void (&)(llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit >), llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit >&&) at /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/type_traits:4425

#46 0x00000001062eaef8 in void std::__1::__invoke_void_return_wrapper::__call<void (&)(llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit >), llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit > >(void (&)(llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit >), llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit >&&) at /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/__functional_base:348

#47 0x00000001062eae94 in std::__1::__function::__alloc_func<void (*)(llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit >), std::__1::allocator<void (*)(llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit >)>, void (llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit

)>::operator()(llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit >&&) at /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/functional:1533

#48 0x00000001062e980c in std::__1::__function::__func<void (*)(llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit >), std::__1::allocator<void (*)(llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit >)>, void (llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit

)>::operator()(llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit >&&) at /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/functional:1707

#49 0x00000001062e2314 in std::__1::__function::__value_func<void (llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit

)>::operator()(llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit >&&) const at /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/functional:1860

#50 0x00000001062e2198 in std::__1::function<void (llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit

)>::operator()(llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit >) const at /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/functional:2419

#51 0x00000001062d76b4 in llvm::orc::ExecutionSession::dispatchMaterialization(llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit, std::__1::default_deletellvm::orc::MaterializationUnit >) at /Users/igorgomon/dev/third-party/llvm-project/llvm/include/llvm/ExecutionEngine/Orc/Core.h:1198

#52 0x00000001062d955c in llvm::orc::ExecutionSession::runOutstandingMUs() at /Users/igorgomon/dev/third-party/llvm-project/llvm/lib/ExecutionEngine/Orc/Core.cpp:2161

#53 0x00000001062d623c in llvm::orc::ExecutionSession::lookup(llvm::orc::LookupKind, std::__1::vector<std::__1::pair<llvm::orc::JITDylib*, llvm::orc::JITDylibLookupFlags>, std::__1::allocator<std::__1::pair<llvm::orc::JITDylib*, llvm::orc::JITDylibLookupFlags> > > const&, llvm::orc::SymbolLookupSet, llvm::orc::SymbolState, llvm::unique_function<void (llvm::Expected<llvm::DenseMap<llvm::orc::SymbolStringPtr, llvm::JITEvaluatedSymbol, llvm::DenseMapInfollvm::orc::SymbolStringPtr, llvm::detail::DenseMapPair<llvm::orc::SymbolStringPtr, llvm::JITEvaluatedSymbol> > >)>, std::__1::function<void (llvm::DenseMap<llvm::orc::JITDylib*, llvm::DenseSet<llvm::orc::SymbolStringPtr, llvm::DenseMapInfollvm::orc::SymbolStringPtr >, llvm::DenseMapInfollvm::orc::JITDylib*, llvm::detail::DenseMapPair<llvm::orc::JITDylib*, llvm::DenseSet<llvm::orc::SymbolStringPtr, llvm::DenseMapInfollvm::orc::SymbolStringPtr > > > const&)>) at /Users/igorgomon/dev/third-party/llvm-project/llvm/lib/ExecutionEngine/Orc/Core.cpp:2058

#54 0x00000001062dc4b0 in llvm::orc::ExecutionSession::lookup(std::__1::vector<std::__1::pair<llvm::orc::JITDylib*, llvm::orc::JITDylibLookupFlags>, std::__1::allocator<std::__1::pair<llvm::orc::JITDylib*, llvm::orc::JITDylibLookupFlags> > > const&, llvm::orc::SymbolLookupSet const&, llvm::orc::LookupKind, llvm::orc::SymbolState, std::__1::function<void (llvm::DenseMap<llvm::orc::JITDylib*, llvm::DenseSet<llvm::orc::SymbolStringPtr, llvm::DenseMapInfollvm::orc::SymbolStringPtr >, llvm::DenseMapInfollvm::orc::JITDylib*, llvm::detail::DenseMapPair<llvm::orc::JITDylib*, llvm::DenseSet<llvm::orc::SymbolStringPtr, llvm::DenseMapInfollvm::orc::SymbolStringPtr > > > const&)>) at /Users/igorgomon/dev/third-party/llvm-project/llvm/lib/ExecutionEngine/Orc/Core.cpp:2095

#55 0x00000001062dc6f8 in llvm::orc::ExecutionSession::lookup(std::__1::vector<std::__1::pair<llvm::orc::JITDylib*, llvm::orc::JITDylibLookupFlags>, std::__1::allocator<std::__1::pair<llvm::orc::JITDylib*, llvm::orc::JITDylibLookupFlags> > > const&, llvm::orc::SymbolStringPtr) at /Users/igorgomon/dev/third-party/llvm-project/llvm/lib/ExecutionEngine/Orc/Core.cpp:2120

#56 0x0000000106392c40 in llvm::orc::LazyCallThroughManager::callThroughToSymbol(unsigned long long) at /Users/igorgomon/dev/third-party/llvm-project/llvm/lib/ExecutionEngine/Orc/LazyReexports.cpp:54

#57 0x00000001063a07a8 in llvm::Error llvm::orc::LocalLazyCallThroughManager::initllvm::orc::OrcAArch64()::'lambda'(unsigned long long)::operator()(unsigned long long) const at /Users/igorgomon/dev/third-party/llvm-project/llvm/include/llvm/ExecutionEngine/Orc/LazyReexports.h:120

#58 0x00000001063a0760 in decltype(std::__1::forward<llvm::Error llvm::orc::LocalLazyCallThroughManager::initllvm::orc::OrcAArch64()::'lambda'(unsigned long long)&>(fp)(std::__1::forward(fp0))) std::__1::__invoke<llvm::Error llvm::orc::LocalLazyCallThroughManager::initllvm::orc::OrcAArch64()::'lambda'(unsigned long long)&, unsigned long long>(llvm::Error llvm::orc::LocalLazyCallThroughManager::initllvm::orc::OrcAArch64()::'lambda'(unsigned long long)&, unsigned long long&&) at /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/type_traits:4425

#59 0x00000001063a06f4 in unsigned long long std::__1::__invoke_void_return_wrapper::__call<llvm::Error llvm::orc::LocalLazyCallThroughManager::initllvm::orc::OrcAArch64()::'lambda'(unsigned long long)&, unsigned long long>(llvm::Error llvm::orc::LocalLazyCallThroughManager::initllvm::orc::OrcAArch64()::'lambda'(unsigned long long)&, unsigned long long&&) at /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/__functional_base:317

#60 0x00000001063a06a8 in std::__1::__function::__alloc_func<llvm::Error llvm::orc::LocalLazyCallThroughManager::initllvm::orc::OrcAArch64()::'lambda'(unsigned long long), std::__1::allocator<llvm::Error llvm::orc::LocalLazyCallThroughManager::initllvm::orc::OrcAArch64()::'lambda'(unsigned long long)>, unsigned long long (unsigned long long)>::operator()(unsigned long long&&) at /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/functional:1533

#61 0x000000010639f038 in std::__1::__function::__func<llvm::Error llvm::orc::LocalLazyCallThroughManager::initllvm::orc::OrcAArch64()::'lambda'(unsigned long long), std::__1::allocator<llvm::Error llvm::orc::LocalLazyCallThroughManager::initllvm::orc::OrcAArch64()::'lambda'(unsigned long long)>, unsigned long long (unsigned long long)>::operator()(unsigned long long&&) at /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/functional:1707

#62 0x0000000106349f94 in std::__1::__function::__value_func<unsigned long long (unsigned long long)>::operator()(unsigned long long&&) const at /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/functional:1860

#63 0x0000000106349f30 in std::__1::function<unsigned long long (unsigned long long)>::operator()(unsigned long long) const at /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/functional:2419

#64 0x0000000106349858 in llvm::orc::LocalTrampolinePoolllvm::orc::OrcAArch64::reenter(void*, void*) at /Users/igorgomon/dev/third-party/llvm-project/llvm/include/llvm/ExecutionEngine/Orc/IndirectionUtils.h:111

#65 0x0000000117634090 in 0x117634090 ()

#66 0x0000000106323a08 in llvm::orc::runAsMain(int ()(int, char*), llvm::ArrayRef<std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator > >, llvm::Optionalllvm::StringRef) at /Users/igorgomon/dev/third-party/llvm-project/llvm/lib/ExecutionEngine/Orc/ExecutionUtils.cpp:45 -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20200523/9ebbc6d3/attachment-0001.html>



More information about the llvm-dev mailing list