Displaying 20 results from an estimated 3000 matches similar to: "Undefined symbols with inline functions using the ORC JIT on Linux"
2019 Jan 05
2
Undefined symbols with inline functions using the ORC JIT on Linux
Hi Stefan,
Thanks for your reply. I tried running my simple example on Linux using lli
and it does work fine. So I think the best long-term solution is to migrate
my code to the new lazy orc jit. Unfortunately, even the simplest example
does not work on Windows:
int main() { return 0; }
This is the output:
JITDylib "<main>" (ES: 0x000001b6e4ad3670):
Search order: [
2019 Sep 16
2
Orc JIT vs. implicit template instanciation in LLVM 8
No, the problem is that Finalized is true. It is set to true at the start
of the finalize() method. That's why I added a test causing that line to be
executed if the symbol's address is zero...
On Tue, 17 Sep 2019, 00:05 Lang Hames, <lhames at gmail.com> wrote:
> Hi Geoff,
>
> Oof. I don't know what this is yet, but I bet it's going to be awful.
> Quick apology
2019 Jun 19
2
Questions about moving from MCJIT to Orc JIT
Hello LLVM-Mailing list,
in the past I was using the MCJIT (if I understand it correctly) to load IR modules, compile them and execute them. The speciality of this JIT was, that it was writing the compiled code into a shared memory - for a different process to execute them. For that task the JIT used a 'custom' memory manager, memory mapping and also resolved undefined references itself.
2019 Sep 16
2
Orc JIT vs. implicit template instanciation in LLVM 8
I have found the cause of our problems with implicit template
instantiation, and it looks to me like a bug in Orc JIT in LLVM 8.
(Perhaps Lang could confirm?)
We use createLegacyLookupResolver() to create our symbol resolver,
passing it a lookup function. Amongst other things, our function calls
LegacyRTDyldObjectLinkingLayer::findSymbol() to look up symbols in the
JIT.
When a module is
2017 Aug 06
2
Compile issues with LLVM ORC JIT
I tree to compile the LLVM ORC JIT examples. But I'm stuck in some
problems I can't solve my own.
First at all I compile with C++14 enabled with latest stable LLVM and
clang, this means 4.0.1. I get the following error. Do I missed some
specific compile option?
Compilation looks like this here.
|CompilingcontribJIT.cpp
PWD:/home/ikuehl/projects-llvm/TurboLisp/domainEngineer
2019 Sep 15
2
Orc JIT vs. implicit template instanciation in LLVM 8
Well, I agree the front end must be responsible for (not)
instantiating the function templates. However the problem shows up
only when JIT compiling, for some reason, and only with LLVM 8. Is
there perhaps something else that needs to be done before resolving
symbols, in addition to running constructors, to ensure that
instantiated function templates are taken into account?
Or perhaps there is
2017 Aug 24
1
Invalid Signature of orc::RTDyldObjectLinkingLayer::NotifyLoadedFtor
Hi all, hi Lang
It's a little late to report issues for release_50, but I just found
that thing while porting my JitFromScratch examples to 5.0.
This is a really nifty detail, but (if I'm not mistaken) the function
signature of RTDyldObjectLinkingLayer::NotifyLoadedFtor is incorrect:
$ grep -h -r -A 1 "using NotifyLoadedFtor"
2016 Apr 01
2
Kaleidoscope on Windows - bug maybe found?
To try to find out why it was crashing, I followed the trail of function
calls:
C:\llvm\examples\Kaleidoscope\Orc\initial\toy.cpp
auto ExprSymbol = J.findUnmangledSymbol("__anon_expr");
JITSymbol findUnmangledSymbol(const std::string Name) {
return findSymbol(mangle(Name));
}
JITSymbol findSymbol(const std::string &Name) {
return CompileLayer.findSymbol(Name,
2018 Nov 05
2
ORC JIT api, object files and stackmaps
Hi Christian
Your use case seems to have similar requirements as remote JITing in
ORC. So far I haven't used that part myself and I am sure Lang can tell
you much more about it. However, this comment on the
RemoteObjectClientLayer class sounds promising for your questions (1)
and (2):
/// Sending relocatable objects to the server (rather than fully relocated
/// bits) allows JIT'd code
2019 Aug 13
2
VModuleKey K not valid here
Hi,
I am getting following assertion failure when attempting to remove a module.
/llvm/ExecutionEngine/Orc/CompileOnDemandLayer.h:311: llvm::Error
llvm::orc::LegacyCompileOnDemandLayer<BaseLayerT, CompileCallbackMgrT,
IndirectStubsMgrT>::removeModule(llvm::orc::VModuleKey) [with
BaseLayerT =
2016 Jul 28
2
[ORC JIT] Exposing IndirectStubsManager from CompileOnDemandLayer.h
I needed to be able to update stub pointers for hot functions that get
recompiled in a lazy JIT that uses CompileOnDemandLayer. In order to do
this I added a method that allows pointers to be updated but does not
expose any of the other internals of the COD layer.
Does anyone have a cleaner way to do this? Has something to facilitate
this already been added? Would it be possible to merge this
2017 Apr 09
2
Possible stack corruption during call to JITSymbol::getAddress()
Firstly, apologies if this is not the right place to be asking this
question--feel free to point me in the correct direction. I could be doing
something wrong here but stackoverflow didn't feel like the correct place
for this since there's so little there about LLVM ORC.
Basically, I have a reproduction case (below) where if I throw an exception
before I call JITSymbol::getAddress()
2020 Mar 09
4
ORC JIT Weekly #7 -- JITEventListener support and Swift Immediate Mode Migration
Hi All,
Just a couple of updates this week:
First: there is a preview patch up at https://reviews.llvm.org/D75838 to
enable use of JITEventListeners in RTDyldObjectLinkingLayer. I've only done
very preliminary testing on it, but was able to debug simple JIT'd programs
on Linux using the GDB registration listener. If you've been wanting to
move to ORC but held up by lack of debugger /
2017 Apr 17
2
Possible stack corruption during call to JITSymbol::getAddress()
Hi David,
This looks like bad eh-frame data due to a failure to fix up the frame
descriptor entries:
<debug: adding frame> EHFrameAddr: 0x7feae5827000, EHFrameLoadAddr:
0x00000000e5827000, EHFrameSize: 60
==64588==ERROR: AddressSanitizer: SEGV on unknown address 0x7feae5827020
(pc 0x7feae886d970 bp 0x000000000001 sp 0x7ffca10e75f8 T0)
Eyeballing the code in RuntimeDyldELF (vs
2016 Jul 29
0
[ORC JIT] Exposing IndirectStubsManager from CompileOnDemandLayer.h
+Lang Hames <lhames at gmail.com>, Master Regent of the Three <No, Two sir>
JITs
On Thu, Jul 28, 2016 at 12:31 PM Sean Ogden via llvm-dev <
llvm-dev at lists.llvm.org> wrote:
> I needed to be able to update stub pointers for hot functions that get
> recompiled in a lazy JIT that uses CompileOnDemandLayer. In order to do
> this I added a method that allows pointers to
2017 Sep 22
2
Question regarding GlobalMappingLayer in LLVM 5
Hi,
I'm attempting to port some code which uses the GlobalMappingLayer in the Orc JIT. This code worked fine in LLVM 4, but I'm getting a compile error with LLVM 5. I think the problem is that this layer hasn't been modified to account for some of the changes made in LLVM 5, but I wanted to make sure that I wasn't missing something.
I have code which looks like this:
2017 Apr 20
2
Possible stack corruption during call to JITSymbol::getAddress()
Hi David,
Thanks very much for that. I'll continue to dig in as time permits, and
I'll update the bug report with my progress once it's filed.
Cheers,
Lang.
On Mon, Apr 17, 2017 at 6:42 PM, David Lurton <dlurton at gmail.com> wrote:
> Thanks Lang. I think I'll go the bug creation route. I have an email out
> to llvm-admin requesting an account on bugs.llvm.org.
2018 Jun 28
3
Since MCJIT I can't get libm functions to work
I am upgrading our JIT application to use LLVM 6.0.0, and with this
transition I am making the move to use the new MCJIT facility.
A problem I am encountering is that the math functions from libm are not
resolved/found. I am using the lambda resolver from the KaleidoscopeJIT
class which first searches the present modules and, if that is
unsuccessful, continues the search in the whole process
2017 May 01
1
Possible stack corruption during call to JITSymbol::getAddress()
Hi David,
Sorry to hear. Has anyone followed up with you yet?
I've continued to dig in to this in my spare time and I've found the issue.
It's a use-after-free, rather than any sort of memory smashing. ORC is
currently failing to deregister the EH-frame section when the JIT is torn
down (but *is* deallocating the memory for it). Normally that's not
disastrous (though it does
2017 Mar 08
2
ORC C Interface & JITEventListeners
Hi,
I am working on using LLVM to compile parts of longrunning PostgreSQL
queries into native code for faster code execution. As postgres is,
nearly, entirely written in C and has long-lived (5 years) supported
branches (making the higher API stability important), I'm currently
using the C API.
I started out using MCJIT but it looks like that's slowly on the way
out. My current concern