Displaying 2 results from an estimated 2 matches for "unwind_blks_".
2012 Apr 05
0
[LLVMdev] Catching C++ exceptions, cleaning up, rethrowing
...nvoke( ctor, normal_blk, unwind_blk, ctor_args );
>
> // Call object's destructor.
> BasicBlock *const dtor_blk = BasicBlock::Create( ctx, "dtor", fn );
> builder.SetInsertPoint( dtor_blk );
> builder.CreateCall( dtor, void_obj_ptr );
> builder.CreateBr( unwind_blks_.back() );
>
> // Catch exception, if any.
> builder.SetInsertPoint( unwind_blk );
> LandingPadInst *const lpad = builder.CreateLandingPad(
> caught_result_type_, personality_fn_, 0
> );
> lpad->setCleanup( true );
> builder.CreateStore( lpad, caught_res...
2012 Mar 23
2
[LLVMdev] Catching C++ exceptions, cleaning up, rethrowing
On Mar 23, 2012, at 4:29 PM, Paul J. Lucas wrote:
> On Mar 23, 2012, at 3:25 PM, Bill Wendling wrote:
>
>> Let's take your example. You will have code that looks like this:
>>
>> extern "C" void thunk_item_M_delete( void *v_that ) {
>> item *that = 0;
>> try {
>> that = static_cast<item*>( v_that );
>>