Displaying 20 results from an estimated 7000 matches similar to: "[LLVMdev] simple way to print disassembly of final code from jit?"
2010 Jul 07
3
[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 :-)
b.
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
2010 Jul 07
0
[LLVMdev] simple way to print disassembly of final code from jit?
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:
http://llvm.org/docs/DebuggingJITedCode.html
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
2010 Jul 07
0
[LLVMdev] simple way to print disassembly of final code from jit?
Hi Bill,
I'm coincidently planning right now on doing exactly the same things as you. I haven't yet had a chance to implement the code, but I can point you to how I currently believe you can get access to what you need. If you take a look at the code for the implementation of lvm::JIT::runJITOnFunction(Function *, MachineCodeInfo *), you'll see that if a MachineCodeInfo parameter is
2010 Jul 08
1
[LLVMdev] simple way to print disassembly of final code from jit?
Thanks for all the hints everyone.
Based on your suggestion, O.J., I've added code to toy.cpp from the
tutorial to disassemble.
ready> 1+1;
ready> movabsq $140737353367568, %rax
movsd (%rax), %xmm0
ret
Evaluated to 2.000000
ready>
Which looks correct by inspection - printing the byte array to stdout
and feeding it to llvm-mc offline produces the same code as one would
also
2009 Oct 27
4
[LLVMdev] disassembly/decompiling
Chris Lattner wrote:
>
> On Oct 26, 2009, at 1:00 AM, Howard Chu wrote:
>
>> Hi, just read the LLVM 2.6 release announcement, the bit about llvm-
>> mc caught
>> my attention. I've been looking for a tool to disassemble x86 object
>> files
>> into an IR and then reassemble them into x86_64 object code. The
>> immediate use
>> for them would be
2014 Aug 06
4
[LLVMdev] Looking for ideas on how to make llvm-objdump handle both arm and thumb disassembly from the same object file
Hello Tim, Rafael, Renato and llvmdev,
I’m working to get llvm-objdump handle both arm and thumb disassembly from the same object file similarly to how darwin’s otool(1) works. And I’m looking for implementing direction. I spoke to Jim Grosbach about some ideas and he suggested I send out and email about some of the possibilities. Since none of the ones I could think of are pretty he thought
2013 Oct 10
2
[LLVMdev] [PATCH] R600/SI: Embed disassembly in ELF object
Hi,
This patch adds R600/SI disassembly text to compiled object files, when
a code dump is requested, to assist debugging in Mesa clients.
Here's an example of the output in a Mesa client with a corresponding
patch and RADEON_DUMP_SHADERS set:
Shader Disassembly:
S_WQM_B64 EXEC, EXEC ; BEFE0A7E
S_MOV_B32 M0, SGPR6 ; BEFC0306
2009 Oct 26
2
[LLVMdev] disassembly/decompiling
Hi, just read the LLVM 2.6 release announcement, the bit about llvm-mc caught
my attention. I've been looking for a tool to disassemble x86 object files
into an IR and then reassemble them into x86_64 object code. The immediate use
for them would be to convert driver blobs that some vendors provide for their
hardware (e.g. the Lucent modem driver) so they can be used in a 64 bit
kernel.
2011 Dec 19
2
[LLVMdev] Disassembly arbitrary machine-code byte arrays
Hi,
My apologies if this appears to be a very trivial question -- I have
tried to solve this on my own and I am stuck. Any assistance that
could be provided would be immensely appreciated.
What is the absolute bare minimum that I need to do to disassemble an
array of, say, ARM machine code bytes? Or an array of Thumb machine
code bytes? For example, I might have an array of unsigned chars --
how
2011 Dec 19
0
[LLVMdev] Disassembly arbitrary machine-code byte arrays
Hi Aiden,
The easiest thing I can do is to point you to the source of the "llvm-mc" tool, which does exactly what you ask in its "-disassemble" mode. The code is rather small, so it should be easy to work out.
tools/llvm-mc
Cheers,
James
-----Original Message-----
From: llvmdev-bounces at cs.uiuc.edu [mailto:llvmdev-bounces at cs.uiuc.edu] On Behalf Of Aidan Steele
Sent:
2009 Oct 26
0
[LLVMdev] disassembly/decompiling
On Oct 26, 2009, at 1:00 AM, Howard Chu wrote:
> Hi, just read the LLVM 2.6 release announcement, the bit about llvm-
> mc caught
> my attention. I've been looking for a tool to disassemble x86 object
> files
> into an IR and then reassemble them into x86_64 object code. The
> immediate use
> for them would be to convert driver blobs that some vendors provide
>
2014 Aug 09
2
[LLVMdev] Looking for ideas on how to make llvm-objdump handle both arm and thumb disassembly from the same object file
On Thu, Aug 7, 2014 at 7:09 AM, Rafael Espíndola
<rafael.espindola at gmail.com> wrote:
>> The implementation of llvm-objdump does have a MachODump.cpp for use with the -m option that I could do the a similar hack otool(1) like hack and special case 32-bit ARM cpus. And at least it contains the ugliness. But this does not really help the non -m case and I suspect ELF objects may face
2011 Dec 19
3
[LLVMdev] Disassembly arbitrary machine-code byte arrays
Hi Aiden,
The 'C' based interface you could use in is llvm/include/llvm-c/Disassembler.h, which in there is:
/**
* Disassemble a single instruction using the disassembler context specified in
* the parameter DC. The bytes of the instruction are specified in the
* parameter Bytes, and contains at least BytesSize number of bytes. The
* instruction is at the address specified by the
2016 Feb 01
2
[Hexagon] Failure to disassemble some new-value instructions
Dear list,
I noticed that the Hexagon disassembler has issues with disassembling some firmwares I have. When tracing one of these problems, the handling of some new-value instructions in HexagonDisassembler::getSingleInstruction() turned out to be the cause, specifically this statement:
[lines 384-386 in HexagonDisassembler.cpp in HEAD]
else if (SubregBit)
// Subreg bit should not be
2012 Dec 18
2
[LLVMdev] Issue with instruction decoding / disassembly
I'm currently trying to get llvm-mc --disassemble working for the XCore backend. Up until recently there was no instruction encoding / decoding information on any of the XCore instructions so Im incrementally adding this information at the same time as adding tests for the disassembler. However I've run into a problem and I'm not sure of the best way to solve it. With some of the
2012 Jun 06
3
[LLVMdev] MC disassembler for ARM
Hi Evan,
Thanks for the information!
I've try to use llvm-objdump to disassemble some ARM binary, such as
busybox in android.
./llvm-objdump -arch=arm -d busybox
There are many instructions cannot decode,
:./llvm-objdump: warning: invalid instruction encoding
Did I use llvm-objdump in a correct way?
I think that one possible reason is that llvm-objdump encounter pc relative
data.
2010 Jul 28
1
[LLVMdev] fast way to have jit produce executables
Hi,
I have my simple jit'd language working to my satisfaction. Next, I'd
like to add the ability to compile to standard ELF executables on
Linux (and whatever is appropriate on the other platforms).
Rather than printing assembly language to files and invoking the
assembler and linker, is there a fast way I can convert my JIT to a
static compiler?
Thanks
b.
2010 Oct 29
1
[LLVMdev] Status of AVX support
Hi
Can anyone provide insight on the current status of the AVX support in
LLVM 2.8? I gather from the release notes that the MC assembler
supports it, and clang added support for it.
Does clang support mean intrinsics only, or is there support for
lowering of some sort of gcc vector extension?
If I generate llvm vector instructions, is there support to emit 128
or 256b AVX instructions assuming
2010 May 12
2
[LLVMdev] Linking problems with llvm-2.7, release 64b build with vs2010
Hello,
Following some recent messages about building with Visual Studio 2010,
I have gotten most things to compile in release mode on 64b windows 7.
(Mainly the few errors with 0 -> nullptr in the second argument of the
pair constructor, and making an ECValue constructor public).
I'm falling at the last hurdle though when it comes to the final link:
1>------ Build started: Project:
2012 Oct 17
2
[LLVMdev] R_ARM_ABS32 disassembly with integrated-as
On 17 October 2012 22:23, Greg Fitzgerald <garious at gmail.com> wrote:
> I had to move MCELF.h to "include/llvm/MC" and added a
> MCELFStreamer.h to the same directory. That okay to do?
This is not a trivial question, and I'll let others chip in.
Superficially, you'd think so and it might make sense in the long run,
but you have to consider why it wasn't there