Displaying 10 results from an estimated 10 matches for "machinecodeinfo".
2010 Jul 07
0
[LLVMdev] simple way to print disassembly of final code from jit?
...ently 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 supplied, it is populated via a call to setAddress and setSize via the registration of a JITEventListener on the Jitting of the given function. I'm almost certain this is the address and size that is needed by the disassembler. You then...
2010 Jul 08
1
[LLVMdev] simple way to print disassembly of final code from jit?
...ently 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 supplied, it is populated via a call to setAddress and setSize via the registration of a JITEventListener on the Jitting of the given function. I'm almost certain this is the address and size that is needed by the disassembler. You then...
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
2009 Jun 30
2
[LLVMdev] JIT allocates global data in function body memory
...relocations
on it? How can that work? Are you just assuming that everything winds
up at the same addresses? Or is everything PC-relative on your
platform, so all that matters is that globals and the code are in the
same relative positions?
How are you getting the size of the code you need to copy?
MachineCodeInfo didn't exist when you wrote this patch, so I assume
you've written your own JITMemoryManager. Even then, if you JIT more
than one function, and they share any globals, you have to deal with
multiple calls into the MemoryManager and functions that use globals
allocated inside other buffers....
2009 Jun 30
0
[LLVMdev] JIT allocates global data in function body memory
...ny changes to the
existing client code. Beyond that, I am not the kind of person who
thinks there's only one way to do things; I won't object to what you
do as long as it doesn't break what we're using now.
> How are you getting the size of the code you need to copy?
> MachineCodeInfo didn't exist when you wrote this patch, so I assume
> you've written your own JITMemoryManager. Even then, if you JIT more
> than one function, and they share any globals, you have to deal with
> multiple calls into the MemoryManager and functions that use globals
> allocated in...
2009 Jun 30
0
[LLVMdev] JIT allocates global data in function body memory
On Jun 29, 2009, at 5:41 PMPDT, Reid Kleckner wrote:
> So I (think I) found a bug in the JIT:
> http://llvm.org/bugs/show_bug.cgi?id=4483
>
> Basically, globals used by a function are allocated in the same buffer
> as the first code that uses it. However, when you free the machine
> code, you also free the memory holding the global's data. The address
> is still in the
2009 Jun 30
3
[LLVMdev] JIT allocates global data in function body memory
So I (think I) found a bug in the JIT:
http://llvm.org/bugs/show_bug.cgi?id=4483
Basically, globals used by a function are allocated in the same buffer
as the first code that uses it. However, when you free the machine
code, you also free the memory holding the global's data. The address
is still in the GlobalValue map, so any other code using that global
will access freed memory, which
2010 Oct 01
2
[LLVMdev] CMake "sudo make install" & headers
.../LiveVariables.h
-- Installing: /usr/local/llvm-2.8/include/llvm/CodeGen/MachORelocation.h
-- Installing: /usr/local/llvm-2.8/include/llvm/CodeGen/MachineBasicBlock.h
-- Installing: /usr/local/llvm-2.8/include/llvm/CodeGen/MachineCodeEmitter.h
-- Installing: /usr/local/llvm-2.8/include/llvm/CodeGen/MachineCodeInfo.h
-- Installing: /usr/local/llvm-2.8/include/llvm/CodeGen/MachineConstantPool.h
-- Installing: /usr/local/llvm-2.8/include/llvm/CodeGen/MachineDominators.h
-- Installing: /usr/local/llvm-2.8/include/llvm/CodeGen/MachineFrameInfo.h
-- Installing: /usr/local/llvm-2.8/include/llvm/CodeGen/MachineFunct...
2010 Oct 01
0
[LLVMdev] CMake "sudo make install" & headers
On Thu, Sep 30, 2010 at 3:08 PM, Samuel Williams
<space.ship.traveller at gmail.com> wrote:
> Hi,
>
> I might just be doing something stupid, but when I do
>
> $ cmake -DCMAKE_INSTALL_PREFIX=/usr/local/llvm-2.8 -DCMAKE_BUILD_TYPE=Release ..
> $ sudo make install
>
> I don't get the expected headers in
> /usr/local/llvm-2.8/include/llvm
>
> It is
2010 Sep 30
6
[LLVMdev] CMake "sudo make install" & headers
Hi,
I might just be doing something stupid, but when I do
$ cmake -DCMAKE_INSTALL_PREFIX=/usr/local/llvm-2.8 -DCMAKE_BUILD_TYPE=Release ..
$ sudo make install
I don't get the expected headers in
/usr/local/llvm-2.8/include/llvm
It is simply an empty directory.
What am I doing wrong? This is on Mac OS X, CMake 2.8+
Kind regards,
Samuel