[llvm-commits] [llvm] r98044 - /llvm/trunk/lib/CodeGen/MachineCSE.cpp

Jakob Stoklund Olesen stoklund at 2pi.dk
Mon Mar 8 20:10:06 PST 2010


On Mar 8, 2010, at 7:56 PM, Jakob Stoklund Olesen wrote:

> Author: stoklund
> Date: Mon Mar  8 21:56:06 2010
> New Revision: 98044
> 
> URL: http://llvm.org/viewvc/llvm-project?rev=98044&view=rev
> Log:
> Don't do illegal cross-class coalescing.
> 
> Modified:
>    llvm/trunk/lib/CodeGen/MachineCSE.cpp
> 
> Modified: llvm/trunk/lib/CodeGen/MachineCSE.cpp
> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/MachineCSE.cpp?rev=98044&r1=98043&r2=98044&view=diff
> ==============================================================================
> --- llvm/trunk/lib/CodeGen/MachineCSE.cpp (original)
> +++ llvm/trunk/lib/CodeGen/MachineCSE.cpp Mon Mar  8 21:56:06 2010
> @@ -95,7 +95,7 @@
>         !SrcSubIdx && !DstSubIdx) {
>       const TargetRegisterClass *SRC = MRI->getRegClass(SrcReg);
>       const TargetRegisterClass *RC  = MRI->getRegClass(Reg);
> -      if (SRC == RC || SRC->hasSubClass(RC) || RC->hasSubClass(SRC)) {
> +      if (SRC == RC || RC->hasSubClass(SRC)) {
>         DEBUG(dbgs() << "Coalescing: " << *DefMI);
>         DEBUG(dbgs() << "*** to: " << *MI);
>         MO.setReg(SrcReg);

That fixed the Blackfin failures. These remain:

LLVM :: CodeGen/ARM/indirectbr.ll
LLVM :: CodeGen/PowerPC/indirectbr.ll
LLVM :: CodeGen/Thumb/2009-08-20-ISelBug.ll
LLVM :: CodeGen/Thumb2/machine-licm.ll
LLVM :: CodeGen/X86/2007-10-16-IllegalAsm.ll
LLVM :: CodeGen/X86/coalesce-esp.ll
LLVM :: CodeGen/X86/pre-split6.ll
LLVM :: CodeGen/X86/stack-color-with-reg.ll






More information about the llvm-commits mailing list