Displaying 5 results from an estimated 5 matches for "unwindcontext".
Did you mean:
_unwind_context
2009 May 20
2
[LLVMdev] Getting exceptions to work?
...nvoke fastcc void @throwSomething() to label %nounwind unwind
label %catch;
catch:
%eh_ptr = call i8* @llvm.eh.exception();
%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*),
i32 1)
call void @print(i8* bitcast ([6 x i8]* @str_catch to i8 *))
ret i32 0
nounwind:
call void @print(i8* bitcast ([8 x i8]* @str_nocatch to i8 *))
ret i32 -1
}
However, when I use my own personality function...
2009 May 20
0
[LLVMdev] Getting exceptions to work?
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*),
> i32 1)
try changing i32 1 to i32 0. Also, feel free to send me something
I can compile, and I will try it here.
Ciao,
Duncan.
2009 May 19
0
[LLVMdev] Getting exceptions to work?
Talin wrote:
> Nicolas Geoffray wrote:
>> Hi Talin,
>>
>> You're not using the llvm intrinsics for exception handling, so your
>> code won't work. Using _Unwind_RaiseException should be OK, but your
>> main function must at least use llvm.eh.exception,
>> llvm.eh.selector.i32/64 and probably __cxa_begin_catch and __cxa_end_catch.
>>
>
2009 May 19
5
[LLVMdev] Getting exceptions to work?
Nicolas Geoffray wrote:
> Hi Talin,
>
> You're not using the llvm intrinsics for exception handling, so your
> code won't work. Using _Unwind_RaiseException should be OK, but your
> main function must at least use llvm.eh.exception,
> llvm.eh.selector.i32/64 and probably __cxa_begin_catch and __cxa_end_catch.
>
Let me ask a follow-up question then - if the
2009 May 20
3
[LLVMdev] Getting exceptions to work?
...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*),
>> i32 1)
>>
>
> try changing i32 1 to i32 0. Also, feel free to send me something
> I can compile, and I will try it here.
>
File attached.
I compile and run with:
llvm-as -f ExTest.ll && llc...