[llvm-commits] [llvm] r44960 - in /llvm/trunk: include/llvm/Target/ lib/CodeGen/ lib/Target/ lib/Target/ARM/ lib/Target/Alpha/ lib/Target/IA64/ lib/Target/Mips/ lib/Target/PowerPC/ lib/Target/Sparc/ lib/Target/X86/ test/CodeGen/X86/

Evan Cheng evan.cheng at apple.com
Wed Dec 12 17:37:10 PST 2007


On Dec 12, 2007, at 5:07 PM, Chris Lattner wrote:

> On Dec 12, 2007, at 3:12 PM, Evan Cheng wrote:
>>    isLoad = false;
>> -  if (tii_->isTriviallyReMaterializable(MI)) {
>> -    isLoad = MI->getInstrDescriptor()->Flags & M_LOAD_FLAG;
>> +  const TargetInstrDescriptor *TID = MI->getInstrDescriptor();
>> +  if ((TID->Flags & M_IMPLICIT_DEF_FLAG) ||
>> +      tii_->isTriviallyReMaterializable(MI)) {
>> +    isLoad = TID->Flags & M_LOAD_FLAG;
>>      return true;
>>    }
>
> Hi Evan,
>
> At one point were discussed eliminating
> TII::isTriviallyReMaterializable.  The argument is that target
> implementations shouldn't have to know about algorithms, they should
> just describe properties of the target, and the algorithm should
> figure out if it can make the xform from that info.

What do you mean? The targets don't know about the remat algorithm.  
It's just the spiller making use of a some property of the instructions.

Evan

>
> Is this a pipe dream? :)
>
> -Chris
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits




More information about the llvm-commits mailing list