[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/

Chris Lattner clattner at apple.com
Wed Dec 12 17:07:18 PST 2007


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.

Is this a pipe dream? :)

-Chris



More information about the llvm-commits mailing list