[llvm] r181684 - SLPVectorizer: Swap LHS and RHS. No functionality change.

Nadav Rotem nrotem at apple.com
Sun May 12 22:13:13 PDT 2013


Author: nadav
Date: Mon May 13 00:13:13 2013
New Revision: 181684

URL: http://llvm.org/viewvc/llvm-project?rev=181684&view=rev
Log:
SLPVectorizer: Swap LHS and RHS. No functionality change.


Modified:
    llvm/trunk/lib/Transforms/Vectorize/VecUtils.cpp

Modified: llvm/trunk/lib/Transforms/Vectorize/VecUtils.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Transforms/Vectorize/VecUtils.cpp?rev=181684&r1=181683&r2=181684&view=diff
==============================================================================
--- llvm/trunk/lib/Transforms/Vectorize/VecUtils.cpp (original)
+++ llvm/trunk/lib/Transforms/Vectorize/VecUtils.cpp Mon May 13 00:13:13 2013
@@ -730,15 +730,15 @@ Value *BoUpSLP::vectorizeTree_rec(ArrayR
   case Instruction::Xor: {
     ValueList LHSVL, RHSVL;
     for (int i = 0; i < VF; ++i) {
-      RHSVL.push_back(cast<Instruction>(VL[i])->getOperand(0));
-      LHSVL.push_back(cast<Instruction>(VL[i])->getOperand(1));
+      LHSVL.push_back(cast<Instruction>(VL[i])->getOperand(0));
+      RHSVL.push_back(cast<Instruction>(VL[i])->getOperand(1));
     }
 
-    Value *RHS = vectorizeTree_rec(RHSVL, VF);
     Value *LHS = vectorizeTree_rec(LHSVL, VF);
+    Value *RHS = vectorizeTree_rec(RHSVL, VF);
     IRBuilder<> Builder(GetLastInstr(VL, VF));
     BinaryOperator *BinOp = cast<BinaryOperator>(VL0);
-    Value *V = Builder.CreateBinOp(BinOp->getOpcode(), RHS,LHS);
+    Value *V = Builder.CreateBinOp(BinOp->getOpcode(), LHS,RHS);
 
     for (int i = 0; i < VF; ++i)
       VectorizedValues[VL[i]] = V;





More information about the llvm-commits mailing list