search for: symbolst

Displaying 19 results from an estimated 19 matches for "symbolst".

Did you mean: symbols
2019 May 31
2
Commit 93af05e03e05d2f85b5a7e20ec3a3a543584d84f causes warning
...lacement.h:23, from /path/to/llvm/lib/ExecutionEngine/Orc/OrcMCJITReplacement.cpp:9: /path/to/llvm/include/llvm/ExecutionEngine/Orc/Core.h:690:25: warning: 'llvm::orc::JITDylib::SymbolTableEntry::State' is too small to hold all values of 'enum class llvm::orc::JITDylib::SymbolState' SymbolState State : 6; There is no GCC option for disabling this warning: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61414 The issue is that now LLVM is not buildable with GCC and '-Werror' enabled. In addition, LLVM gcc-werror buildbot seems to be offline since May 9th: ht...
2020 Mar 18
4
[ORC JIT] -Resolving cross references in a multi-process scenario
Hi Bjoern, Thanks for your patience. The good news is that there is a neater way to do this: ExecutionSession's lookup methods take a orc::SymbolState parameter which describes the state that symbols must reach before a query can return (See https://github.com/llvm/llvm-project/blob/d1a7bfca74365c6523e647fcedd84f8fa1972dd3/llvm/include/llvm/ExecutionEngine/Orc/Core.h#L1273).In your case you want to use orc::SymbolState::Resolved, which will ca...
2019 May 31
2
Commit 93af05e03e05d2f85b5a7e20ec3a3a543584d84f causes warning
...rom >> /path/to/llvm/lib/ExecutionEngine/Orc/OrcMCJITReplacement.cpp:9: >> >> /path/to/llvm/include/llvm/ExecutionEngine/Orc/Core.h:690:25: warning: >> ‘llvm::orc::JITDylib::SymbolTableEntry::State’ is too small to hold all >> values of ‘enum class llvm::orc::JITDylib::SymbolState’ >> >> SymbolState State : 6; >> >> >> >> There is no GCC option for disabling this warning: >> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61414 >> >> The issue is that now LLVM is not buildable with GCC and ‘-Werror’ >> enabled....
2020 Sep 28
2
ORC JIT - different behaviour of ExecutionSession.lookup?
...LookupSet lookupSet; lookupSet.add("?Sampler@@YAXXZ", llvm::orc::SymbolLookupFlags::WeaklyReferencedSymbol); ES.lookup({{&jit->getMainJITDylib(), llvm::orc::JITDylibLookupFlags::MatchAllSymbols}}, lookupSet, llvm::orc::LookupKind::Static, llvm::orc::SymbolState::Resolved); Even though the "tryToGenerate" function of my DefinitionGenerator returned a "llvm::orc::SymbolsNotFound" for the "?_Plansch_test@@3HA", I got an address for "?Sampler@@YAXXZ". Dumping the "MainJITDylib" I saw, that the "?Sampl...
2020 Apr 16
4
ORC Assertion failure
...ing a function, when my code is trying to get the compiled function's address using something like this: return ES->lookup({MainJD}, (*Mangle)(Name.str())); Here is the call stack: libravi.dll!llvm::orc::MaterializationResponsibility::notifyResolved(const llvm::DenseMap<llvm::orc::SymbolStringPtr,llvm::JITEvaluatedSymbol,llvm::DenseMapInfo<llvm::orc::SymbolStringPtr>,llvm::detail::DenseMapPair<llvm::orc::SymbolStringPtr,llvm::JITEvaluatedSymbol>> & Symbols) Line 449 C++ libravi.dll!llvm::orc::RTDyldObjectLinkingLayer::onObjLoad(unsigned __int64 K, llvm::orc...
2020 Sep 29
3
ORC JIT - different behaviour of ExecutionSession.lookup?
...onSession.lookup? Hi Bjoern, Even though the "tryToGenerate" function of my DefinitionGenerator returned a "llvm::orc::SymbolsNotFound" for the "?_Plansch_test@@3HA", I got an address for "? That's because you're issuing the lookup with RequiredState == SymbolState::Resolved. This means that your query will return as soon as "?Sampler@@YAXXZ" is assigned an address. In the JIT linker(s) addresses are assigned before external references are looked up. So after your lookup returns the linker attempts to find "?_Plansch_test@@3HA", fails,...
2020 Mar 06
2
[ORC JIT] -Resolving cross references in a multi-process scenario
Hello LLVM-Mailing-List and Lang, I have a very weird (or strict?) scenario and was curious if the ORC JIT can help me with it. Soo here it comes: I have currently a windows process ("Runtime") which does nothing but creating a shared memory with read, write and execute rights - and also writing some function addresses like from printf to it. Then I have two or more processes which
2004 Jun 18
3
[LLVMdev] MachineOperand: GlobalAddress vs. ExternalSymbol
...ernal set to true. To me this seems a bit confusing -- it would be clearer if there we plain functions with bodies and everything else were GlobalValue. Anyther question is about SymbolTable. Is it true that it's a mapping from name to objects in Module, and than all objects accessible via SymbolsTable are either in the list of functions or in the list of global values? > If you have a GlobalValue*, please do use it, but if it's one of these > cases where the called function might not exist in the LLVM view of the > world, then use an ExternalSymbol. OK. Thanks, Volodya
2020 Sep 30
2
ORC JIT - different behaviour of ExecutionSession.lookup?
...onSession.lookup? Hi Bjoern, Even though the "tryToGenerate" function of my DefinitionGenerator returned a "llvm::orc::SymbolsNotFound" for the "?_Plansch_test@@3HA", I got an address for "? That's because you're issuing the lookup with RequiredState == SymbolState::Resolved. This means that your query will return as soon as "?Sampler@@YAXXZ" is assigned an address. In the JIT linker(s) addresses are assigned before external references are looked up. So after your lookup returns the linker attempts to find "?_Plansch_test@@3HA", fails,...
2004 Jun 18
0
[LLVMdev] MachineOperand: GlobalAddress vs. ExternalSymbol
...ion prototype and defined function objects would be different: to go from one to the other, you would have to delete the object and reallocate it. > Anyther question is about SymbolTable. Is it true that it's a mapping from > name to objects in Module, and than all objects accessible via SymbolsTable > are either in the list of functions or in the list of global values? Yup. There are also function-local symbol tables as well. I wouldn't recommend depending too much on the names, because LLVM has a unusual mechanism where it allows objects with different types to have the same nam...
2020 May 23
4
Assertion triggered when running simple hello-world code on iOS device using ORC/LLLazyJIT
...::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...
2004 Jun 17
0
[LLVMdev] MachineOperand: GlobalAddress vs. ExternalSymbol
On Thu, 17 Jun 2004, Vladimir Prus wrote: > > Hi, > here I am again with "why is this so" kind of a question. Among different > types of MachineOperand there are MO_ExternalSymbol and MO_GlobalAddress. > > For MO_GlobalAddress, we can get usefull information from the getGlobal() > method, which returns GlobalValue*. Wouldn'it it be better is >
2020 Oct 01
2
ORC JIT - different behaviour of ExecutionSession.lookup?
...;A" or "B" to be ready will find that their query doesn't return until both symbols are fully-materialized and safe to access. (2) Update the JIT state using your MaterializationResponsibility object: if (auto TestSym = ES.lookup({&PlanschiJD}, ES.intern("test")), SymbolState::Resolved) { // Tell the JIT that the address of PlanschiTest is the same // as the address of "test" in the Planschi JITDylib. MR.notifyResolved({ { ES.intern("Planschi_test"), JITEvaluatedSymbol(TestSym.getAddress(), JITSymbolF...
2004 Jun 17
2
[LLVMdev] MachineOperand: GlobalAddress vs. ExternalSymbol
Hi, here I am again with "why is this so" kind of a question. Among different types of MachineOperand there are MO_ExternalSymbol and MO_GlobalAddress. For MO_GlobalAddress, we can get usefull information from the getGlobal() method, which returns GlobalValue*. Wouldn'it it be better is MO_GlobalAddress be called MO_GlobalValue, for consistency? Second, MO_ExternalSymbol is used
2020 Jun 06
4
Assertion triggered when running simple hello-world code on iOS device using ORC/LLLazyJIT
...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/thir...
2020 Sep 23
2
ORC JIT - Can modules independently managed with one LLJIT instance? + problems with ExecutionSession.lookup
...olsOfInterrest) { lookupSet.add(element.second.name,llvm::orc::SymbolLookupFlags::WeaklyReferencedSymbol); } auto result = ES.lookup({{&jit->getMainJITDylib(), llvm::orc::JITDylibLookupFlags::MatchAllSymbols}}, lookupSet, llvm::orc::LookupKind::Static, llvm::orc::SymbolState::Resolved); if(result) { for(const auto &element : *result) { const llvm::StringRef &name = (*element.first); const size_t hash = calculateHash(name); printf(">>>%...
2020 Jun 20
1
Assertion triggered when running simple hello-world code on iOS device using ORC/LLLazyJIT
...m/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/CompileOnDeman...
2004 Jun 19
1
[LLVMdev] MachineOperand: GlobalAddress vs. ExternalSymbol
...it's added only to global values list. When you add the first basic block, it's also added to the list of functions. > > Anyther question is about SymbolTable. Is it true that it's a mapping > > from name to objects in Module, and than all objects accessible via > > SymbolsTable are either in the list of functions or in the list of global > > values? > > Yup. There are also function-local symbol tables as well. > > I wouldn't recommend depending too much on the names, because LLVM has a > unusual mechanism where it allows objects with differen...
2020 Sep 24
2
ORC JIT - Can modules independently managed with one LLJIT instance? + problems with ExecutionSession.lookup
...cc5198eee21f0dbabe6af0a3180-bedda45c2776595c390d63af4d6c24c16f889af2>,llvm::orc::SymbolLookupFlags::WeaklyReferencedSymbol); } auto result = ES.lookup({{&jit->getMainJITDylib(), llvm::orc::JITDylibLookupFlags::MatchAllSymbols}}, lookupSet, llvm::orc::LookupKind::Static, llvm::orc::SymbolState::Resolved); if(result) { for(const auto &element : *result) { const llvm::StringRef &name = (*element.first); const size_t hash = calculateHash(name); printf(">>>%...