[LLVMdev] x86 unwind support[MESSAGE NOT SCANNED]

Mark Shannon marks at dcs.gla.ac.uk
Mon Jul 20 01:58:42 PDT 2009


Hi,

Can I interject something at this point.

Can I suggest that invoke/unwind be renamed DWARF_invoke/DWARF_unwind to 
warn the unwary that if they want lightweight exception handling in 
their Python/ML/whatever implementation they should use some other method.

PS.
Kenneth, why don't you just use setjmp/longjmp directly.
Or, if you want, I can email you my lightweight versions if you want,

Mark.

Duncan Sands wrote:
> Hi,
> 
>> How do either of these prevent DWARF exception handling from working?
> 
> if you throw an exception using your proposed unwind implementation,
> then it wouldn't be caught by dwarf catch/cleanup regions (eg: invoke).
> 
>> Would a landing pad expecting to get an exception object from the
>> exception intrinsics fail to get one in the case of an unwind and
>> crash?
> 
> The landing pad would never be executed in the first place.  This
> is rather bad, for example cleanups won't be run.
> 
>> (Perhaps I should put all this aside and just have my compiler handle
>> my invoke/unwind logic instead of trying to use invoke/unwind
>> instructions.)
> 
> For the moment that is the best solution I think.
> 
> Ciao,
> 
> Duncan.
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
> 




More information about the llvm-dev mailing list