Displaying 8 results from an estimated 8 matches for "ehframeptr".
2007 Dec 11
0
[LLVMdev] Exception handling in JIT
...+ BufferEnd = BufferBegin+ActualSize;
> +
> + unsigned char* ExceptionTable = EmitExceptionTable(&F,
> StartFunction,
> +
> EndFunction);
> +
> + unsigned char* Result = 0;
> + unsigned char* EHFramePtr = 0;
> +
> + const std::vector<Function *> Personalities = MMI-
> >getPersonalities();
> + EHFramePtr = EmitCommonEHFrame(Personalities[MMI-
> >getPersonalityIndex()]);
> +
> + Result = EmitEHFrame(Personalities[Personalities.size() -
> 1], EHF...
2007 Dec 12
3
[LLVMdev] Exception handling in JIT
...ctualSize;
>> +
>> + unsigned char* ExceptionTable = EmitExceptionTable(&F,
>> StartFunction,
>> +
>> EndFunction);
>> +
>> + unsigned char* Result = 0;
>> + unsigned char* EHFramePtr = 0;
>> +
>> + const std::vector<Function *> Personalities = MMI-
>>
>>> getPersonalities();
>>>
>> + EHFramePtr = EmitCommonEHFrame(Personalities[MMI-
>>
>>> getPersonalityIndex()]);
>>>
>...
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
2008 Feb 04
0
[LLVMdev] Exception handling in JIT
...ion();
> + RI = TM.getRegisterInfo();
> + MCE = &mce;
> +
> + unsigned char* ExceptionTable = EmitExceptionTable(&F,
> StartFunction,
> + EndFunction);
> +
> + unsigned char* Result = 0;
> + unsigned char* EHFramePtr = 0;
> +
> + const std::vector<Function *> Personalities = MMI-
> >getPersonalities();
> + EHFramePtr = EmitCommonEHFrame(Personalities[MMI-
> >getPersonalityIndex()]);
> +
> + Result = EmitEHFrame(Personalities[MMI->getPersonalityIndex()],
> EHFramePtr...
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:
2010 Jan 22
0
[LLVMdev] Exception handling question
Interesting. Was this the reason you were getting the recursive compilation error in JIT::runJITOnFunctionUnlocked(...) (isAlreadyCodeGenerating)?
Do you have the time to try your test with 2.7?
Garrison
On Jan 22, 2010, at 17:37, James Williams wrote:
> I've worked around this issue in my test case by simply calling my personality function on program to ensure it's JIT'ed
2010 Jan 25
2
[LLVMdev] Exception handling question
...a3c0, Personality=0x17196b0)
at JITDwarfEmitter.cpp:522
#7 0x0000000000d5fb6f in llvm::JITDwarfEmitter::EmitDwarfTable
(this=0x177a3c0, F=..., jce=...,
StartFunction=0x7ffff7f4c090 "H\203\354\bH\270 @\376\367\377\177",
EndFunction=0x7ffff7f4c0b6 "\315\315c\374\037",
EHFramePtr=@0x7fffffffd8b0) at JITDwarfEmitter.cpp:55
#8 0x0000000000d46599 in finishFunction (this=0x1788380, F=...) at
JITEmitter.cpp:1244
#9 0x0000000000935769 in runOnMachineFunction (this=0x17baf90,
MF=...) at X86CodeEmitter.cpp:137
#10 0x0000000000daac17 in llvm::MachineFunctionPass::runOnFunction
(th...
2010 Jan 22
3
[LLVMdev] Exception handling question
I've worked around this issue in my test case by simply calling my
personality function on program to ensure it's JIT'ed before any unwind
happens.
-- James
2010/1/22 Garrison Venn <gvenn.cfe.dev at gmail.com>
> No, there is no magic. :-)
>
> To me though, the tools are magic, because I have no clue what they are
> doing without looking at them and using them.
>