[llvm-commits] [llvm] r89021 - in /llvm/trunk: lib/CodeGen/PHIElimination.cpp test/CodeGen/X86/2008-04-15-LiveVariableBug.ll test/CodeGen/X86/stack-color-with-reg.ll

Jakob Stoklund Olesen stoklund at 2pi.dk
Mon Nov 16 17:15:58 PST 2009


On Nov 16, 2009, at 5:10 PM, Evan Cheng wrote:

> 
> On Nov 16, 2009, at 5:07 PM, Jakob Stoklund Olesen wrote:
> 
>> Author: stoklund
>> Date: Mon Nov 16 19:07:22 2009
>> New Revision: 89021
>> 
>> URL: http://llvm.org/viewvc/llvm-project?rev=89021&view=rev
>> Log:
>> Enable -split-phi-edges by default
>> 
>> Modified:
>>   llvm/trunk/lib/CodeGen/PHIElimination.cpp
>>   llvm/trunk/test/CodeGen/X86/2008-04-15-LiveVariableBug.ll
>>   llvm/trunk/test/CodeGen/X86/stack-color-with-reg.ll
>> 
>> Modified: llvm/trunk/lib/CodeGen/PHIElimination.cpp
>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/PHIElimination.cpp?rev=89021&r1=89020&r2=89021&view=diff
>> 
>> ==============================================================================
>> --- llvm/trunk/lib/CodeGen/PHIElimination.cpp (original)
>> +++ llvm/trunk/lib/CodeGen/PHIElimination.cpp Mon Nov 16 19:07:22 2009
>> @@ -39,7 +39,7 @@
>> static cl::opt<bool>
>> SplitEdges("split-phi-edges",
>>           cl::desc("Split critical edges during phi elimination"),
>> -           cl::init(false), cl::Hidden);
>> +           cl::init(true), cl::Hidden);
> 
> Any reason to keep the option around?

Only because there is still a bit of wonkyness. Like the tests below.

I'll remove it later.

>> 
>> ==============================================================================
>> --- llvm/trunk/test/CodeGen/X86/2008-04-15-LiveVariableBug.ll (original)
>> +++ llvm/trunk/test/CodeGen/X86/2008-04-15-LiveVariableBug.ll Mon Nov 16 19:07:22 2009
>> @@ -1,5 +1,9 @@
>> ; RUN: llc < %s -mtriple=x86_64-apple-darwin
>> -; RUN: llc < %s -mtriple=x86_64-apple-darwin -relocation-model=pic -disable-fp-elim -O0 -regalloc=local
>> +
>> +; Globally enabling -split-phi-edges causes LiveVariables to always run.
>> +; LiveVariables trips up the local allocator on this test.
>> +; It doesn't understand the subtleties of subregister imp-kills.
>> +; DONT: llc < %s -mtriple=x86_64-apple-darwin -relocation-model=pic -disable-fp-elim -O0 -regalloc=local
>> 
>> 	%struct.CGPoint = type { double, double }
>> 	%struct.NSArray = type { %struct.NSObject }
>> 
>> Modified: llvm/trunk/test/CodeGen/X86/stack-color-with-reg.ll
>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/stack-color-with-reg.ll?rev=89021&r1=89020&r2=89021&view=diff
>> 
>> ==============================================================================
>> --- llvm/trunk/test/CodeGen/X86/stack-color-with-reg.ll (original)
>> +++ llvm/trunk/test/CodeGen/X86/stack-color-with-reg.ll Mon Nov 16 19:07:22 2009
>> @@ -1,6 +1,8 @@
>> ; RUN: llc < %s -mtriple=x86_64-apple-darwin10 -relocation-model=pic -disable-fp-elim -color-ss-with-regs -stats -info-output-file - > %t
>> ; RUN:   grep stackcoloring %t | grep "stack slot refs replaced with reg refs"  | grep 6
>> -; RUN:   grep asm-printer %t   | grep 177
>> +
>> +; Obviously the only correct way of translating this function is with 175 instructions. Not 177 (duh!)
>> +; RUN:   grep asm-printer %t   | grep 175






More information about the llvm-commits mailing list