Displaying 3 results from an estimated 3 matches for "sweep_tim".
Did you mean:
sweep_time
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
...ses=1]
store double %24, double* @mark_time
%25 = load double ()** @hlvm_time ; <double ()*> [#uses=1]
%26 = call double %25() ; <double> [#uses=1]
%27 = call fastcc i8* @gc_sweep(i32 0) ; <i8*> [#uses=0]
%28 = load double* @sweep_time ; <double> [#uses=1]
%29 = load double ()** @hlvm_time ; <double ()*> [#uses=1]
%30 = call double %29() ; <double> [#uses=1]
%31 = fadd double %28, %30 ; <double> [#uses=1]
%32 = fsub double...
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