search for: eh_select14

Displaying 3 results from an estimated 3 matches for "eh_select14".

2007 Dec 09
0
[LLVMdev] Darwin vs exceptions
...l call i32 (...)* @_Unwind_Resume( i8* %eh_ptr ) unreachable ... } define i32 @main() { entry: invoke void @_Z1fv( ) to label %somewhere2 unwind label %lpad2 ... lpad2: ; preds = %entry %eh_ptr = tail call i8* @llvm.eh.exception( ) %eh_select14 = tail call i32 (i8*, i8*, ...)* @llvm.eh.selector.i32( i8* %eh_ptr, i8* bitcast (i32 (...)* @__gxx_personality_v0 to i8*), i8* null ) print_a_message_and_exit ... } And this works fine: main calls _Z1fv which throws an exception. Execution branches to lpad where (empty) cleanup code is run, the...
2007 Dec 09
3
[LLVMdev] Darwin vs exceptions
(Mail system seems to have eaten this, sorry if it's a repeat) On Dec 8, 2007, at 12:48 AM, Duncan Sands wrote: > Hi Dale, > >> - Why was C++ claiming that every selector has a catch-all handler? > > this is easy: because the semantics of invoke require it. Yes, > really. > If unwinding reaches an invoke then control is required to jump to the > unwind basic
2007 Dec 10
3
[LLVMdev] Darwin vs exceptions
...unreachable > ... > } > > define i32 @main() { > entry: > invoke void @_Z1fv( ) > to label %somewhere2 unwind label %lpad2 > ... > lpad2: ; preds = %entry > %eh_ptr = tail call i8* @llvm.eh.exception( ) > %eh_select14 = tail call i32 (i8*, i8*, ...)* > @llvm.eh.selector.i32( i8* %eh_ptr, i8* bitcast (i32 (...)* > @__gxx_personality_v0 to i8*), i8* null ) > print_a_message_and_exit > ... > } > > And this works fine: main calls _Z1fv which throws an exception. > Execution branches t...