[llvm-dev] Assertion triggered when running simple hello-world code on iOS device using ORC/LLLazyJIT
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 <iostream>
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<MainFnPtr>(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_delete<llvm::jitlink::JITLinkerBase> >) at
/Users/igorgomon/dev/third-party/llvm-project/llvm/lib/ExecutionEngine/JITLink/JITLinkGeneric.cpp:28
#10 0x000000010665fc10 in void
llvm::jitlink::JITLinker<llvm::jitlink::MachOJITLinker_arm64>::link<std::__1::unique_ptr<llvm::jitlink::JITLinkContext,
std::__1::default_delete<llvm::jitlink::JITLinkContext> >,
llvm::jitlink::PassConfiguration>(std::__1::unique_ptr<llvm::jitlink::JITLinkContext,
std::__1::default_delete<llvm::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_delete<llvm::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_delete<llvm::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_delete<llvm::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_delete<llvm::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_delete<llvm::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::less<llvm::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_delete<llvm::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_delete<llvm::orc::MaterializationUnit>
>)>(fp)(std::__1::forward<llvm::orc::JITDylib&>(fp0),
std::__1::forward<std::__1::unique_ptr<llvm::orc::MaterializationUnit,
std::__1::default_delete<llvm::orc::MaterializationUnit> > >(fp0)))
std::__1::__invoke<void (*&)(llvm::orc::JITDylib&,
std::__1::unique_ptr<llvm::orc::MaterializationUnit,
std::__1::default_delete<llvm::orc::MaterializationUnit> >),
llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit,
std::__1::default_delete<llvm::orc::MaterializationUnit> > >(void
(*&)(llvm::orc::JITDylib&,
std::__1::unique_ptr<llvm::orc::MaterializationUnit,
std::__1::default_delete<llvm::orc::MaterializationUnit> >),
llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit,
std::__1::default_delete<llvm::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<void>::__call<void
(*&)(llvm::orc::JITDylib&,
std::__1::unique_ptr<llvm::orc::MaterializationUnit,
std::__1::default_delete<llvm::orc::MaterializationUnit> >),
llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit,
std::__1::default_delete<llvm::orc::MaterializationUnit> > >(void
(*&)(llvm::orc::JITDylib&,
std::__1::unique_ptr<llvm::orc::MaterializationUnit,
std::__1::default_delete<llvm::orc::MaterializationUnit> >),
llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit,
std::__1::default_delete<llvm::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_delete<llvm::orc::MaterializationUnit> >),
std::__1::allocator<void (*)(llvm::orc::JITDylib&,
std::__1::unique_ptr<llvm::orc::MaterializationUnit,
std::__1::default_delete<llvm::orc::MaterializationUnit> >)>, void
(llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit,
std::__1::default_delete<llvm::orc::MaterializationUnit>
>)>::operator()(llvm::orc::JITDylib&,
std::__1::unique_ptr<llvm::orc::MaterializationUnit,
std::__1::default_delete<llvm::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_delete<llvm::orc::MaterializationUnit> >),
std::__1::allocator<void (*)(llvm::orc::JITDylib&,
std::__1::unique_ptr<llvm::orc::MaterializationUnit,
std::__1::default_delete<llvm::orc::MaterializationUnit> >)>, void
(llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit,
std::__1::default_delete<llvm::orc::MaterializationUnit>
>)>::operator()(llvm::orc::JITDylib&,
std::__1::unique_ptr<llvm::orc::MaterializationUnit,
std::__1::default_delete<llvm::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_delete<llvm::orc::MaterializationUnit>
>)>::operator()(llvm::orc::JITDylib&,
std::__1::unique_ptr<llvm::orc::MaterializationUnit,
std::__1::default_delete<llvm::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_delete<llvm::orc::MaterializationUnit>
>)>::operator()(llvm::orc::JITDylib&,
std::__1::unique_ptr<llvm::orc::MaterializationUnit,
std::__1::default_delete<llvm::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_delete<llvm::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::DenseMapInfo<llvm::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::DenseMapInfo<llvm::orc::SymbolStringPtr> >,
llvm::DenseMapInfo<llvm::orc::JITDylib*>,
llvm::detail::DenseMapPair<llvm::orc::JITDylib*,
llvm::DenseSet<llvm::orc::SymbolStringPtr,
llvm::DenseMapInfo<llvm::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::DenseMapInfo<llvm::StringRef>,
llvm::detail::DenseMapPair<llvm::StringRef,
llvm::jitlink::SymbolLookupFlags> > const&,
std::__1::unique_ptr<llvm::jitlink::JITLinkAsyncLookupContinuation,
std::__1::default_delete<llvm::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_delete<llvm::jitlink::JITLinkerBase> >) at
/Users/igorgomon/dev/third-party/llvm-project/llvm/lib/ExecutionEngine/JITLink/JITLinkGeneric.cpp:77
#33 0x000000010665fc10 in void
llvm::jitlink::JITLinker<llvm::jitlink::MachOJITLinker_arm64>::link<std::__1::unique_ptr<llvm::jitlink::JITLinkContext,
std::__1::default_delete<llvm::jitlink::JITLinkContext> >,
llvm::jitlink::PassConfiguration>(std::__1::unique_ptr<llvm::jitlink::JITLinkContext,
std::__1::default_delete<llvm::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_delete<llvm::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_delete<llvm::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_delete<llvm::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_delete<llvm::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_delete<llvm::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::less<llvm::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_delete<llvm::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_delete<llvm::orc::MaterializationUnit>
>)>(fp)(std::__1::forward<llvm::orc::JITDylib&>(fp0),
std::__1::forward<std::__1::unique_ptr<llvm::orc::MaterializationUnit,
std::__1::default_delete<llvm::orc::MaterializationUnit> > >(fp0)))
std::__1::__invoke<void (*&)(llvm::orc::JITDylib&,
std::__1::unique_ptr<llvm::orc::MaterializationUnit,
std::__1::default_delete<llvm::orc::MaterializationUnit> >),
llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit,
std::__1::default_delete<llvm::orc::MaterializationUnit> > >(void
(*&)(llvm::orc::JITDylib&,
std::__1::unique_ptr<llvm::orc::MaterializationUnit,
std::__1::default_delete<llvm::orc::MaterializationUnit> >),
llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit,
std::__1::default_delete<llvm::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<void>::__call<void
(*&)(llvm::orc::JITDylib&,
std::__1::unique_ptr<llvm::orc::MaterializationUnit,
std::__1::default_delete<llvm::orc::MaterializationUnit> >),
llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit,
std::__1::default_delete<llvm::orc::MaterializationUnit> > >(void
(*&)(llvm::orc::JITDylib&,
std::__1::unique_ptr<llvm::orc::MaterializationUnit,
std::__1::default_delete<llvm::orc::MaterializationUnit> >),
llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit,
std::__1::default_delete<llvm::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_delete<llvm::orc::MaterializationUnit> >),
std::__1::allocator<void (*)(llvm::orc::JITDylib&,
std::__1::unique_ptr<llvm::orc::MaterializationUnit,
std::__1::default_delete<llvm::orc::MaterializationUnit> >)>, void
(llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit,
std::__1::default_delete<llvm::orc::MaterializationUnit>
>)>::operator()(llvm::orc::JITDylib&,
std::__1::unique_ptr<llvm::orc::MaterializationUnit,
std::__1::default_delete<llvm::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_delete<llvm::orc::MaterializationUnit> >),
std::__1::allocator<void (*)(llvm::orc::JITDylib&,
std::__1::unique_ptr<llvm::orc::MaterializationUnit,
std::__1::default_delete<llvm::orc::MaterializationUnit> >)>, void
(llvm::orc::JITDylib&, std::__1::unique_ptr<llvm::orc::MaterializationUnit,
std::__1::default_delete<llvm::orc::MaterializationUnit>
>)>::operator()(llvm::orc::JITDylib&,
std::__1::unique_ptr<llvm::orc::MaterializationUnit,
std::__1::default_delete<llvm::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_delete<llvm::orc::MaterializationUnit>
>)>::operator()(llvm::orc::JITDylib&,
std::__1::unique_ptr<llvm::orc::MaterializationUnit,
std::__1::default_delete<llvm::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_delete<llvm::orc::MaterializationUnit>
>)>::operator()(llvm::orc::JITDylib&,
std::__1::unique_ptr<llvm::orc::MaterializationUnit,
std::__1::default_delete<llvm::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_delete<llvm::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::DenseMapInfo<llvm::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::DenseMapInfo<llvm::orc::SymbolStringPtr> >,
llvm::DenseMapInfo<llvm::orc::JITDylib*>,
llvm::detail::DenseMapPair<llvm::orc::JITDylib*,
llvm::DenseSet<llvm::orc::SymbolStringPtr,
llvm::DenseMapInfo<llvm::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::DenseMapInfo<llvm::orc::SymbolStringPtr> >,
llvm::DenseMapInfo<llvm::orc::JITDylib*>,
llvm::detail::DenseMapPair<llvm::orc::JITDylib*,
llvm::DenseSet<llvm::orc::SymbolStringPtr,
llvm::DenseMapInfo<llvm::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::init<llvm::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::init<llvm::orc::OrcAArch64>()::'lambda'(unsigned
long long)&>(fp)(std::__1::forward<unsigned long long>(fp0)))
std::__1::__invoke<llvm::Error
llvm::orc::LocalLazyCallThroughManager::init<llvm::orc::OrcAArch64>()::'lambda'(unsigned
long long)&, unsigned long long>(llvm::Error
llvm::orc::LocalLazyCallThroughManager::init<llvm::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<unsigned long
long>::__call<llvm::Error
llvm::orc::LocalLazyCallThroughManager::init<llvm::orc::OrcAArch64>()::'lambda'(unsigned
long long)&, unsigned long long>(llvm::Error
llvm::orc::LocalLazyCallThroughManager::init<llvm::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::init<llvm::orc::OrcAArch64>()::'lambda'(unsigned
long long), std::__1::allocator<llvm::Error
llvm::orc::LocalLazyCallThroughManager::init<llvm::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::init<llvm::orc::OrcAArch64>()::'lambda'(unsigned
long long), std::__1::allocator<llvm::Error
llvm::orc::LocalLazyCallThroughManager::init<llvm::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::LocalTrampolinePool<llvm::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<char>,
std::__1::allocator<char> > >, llvm::Optional<llvm::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