Displaying 16 results from an estimated 16 matches for "disassemblebuffer".
2010 Apr 27
1
[LLVMdev] llvm-2.7: --with-udis86 failure
.../udis86/udis86-1.7/include' does not seem to be added to the gcc command line but needs to be. Resulting error is:
llvm[1]: Compiling Disassembler.cpp for Debug build
Disassembler.cpp:24:20: warning: udis86.h: No such file or directory
Disassembler.cpp: In function 'std::string llvm::sys::disassembleBuffer(uint8_t*, size_t, uint64_t)':
Disassembler.cpp:56: error: 'ud_t' was not declared in this scope
[etc.]
2008 Mar 30
3
[LLVMdev] Being able to know the jitted code-size before emitting
Hi everyone,
vmkit requires to know the size of a jitted method before emitting the
method. This allows to allocate the correct size for the method. The
attached patch creates this functionality when the flag SizedMemoryCode
is on.
In order to implement this functionality, i had to virtualize some
MachineCodeEmitter functions.
Is it OK to commit the patch?
Thanks,
Nicolas
--------------
2008 Apr 01
2
[LLVMdev] Being able to know the jitted code-size before emitting
...ment(), 8U));
>> +
>> + }
>> +
>> +
>> TheJIT->updateGlobalMapping(F.getFunction(), CurBufferPtr);
>>
>> MBBLocations.clear();
>> @@ -579,12 +614,18 @@
>> DOUT << "Disassembled code:\n"
>> << sys::disassembleBuffer(FnStart, FnEnd-FnStart,
>> (uintptr_t)FnStart);
>> #endif
>> +
>> if (ExceptionHandling) {
>> uintptr_t ActualSize;
>> + if (SizedMemoryCode) {
>> + SizeEmitter sz(LabelLocations);
>> + DE->EmitDwarfTable(F, sz, FnStart, FnEnd)...
2008 Mar 31
0
[LLVMdev] Being able to know the jitted code-size before emitting
...nt(std::max(F.getFunction()->getAlignment(), 8U));
> +
> + }
> +
> +
> TheJIT->updateGlobalMapping(F.getFunction(), CurBufferPtr);
>
> MBBLocations.clear();
> @@ -579,12 +614,18 @@
> DOUT << "Disassembled code:\n"
> << sys::disassembleBuffer(FnStart, FnEnd-FnStart,
> (uintptr_t)FnStart);
> #endif
> +
> if (ExceptionHandling) {
> uintptr_t ActualSize;
> + if (SizedMemoryCode) {
> + SizeEmitter sz(LabelLocations);
> + DE->EmitDwarfTable(F, sz, FnStart, FnEnd);
> + ActualSize = sz.ge...
2008 Apr 01
0
[LLVMdev] Being able to know the jitted code-size before emitting
...;> + }
>>> +
>>> +
>>> TheJIT->updateGlobalMapping(F.getFunction(), CurBufferPtr);
>>>
>>> MBBLocations.clear();
>>> @@ -579,12 +614,18 @@
>>> DOUT << "Disassembled code:\n"
>>> << sys::disassembleBuffer(FnStart, FnEnd-FnStart,
>>> (uintptr_t)FnStart);
>>> #endif
>>> +
>>> if (ExceptionHandling) {
>>> uintptr_t ActualSize;
>>> + if (SizedMemoryCode) {
>>> + SizeEmitter sz(LabelLocations);
>>> + DE->EmitDwarf...
2008 Apr 04
3
[LLVMdev] Being able to know the jitted code-size before emitting
...t;>>> +
>>>> TheJIT->updateGlobalMapping(F.getFunction(), CurBufferPtr);
>>>>
>>>> MBBLocations.clear();
>>>> @@ -579,12 +614,18 @@
>>>> DOUT << "Disassembled code:\n"
>>>> << sys::disassembleBuffer(FnStart, FnEnd-FnStart,
>>>> (uintptr_t)FnStart);
>>>> #endif
>>>> +
>>>> if (ExceptionHandling) {
>>>> uintptr_t ActualSize;
>>>> + if (SizedMemoryCode) {
>>>> + SizeEmitter sz(LabelLocations);
>>...
2008 Apr 05
2
[LLVMdev] Being able to know the jitted code-size before emitting
...eJIT->updateGlobalMapping(F.getFunction(), CurBufferPtr);
>>>>>>
>>>>>> MBBLocations.clear();
>>>>>> @@ -579,12 +614,18 @@
>>>>>> DOUT << "Disassembled code:\n"
>>>>>> << sys::disassembleBuffer(FnStart, FnEnd-FnStart,
>>>>>> (uintptr_t)FnStart);
>>>>>> #endif
>>>>>> +
>>>>>> if (ExceptionHandling) {
>>>>>> uintptr_t ActualSize;
>>>>>> + if (SizedMemoryCode) {
>>>>&g...
2008 Apr 05
0
[LLVMdev] Being able to know the jitted code-size before emitting
...balMapping(F.getFunction(), CurBufferPtr);
>>>>>>>
>>>>>>> MBBLocations.clear();
>>>>>>> @@ -579,12 +614,18 @@
>>>>>>> DOUT << "Disassembled code:\n"
>>>>>>> << sys::disassembleBuffer(FnStart, FnEnd-FnStart,
>>>>>>> (uintptr_t)FnStart);
>>>>>>> #endif
>>>>>>> +
>>>>>>> if (ExceptionHandling) {
>>>>>>> uintptr_t ActualSize;
>>>>>>> + if (SizedMemoryCod...
2008 Apr 04
0
[LLVMdev] Being able to know the jitted code-size before emitting
...;>>>> TheJIT->updateGlobalMapping(F.getFunction(), CurBufferPtr);
>>>>>
>>>>> MBBLocations.clear();
>>>>> @@ -579,12 +614,18 @@
>>>>> DOUT << "Disassembled code:\n"
>>>>> << sys::disassembleBuffer(FnStart, FnEnd-FnStart,
>>>>> (uintptr_t)FnStart);
>>>>> #endif
>>>>> +
>>>>> if (ExceptionHandling) {
>>>>> uintptr_t ActualSize;
>>>>> + if (SizedMemoryCode) {
>>>>> + SizeEmitter sz...
2008 Apr 07
2
[LLVMdev] Being able to know the jitted code-size before emitting
...tion(), CurBufferPtr);
>>>>>>>>
>>>>>>>> MBBLocations.clear();
>>>>>>>> @@ -579,12 +614,18 @@
>>>>>>>> DOUT << "Disassembled code:\n"
>>>>>>>> << sys::disassembleBuffer(FnStart, FnEnd-FnStart,
>>>>>>>> (uintptr_t)FnStart);
>>>>>>>> #endif
>>>>>>>> +
>>>>>>>> if (ExceptionHandling) {
>>>>>>>> uintptr_t ActualSize;
>>>>>>>>...
2008 Apr 07
0
[LLVMdev] Being able to know the jitted code-size before emitting
...tr);
>>>>>>>>>
>>>>>>>>> MBBLocations.clear();
>>>>>>>>> @@ -579,12 +614,18 @@
>>>>>>>>> DOUT << "Disassembled code:\n"
>>>>>>>>> << sys::disassembleBuffer(FnStart, FnEnd-FnStart,
>>>>>>>>> (uintptr_t)FnStart);
>>>>>>>>> #endif
>>>>>>>>> +
>>>>>>>>> if (ExceptionHandling) {
>>>>>>>>> uintptr_t ActualSize;
>>>&...
2008 Apr 17
1
[LLVMdev] Being able to know the jitted code-size before emitting
Thx again Evan for the review. Here's a new patch for the JIT in itself.
The major changes are:
1) A JITMemoryManager now has a flag saying "I require to know the size
of what you want to emit"
2) DwarfJITEmitter is augmented with GetSize* functions
3) JITEmitter::startFunction checks if the JITMemoryManager requires to
know the size. If so, it computes it and gives it through the
2008 Feb 04
0
[LLVMdev] Exception handling in JIT
...}
> +
> private:
> void *getPointerToGlobal(GlobalValue *GV, void *Reference, bool
> NoNeedStub);
> void *getPointerToGVLazyPtr(GlobalValue *V, void *Reference,
> @@ -544,7 +579,25 @@
> DOUT << "Disassembled code:\n"
> << sys::disassembleBuffer(FnStart, FnEnd-FnStart,
> (uintptr_t)FnStart);
> #endif
> -
> + if (ExceptionHandling) {
> + uintptr_t ActualSize;
> + SavedBufferBegin = BufferBegin;
> + SavedBufferEnd = BufferEnd;
> + SavedCurBufferPtr = CurBufferPtr;
> +
> + BufferBegin = CurBuffe...
2008 Feb 01
2
[LLVMdev] Exception handling in JIT
Dear all,
Here's a new patch with Evan's comments (thx Evan!) and some cleanups.
Now the (duplicated) exception handling code is in a new file:
lib/ExecutionEngine/JIT/JITDwarfEmitter.
This patch should work on linux/x86 and linux/ppc (tested).
Nicolas
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: jit-exceptions.patch
URL:
2007 Dec 11
0
[LLVMdev] Exception handling in JIT
...,7 @@
> TheJIT->updateGlobalMapping(F.getFunction(), CurBufferPtr);
>
> MBBLocations.clear();
> + if (ExceptionHandling) DE->startFunction(F);
> }
>
> bool JITEmitter::finishFunction(MachineFunction &F) {
> @@ -504,6 +1190,7 @@
> << sys::disassembleBuffer(FnStart, FnEnd-FnStart,
> (uintptr_t)FnStart);
> #endif
>
> + if (ExceptionHandling) DE->finishFunction(F, FnStart, FnEnd);
> return false;
> }
>
> Index: lib/ExecutionEngine/JIT/JIT.h
> ===================================================================
> -...
2007 Dec 10
2
[LLVMdev] Exception handling in JIT
Hi everyone,
Here's a patch that enables exception handling when jitting. I've
copy/pasted _many_code from lib/Codegen/DwarfWriter.cpp, so we may need
to factorize it, but the functionality is there and I'm very happy with
it :)
lli should now be able to execute the output from llvm-gcc when using
exceptions (the UnwindInst instruction is not involved in this patch).
Just add the