Skip to content
  1. Dec 17, 2005
  2. Dec 16, 2005
  3. Dec 15, 2005
  4. Dec 14, 2005
    • Nate Begeman's avatar
      Remove a now unused statistic. · 808f7a8a
      Nate Begeman authored
      llvm-svn: 24720
      808f7a8a
    • Nate Begeman's avatar
      Use the new predicate support that Evan Cheng added to remove some code · e37cb604
      Nate Begeman authored
      from the DAGToDAG cpp file.  This adds pattern support for vector and
      scalar fma, which passes test/Regression/CodeGen/PowerPC/fma.ll, and
      does the right thing in the presence of -disable-excess-fp-precision.
      
      Allows us to match:
      void %foo(<4 x float> * %a) {
      entry:
        %tmp1 = load <4 x float> * %a;
        %tmp2 = mul <4 x float> %tmp1, %tmp1
        %tmp3 = add <4 x float> %tmp2, %tmp1
        store <4 x float> %tmp3, <4 x float> *%a
        ret void
      }
      
      As:
      
      _foo:
              li r2, 0
              lvx v0, r2, r3
              vmaddfp v0, v0, v0, v0
              stvx v0, r2, r3
              blr
      
      Or, with llc -disable-excess-fp-precision,
      
      _foo:
              li r2, 0
              lvx v0, r2, r3
              vxor v1, v1, v1
              vmaddfp v1, v0, v0, v1
              vaddfp v0, v1, v0
              stvx v0, r2, r3
              blr
      
      llvm-svn: 24719
      e37cb604
Loading