Displaying 7 results from an estimated 7 matches for "cont8".
Did you mean:
cont
2014 Nov 24
1
[LLVMdev] RFC: How to represent SEH (__try / __except) in LLVM IR
...oke.cont7 unwind label %terminate.lpad
invoke.cont7: ; preds = %lpad4
br label %ehcleanup
if.end: ; preds = %invoke.cont6, %invoke.cont2
invoke void @_ZN6MiddleD1Ev(%class.Middle* %middle)
to label %invoke.cont8 unwind label %lpad
invoke.cont8: ; preds = %if.end
br label %try.cont
; Pre-catch cleanup for lpad1
; Continuation of pre-catch cleanup for lpad4
ehcleanup: ; preds = %invoke.cont7, %lpad1
invoke void @_ZN6MiddleD1Ev(%...
2009 Nov 13
0
[LLVMdev] opt -std-compile-opts breaks tail calls
On Nov 13, 2009, at 3:34 AM, Jon Harrop wrote:
>> Point 4 is the one that caused me trouble for some time.
>> Unfortunately
>> it causes a bad interaction with the optimiser, specifically the
>> 'simplifycfg' pass. What seems to happen is that since the function
>> you are calling is marked with 'noreturn', the simplifycfg pass will
>> then
2009 Nov 13
2
[LLVMdev] opt -std-compile-opts breaks tail calls
...; <i1> [#uses=1]
br i1 %40, label %fail6, label %pass4
pass4: ; preds = %pass2
%41 = extractvalue %0 %4, 1 ; <i32> [#uses=1]
%42 = icmp sgt i32 %41, %1 ; <i1> [#uses=1]
br i1 %42, label %cont8, label %fail6
fail6: ; preds = %pass4, %pass2
%43 = call i32 (i8*, ...)* @printf(i8* getelementptr inbounds ([27 x i8]*
@buf5, i64 0, i64 0)) ; <i32> [#uses=0]
call void @exit(i32 1)
br label %cont8
cont8:...
2009 Nov 20
2
[LLVMdev] llc barfing
...; <%0> [#uses=2]
%18 = load i32* @n_visit ; <i32> [#uses=4]
%19 = icmp sge i32 %18, 0 ; <i1> [#uses=1]
br i1 %19, label %pass10, label %fail9
pass7: ; preds = %cont5
br label %cont8
cont8: ; preds = %cont14, %pass7
%20 = add i32 %1, 1 ; <i32> [#uses=1]
%21 = tail call fastcc i8* @"visit_array_aux<`Reference>"(%0 %0, i32 %20) ;
<i8*> [#uses=1]
ret i8* %21
fail9:...
2009 Nov 13
2
[LLVMdev] opt -std-compile-opts breaks tail calls
On Friday 13 November 2009 04:57:43 David Terei wrote:
> I've run into some issues with tail calls in the past, make sure you
> are doing the following:
>
> 1. Call should be marked with tail (obviously)
> 2. Next statement after tail call should be 'return void'
> 3. Use fast call convention for tail calls
> 4. Make sure the function you are calling doesn't
2015 Jan 27
2
[LLVMdev] RFC: Native Windows C++ exception handling
I was thinking about this last night, and I came up with a third alternative which I think looks very promising. It’s basically a re-working of the previous alternative to use the landingpad concept rather than arbitrary fake logic, but it uses a single landing pad for the entire function that mimics the logic of the personality function to dispatch unwinding calls and catch handlers.
I believe
2015 Jan 27
2
[LLVMdev] RFC: Native Windows C++ exception handling
...label %invoke.cont4 unwind label %lpad3
invoke.cont4: ; preds = %invoke.cont2
invoke void @_ZN5InnerD1Ev(%struct.Inner* %inner)
to label %try.cont unwind label %lpad1
try.cont: ; preds = %invoke.cont4, %invoke.cont8
invoke void @_ZN5OuterD1Ev(%struct.Outer* %outer)
to label %try.cont19 unwind label %lpad
try.cont19: ; preds = %try.cont, %invoke.cont17
call void @_Z10keep_goingv()
ret void
lpad: ; preds = %try.co...