Displaying 3 results from an estimated 3 matches for "exception_caught_flag".
2012 Apr 08
0
[LLVMdev] Catching C++ exceptions, cleaning up, rethrowing
...for you, all the better. ;-) )
A snippet of the IR code is:
> entry:
> %add_it = alloca %add_iterator, align 8
> %y_it = alloca %singleton_iterator, align 8
> %x_it = alloca %singleton_iterator, align 8
> %y = alloca %item, align 8
> %x = alloca %item, align 8
> %exception_caught_flag = alloca i8, align 1
> store i8 0, i8* %exception_caught_flag, align 1
> %caught_result_storage = alloca %0, align 8
> store %0 zeroinitializer, %0* %caught_result_storage, align 8
> %0 = bitcast %item* %x to void*
> invoke void @thunk_item_M_new_i(void* %0, i32 1)
>...
2012 Apr 08
2
[LLVMdev] Catching C++ exceptions, cleaning up, rethrowing
On Apr 4, 2012, at 9:32 PM, Paul J. Lucas wrote:
> On Mar 23, 2012, at 4:46 PM, Bill Wendling wrote:
[...]
> This all seems to work just fine. I can throw a C++ exception either in a C++ object's constructor or in an ordinary member function and the stack unwinds correctly (the object's destructors are called) and the exception is propagated back up the C++ code that called the
2012 Apr 09
5
[LLVMdev] Catching C++ exceptions, cleaning up, rethrowing
...od, except for one comment (see below).
>> entry:
>> %add_it = alloca %add_iterator, align 8
>> %y_it = alloca %singleton_iterator, align 8
>> %x_it = alloca %singleton_iterator, align 8
>> %y = alloca %item, align 8
>> %x = alloca %item, align 8
>> %exception_caught_flag = alloca i8, align 1
>> store i8 0, i8* %exception_caught_flag, align 1
>> %caught_result_storage = alloca %0, align 8
>> store %0 zeroinitializer, %0* %caught_result_storage, align 8
>> %0 = bitcast %item* %x to void*
>> invoke void @thunk_item_M_new_i(void* %0,...