search for: registerjiteventlisten

Displaying 14 results from an estimated 14 matches for "registerjiteventlisten".

2017 Oct 11
2
Debugging JIT'ed code with ORC JIT?
...; orcjit tutorials I've seen. > > The GDB support is provided by `GDBJITRegistrationListener` which is > registered to MCJIT directly in the constructor and AFAICT no where > else. Also, since there doesn't seem to be a default (non-noop) > implementation of `ExecutionEngine::RegisterJITEventListener` I > believe you can't just call `RegisterJITEventListener` on non-MCJIT > and expect it to work. > > So while I totally believe one can use > `JITEventListener::createGDBRegistrationListener()` to hook the JIT > with the the gdb registration function, it won't work with...
2017 Oct 11
2
Debugging JIT'ed code with ORC JIT?
Hi Connor, ...The LLVM documentation has a page at > llvm.org/docs/DebuggingJITedCode.html > showing an example of using gdb to debug MCJIT’ed code, but has no mention > of ORC JIT. What debugging support MCJIT has is provided by the RuntimeDyld utility, which ORC shares. I would expect anything in that document to apply to ORC as well, though I haven't tested it personally.
2013 Jul 18
2
[LLVMdev] LLVM 3.3 JIT code speed
...eemed worth mentioning. OK, so I guess our testing is then correct since we are testing actual execution time of the function pointer. > > > What architecture/OS are you testing? 64 bits OSX (10.8.4) > > With LLVM 3.3 you can register a JIT event listener (using ExecutionEngine::RegisterJITEventListener) that MCJIT will call with a copy of the actual object image that gets generated. You could then write that image to a file as a basis for comparing the generated code. You can find a reference implementation of the interface in lib/ExecutionEngine/IntelJITEvents/IntelJITEventListener.cpp. Tha...
2013 Jul 18
0
[LLVMdev] LLVM 3.3 JIT code speed
...either a function pointer is requested or finalizeObject is called. I would guess that you have taken that into account in your measurement technique, but it seemed worth mentioning. What architecture/OS are you testing? With LLVM 3.3 you can register a JIT event listener (using ExecutionEngine::RegisterJITEventListener) that MCJIT will call with a copy of the actual object image that gets generated. You could then write that image to a file as a basis for comparing the generated code. You can find a reference implementation of the interface in lib/ExecutionEngine/IntelJITEvents/IntelJITEventListener.cpp. -An...
2020 Apr 18
2
PerfJITEventListener needs perf-<pid>.map?
I'm trying to use PerfJITEventListener with llvm::orc::LLJITBuilder: 1. perf record -o /tmp/perf.data -- <my_binary_with_event_listener> 2. perf inject -j -v -i /tmp/perf.data -o /tmp/perf.data.jit *jit marker found: ~.debug/jit/llvm-IR-jit-20200417-3c2242/jit-149849.dump* *injecting: ~/.debug/jit/llvm-IR-jit-20200417-3c2242/jit-149849.dump* *write ELF image
2013 Jul 18
2
[LLVMdev] LLVM 3.3 JIT code speed
Le 18 juil. 2013 à 19:07, Eli Friedman <eli.friedman at gmail.com> a écrit : > On Thu, Jul 18, 2013 at 9:07 AM, Stéphane Letz <letz at grame.fr> wrote: >> Hi, >> >> Our DSL LLVM IR emitted code (optimized with -O3 kind of IR ==> IR passes) runs slower when executed with the LLVM 3.3 JIT, compared to what we had with LLVM 3.1. What could be the reason? >>
2014 Jun 24
2
[LLVMdev] Any way get debug output of generated assembly from MCJIT without completely redoing CodeGen?
Yeah, that's probably how I'd do it. Might be useful if you guys want to contribute that as a command line option Kevin. -eric On Tue, Jun 24, 2014 at 3:03 PM, Kevin Modzelewski <kmod at dropbox.com> wrote: > We do this in Pyston using a JITEventListener that just disassembles the > output; it's "it works let's move on"-quality: >
2013 Jul 19
0
[LLVMdev] LLVM 3.3 JIT code speed
...o I guess our testing is then correct since we are testing actual execution time of the function pointer. >> >> >> What architecture/OS are you testing? > > 64 bits OSX (10.8.4) >> >> With LLVM 3.3 you can register a JIT event listener (using ExecutionEngine::RegisterJITEventListener) that MCJIT will call with a copy of the actual object image that gets generated. You could then write that image to a file as a basis for comparing the generated code. You can find a reference implementation of the interface in lib/ExecutionEngine/IntelJITEvents/IntelJITEventListener.cpp. >...
2015 Jun 04
2
[LLVMdev] MCJit interface question
When we were using MCJIT, I could do this: // Attach the event listener Context.EE->RegisterJITEventListener( LLILCJitEventListener::createLLILCJitEventListener( new LLILCJitEventWrapper(&Context))); The event listeners listened for when an object is emitted (NotifyObjectEmitted), and that’s when we’d go through and extract debug info from the ObjectFile. Now, I imagine I’d need to...
2012 Jul 07
2
[LLVMdev] Crash using the JIT on x86 but work on x64
..."; else llvm::errs() << argv[0] << ": unknown error creating ExecE!\n"; exit(1); } // The following functions have no effect if their respective profiling // support wasn't enabled in the build configuration. LLVM_ExecE->RegisterJITEventListener( llvm::JITEventListener::createOProfileJITEventListener()); LLVM_ExecE->RegisterJITEventListener( llvm::JITEventListener::createIntelJITEventListener()); LLVM_ExecE->DisableLazyCompilation(false); voidptr_type = llvm::IntegerType::get(*LLVM_Context, 8)->get...
2018 Mar 26
0
Interest in integrating a linux perf JITEventListener?
...i/lli.cpp b/tools/lli/lli.cpp > index 0823ff469de..9e488a293e2 100644 > --- a/tools/lli/lli.cpp > +++ b/tools/lli/lli.cpp > @@ -546,6 +546,8 @@ int main(int argc, char **argv, char * const *envp) { > JITEventListener::createOProfileJITEventListener()); > EE->RegisterJITEventListener( > JITEventListener::createIntelJITEventListener()); > + EE->RegisterJITEventListener( > + JITEventListener::createPerfJITEventListener()); > > if (!NoLazyCompilation && RemoteMCJIT) { > errs() << "warning: remote...
2016 Dec 29
1
Interest in integrating a linux perf JITEventListener?
Having something like this available in tree would definitely be useful. For simplicity, why don't we start with support for the second style? This is the long term useful one and would be a good starting point for getting the code in tree. Can you give a pointer to the patch so that I can assess the rough complexity? If it's simple enough, I'd be happy to help get it reviewed
2017 Feb 02
0
Interest in integrating a linux perf JITEventListener?
Hi, On 2016-12-29 13:17:50 -0800, Philip Reames wrote: > Having something like this available in tree would definitely be > useful. Cool. > For simplicity, why don't we start with support for the second style? This > is the long term useful one and would be a good starting point for getting > the code in tree. Works for me. > Can you give a pointer to the patch so that
2015 Jun 04
2
[LLVMdev] MCJit interface question
Hi all, So I’m also working on LLILC. Specifically, I have been working on a JITEventListener to pass debug line info to the CoreCLR EE. With Joe’s change, I’ve lost the ability (or as far as I can tell) to attach an event listener. Is there a way within Orc to do the sorts of things that the JITEventListeners do in MCJIT? How would I go about adding a layer to add debugging support? Thanks,