Displaying 6 results from an estimated 6 matches for "eh_typeid".
2007 Dec 12
0
[LLVMdev] Darwin vs exceptions
...ine void @_Z1gv() {
entry:
invoke void @_Z1fv( )
to label %UnifiedReturnBlock unwind label %lpad
...
lpad: ; preds = %entry
%eh_ptr = tail call i8* @llvm.eh.exception( )
%eh_select = tail call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32( i8* %eh_ptr, i32 (...)* @__gxx_personality_v0, i8* A)
%eh_typeid = tail call i32 @llvm.eh.typeid.for.i32( i8* A )
%tmp15 = icmp eq i32 %eh_select, %eh_typeid
br i1 %tmp15, label %bb, label %Unwind
...
Unwind: ; preds = %lpad
tail call i32 (...)* @_Unwind_Resume( i8* %eh_ptr )
unreachable
...
}
define void @_Z1hv() {
entry:
invoke void @_Z1gv( )
to labe...
2007 Dec 10
3
[LLVMdev] Darwin vs exceptions
On Dec 10, 2007, at 11:38 AM, Duncan Sands wrote:
>>> ... If you force a "cleanup" by changing the selector call to:
>>> %eh_select8.i = tail call i32 (i8*, i8*, ...)*
>>> @llvm.eh.selector.i32( i8* %eh_ptr.i, i8* bitcast (i32 (...)*
>>> @__gxx_personality_v0 to i8*), i32 0)
>>> then it doesn't work either: the unwinder observes that
2009 Apr 28
3
[LLVMdev] how to resolve llvm exception IR?
...; <i8*> [#uses=3]
68 %eh_select9 = tail call i32 (i8*, i8*, ...)*
@llvm.eh.selector.i32(i8* %eh_ptr, i8* bitcast (i32 (...)*
@__gxx_personality_v0 to i8*), i8* bitcast
(%struct.__fundamental_type_info_pseudo* @_ZTIi to i8*), i8* null)
; <i32> [#uses=1]
69 %eh_typeid = tail call i32 @llvm.eh.typeid.for.i32(i8*
bitcast (%struct.__fundamental_type_info_pseudo* @_ZTIi to i8*))
; <i32> [#uses=1]
70 %4 = icmp eq i32 %eh_select9, %eh_typeid
; <i1> [#uses=1]
71 br i1 %4, label %bb, label %Unwind
72
73 lpad10: ;...
2009 May 12
1
[LLVMdev] How distinguish Catch all llvm-IR from other catch type ?
Hi,
catch_all.cpp:
1 int main()
2 {
3 try {
4 throw 34;
5 }
6 catch (...) {}
7 }
llvm-gcc -O3 -S -emit-llvm catch_all.cpp -o catch_all.ll:
1 ; ModuleID = 'catch_all.cpp'
2 target datalayout =
2009 Nov 24
0
[LLVMdev] RFC: New Exception Handling Proposal
...tion()
> %eh_select27 = tail call i32 (i8*, i8*, ...)*
> @llvm.eh.selector(i8* %eh_ptr,
> i8* @__gxx_personality_v0,
> i8* @_ZTIi,
> i8* @_ZTIPKc,
> i8* null)
> %eh_typeid = tail call i32 @llvm.eh.typeid.for( @_ZTIi )
> %6 = icmp eq i32 %eh_select27, %eh_typeid
> br i1 %6, label %bb1, label %ppad
>
> ppad:
> %eh_typeid55 = tail call i32 @llvm.eh.typeid.for( @_ZTIPKc )
> %7 = icmp eq i32 %eh_select27, %eh_typeid55
> %8...
2009 Nov 18
11
[LLVMdev] RFC: New Exception Handling Proposal
..._ptr = tail call i8* @llvm.eh.exception()
%eh_select27 = tail call i32 (i8*, i8*, ...)*
@llvm.eh.selector(i8* %eh_ptr,
i8* @__gxx_personality_v0,
i8* @_ZTIi,
i8* @_ZTIPKc,
i8* null)
%eh_typeid = tail call i32 @llvm.eh.typeid.for( @_ZTIi )
%6 = icmp eq i32 %eh_select27, %eh_typeid
br i1 %6, label %bb1, label %ppad
ppad:
%eh_typeid55 = tail call i32 @llvm.eh.typeid.for( @_ZTIPKc )
%7 = icmp eq i32 %eh_select27, %eh_typeid55
%8 = tail call i8* @__cxa_begin_catch...