Displaying 6 results from an estimated 6 matches for "unwind_raiseexcept".
2010 Jan 22
0
[LLVMdev] Exception handling question
...as you pointed out, is that your personality
> function is not called at all.
> Even if you did nothing in the personality function, associated with the
> setup caused by
> llvm.eh.selector, but returned _URC_CONTINUE_UNWIND (8), it should still
> be called.
this is not correct. Unwind_RaiseException will just exit without unwinding
the stack if all personality functions return _URC_CONTINUE_UNWIND.
Ciao,
Duncan.
2009 May 21
0
[LLVMdev] Getting exceptions to work?
Hi Talin, if you change @throwSomething so that it prints a message
if the _Unwind_RaiseException call returns, then you will see that
it does in fact return.
define internal fastcc void @throwSomething() {
entry:
%throwable = malloc %Throwable
call fastcc void @Throwable.construct(%Throwable* %throwable)
%unwindInfo = getelementptr %Throwable* %throwable, i32 0,...
2009 May 20
3
[LLVMdev] Getting exceptions to work?
Duncan Sands wrote:
> Hi Talin,
>
>> So I tried what you suggested, and it just gives me a bus error:
>>
>> %eh_select34 = call i32 (i8*, i8*, ...)*
>> @llvm.eh.selector.i32 (
>> i8* %eh_ptr,
>> i8* bitcast (i32 (i32, i32, i64, i8*, %UnwindContext*)*
>> @__gcc_personality_v0 to i8*),
>>
2010 Jan 22
1
[LLVMdev] Exception handling question
...as you pointed out, is that your personality function is not called at all.
>> Even if you did nothing in the personality function, associated with the setup caused by
>> llvm.eh.selector, but returned _URC_CONTINUE_UNWIND (8), it should still be called.
>
> this is not correct. Unwind_RaiseException will just exit without unwinding
> the stack if all personality functions return _URC_CONTINUE_UNWIND.
>
> Ciao,
>
> Duncan.
2009 May 24
1
[LLVMdev] Getting exceptions to work?
Well, after much labor, I think I have managed to create a personality
function that works. But I must say it is frightening how complicated
all of this stuff is.
-- Talin
Duncan Sands wrote:
> Hi Talin, if you change @throwSomething so that it prints a message
> if the _Unwind_RaiseException call returns, then you will see that
> it does in fact return.
>
> define internal fastcc void @throwSomething() {
> entry:
> %throwable = malloc %Throwable
> call fastcc void @Throwable.construct(%Throwable* %throwable)
> %unwindInfo = getelementp...
2010 Jan 22
6
[LLVMdev] Exception handling question
...n the personality function, associated with the setup caused by
llvm.eh.selector, but returned _URC_CONTINUE_UNWIND (8), it should still be called.
Your results are acting like either dwarf exception header info is not emitted (llvm::DwarfExceptionHandling = true;
not executed could affect this), _Unwind_RaiseException(...) is not being called, or the default or another personality
function (_gcc_personality_v0(...)) is called instead by the unwind infrastructure. Although you implied you
dumped the exception headers and found your personality function, I can if you wish instead given you breaks for
gbd so...