Displaying 20 results from an estimated 1000 matches similar to: "ORC C Interface & JITEventListeners"
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"
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 /
2020 May 20
2
[ORC JIT][MLIR] GDBRegistrationListener "second attempt to perform debug registration" assert
Hi all,
Attention: Lang Hames
I am developing the nGraph MLIR<https://github.com/NervanaSystems/ngraph/tree/master/src/contrib/mlir> implementation and hitting the following assert while running nGraph unit tests:
assert(ObjectBufferMap.find(K) == ObjectBufferMap.end() &&
"Second attempt to perform debug registration.");
Here is a
2020 May 21
2
[ORC JIT][MLIR] GDBRegistrationListener "second attempt to perform debug registration" assert
Hi Adam,
Calls to the listeners should be protected by the RTDyldLayerMutex. Could
you apply the attached patch and share the debugging output from one of the
failing runs?
Regards,
Lang.
On Wed, May 20, 2020 at 8:00 PM David Blaikie <dblaikie at gmail.com> wrote:
> +Lang
>
> On Wed, May 20, 2020 at 4:44 PM Straw, Adam D via llvm-dev <
> llvm-dev at lists.llvm.org>
2017 Oct 11
2
Debugging JIT'ed code with ORC JIT?
HI Yichao,
RTDyldObjectLinkingLayer has a NotifyObjectLoaded hook that you can use to
call NotifyObjectEmitted on your GDBRegistrationListener.
If code is going to be unloaded we would have to add an extra hook to call
NotifyFreeingObject -- that seems totally reasonable to add.
-- Lang.
On Wed, Oct 11, 2017 at 10:44 AM, Yichao Yu <yyc1992 at gmail.com> wrote:
> > What debugging
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
2020 May 26
2
[ORC JIT][MLIR] GDBRegistrationListener "second attempt to perform debug registration" assert
Referring to the log messages from my previous mail… I confused myself (and probably others) by reading the “Adding MemMgr 0x55555959f440“ message as “Registering MemMgr 0x55555959f440”. Thus the address mismatch made no sense. How could we be registering a `MemMgr` address/key that does not match once we arrive in `notifyObjectLoaded` method?
Answer: Because the registrations is NOT coming
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.
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,
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 Jul 23
2
[LLVMdev] ORC and relocations
Hi Lang,
It turns out I also need an ability to tell the object linking layer not to apply any relocations. I need to skip this step below.
The only way I can see I can achieve that is by creating my own ObjectLinkingLayer that would duplicate almost all of orc::ObjectLinkingLayer.
I’d like to avoid that. An alternative it to pass a flag to orc::ObjectLinkingLayer constructor and
2015 Jul 23
2
[LLVMdev] ORC and relocations
Yes, I’m handling all internal and external relocations manually in NotifyLoadedFtor and I already verified that I get the behavior I need if I comment out the call to resolveRelocations.
I would like to reuse ObjectLinkingLayer::addObjectSet (which eventually calls RuntimeDyld::loadObject), which has the right calls to the memory manager and also RuntimeDyld::registerEHFrames.
I understand that
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
2015 Jul 23
0
[LLVMdev] ORC and relocations
Hi Eugene,
Skipping the call to resolveRelocations would disable many (if not all)
internal relocations too. Is that the desired behavior?
At that point there's not much left for RuntimeDyld (or the
ObjectLinkingLayer) to do. Would something like a NoopLinkingLayer be a
workable solution?
Cheers,
Lang.
On Wed, Jul 22, 2015 at 7:26 PM, Eugene Rozenfeld <
Eugene.Rozenfeld at
2020 Mar 16
4
ORC JIT Weekly #8: Basic OrcV2 C Bindings, MachO and COFF improvements.
Hi All,
I've added a very basic set of C bindings for OrcV2 in 633ea07200e, with an
example in llvm/example/OrcV2Examples/BasicOrcV2CBindings. Development of
the C APIs is being tracked by http://llvm.org/PR31103 -- if you're
interested in C APIs for OrcV2 please get involved. I would especially
appreciate feedback and patches from C API users: I don't have a use case
for the C APIs
2015 Jul 24
0
[LLVMdev] ORC and relocations
Hi Eugene,
Sorry for the delayed reply. Custom relocations weren't something I had in
mind when I designed Orc, so they raise some interesting design questions
which I don't have good answers to yet. (E.g. The interface for the Orc
layer concept assumes that there's a RuntimeDyld instance embedded at the
bottom of the stack. That's why addModuleSet takes a MemoryManager and
2015 Nov 23
2
COFF::IMAGE_REL_AMD64_REL32 relocation overflow when compiling for x86_64
Some time ago I posted here regarding a relocation overflow on Windows
(among other things), but the issue disappeared and so the thread got left.
I've started this new thread because a) I didn't want to necro the old one
and b) it felt like its own.
I've now encountered the issue again and am noting down all the information
I can get about it whilst it's happening.
The issues is
2015 Jun 30
2
[LLVMdev] ORC and relocations
Hi Lang,
Yes, I can return a non-zero marker value. Are you ok with this version?
void RuntimeDyldImpl::resolveExternalSymbols() {
while (!ExternalSymbolRelocations.empty()) {
StringMap<RelocationList>::iterator i = ExternalSymbolRelocations.begin();
StringRef Name = i->first();
if (Name.size() == 0) {
// This is an absolute symbol, use an address of zero.
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