[LLVMdev] simple way to print disassembly of final code from jit?
nhowell at ebay.com
Wed Jul 7 00:45:40 PDT 2010
If you can manage windbg, you can use "uF (address|symbol)" to dump out a decent function scoped disassembly. Docs are here: http://msdn.microsoft.com/en-us/library/ff558942(VS.85).aspx
From: llvmdev-bounces at cs.uiuc.edu [mailto:llvmdev-bounces at cs.uiuc.edu] On Behalf Of Bill O'Hara
Sent: Tuesday, July 06, 2010 9:40 PM
To: Reid Kleckner
Cc: llvmdev at cs.uiuc.edu
Subject: Re: [LLVMdev] simple way to print disassembly of final code from jit?
Thanks Reid - I'm on Windows. I guess I just assumed I was missing
something obvious in how to hook up the JIT and disassembler! Given
the nice looking disassembly code I found, I thought people would be
doing it all the time :-)
On Tue, Jul 6, 2010 at 8:41 PM, Reid Kleckner <reid.kleckner at gmail.com> wrote:
> If you're on a recent flavor of Linux, you may be able to just go into
> gdb and type "disas <pointer-to-JITed-code>". More detail here:
> If you still want to do it programmatically, I think you might be
> stuck. IIRC the length known by the JIT memory allocator is an
> overestimate (it's rounded up for alignment), so the disassembler will
> hit garbage at the end.
> On Tue, Jul 6, 2010 at 3:07 PM, Bill O'Hara <billtohara at gmail.com> wrote:
>> With the new llvm-mc code for disassembling, what is the recommended
>> way to disassemble the final code produced by a JIT compiler backend?
>> (Eg. in the toy.cpp example from the tutorial).
>> I can get the void* for the final code, but I don't know its length -
>> superficially at least it appears I need to know the length to
>> disassemble it as a buffer?
>> LLVM Developers mailing list
>> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
LLVM Developers mailing list
LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
More information about the llvm-dev