r333851 - [X86] Pass ArrayRef instead of SmallVectorImpl& to the X86 builtin helper functions. NFC

Craig Topper via cfe-commits cfe-commits at lists.llvm.org
Sun Jun 3 12:02:58 PDT 2018


Author: ctopper
Date: Sun Jun  3 12:02:57 2018
New Revision: 333851

URL: http://llvm.org/viewvc/llvm-project?rev=333851&view=rev
Log:
[X86] Pass ArrayRef instead of SmallVectorImpl& to the X86 builtin helper functions. NFC

Modified:
    cfe/trunk/lib/CodeGen/CGBuiltin.cpp

Modified: cfe/trunk/lib/CodeGen/CGBuiltin.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/CGBuiltin.cpp?rev=333851&r1=333850&r2=333851&view=diff
==============================================================================
--- cfe/trunk/lib/CodeGen/CGBuiltin.cpp (original)
+++ cfe/trunk/lib/CodeGen/CGBuiltin.cpp Sun Jun  3 12:02:57 2018
@@ -8263,32 +8263,32 @@ static Value *getMaskVecValue(CodeGenFun
 }
 
 static Value *EmitX86MaskedStore(CodeGenFunction &CGF,
-                                 SmallVectorImpl<Value *> &Ops,
+                                 ArrayRef<Value *> Ops,
                                  unsigned Align) {
   // Cast the pointer to right type.
-  Ops[0] = CGF.Builder.CreateBitCast(Ops[0],
+  Value *Ptr = CGF.Builder.CreateBitCast(Ops[0],
                                llvm::PointerType::getUnqual(Ops[1]->getType()));
 
   Value *MaskVec = getMaskVecValue(CGF, Ops[2],
                                    Ops[1]->getType()->getVectorNumElements());
 
-  return CGF.Builder.CreateMaskedStore(Ops[1], Ops[0], Align, MaskVec);
+  return CGF.Builder.CreateMaskedStore(Ops[1], Ptr, Align, MaskVec);
 }
 
 static Value *EmitX86MaskedLoad(CodeGenFunction &CGF,
-                                SmallVectorImpl<Value *> &Ops, unsigned Align) {
+                                ArrayRef<Value *> Ops, unsigned Align) {
   // Cast the pointer to right type.
-  Ops[0] = CGF.Builder.CreateBitCast(Ops[0],
+  Value *Ptr = CGF.Builder.CreateBitCast(Ops[0],
                                llvm::PointerType::getUnqual(Ops[1]->getType()));
 
   Value *MaskVec = getMaskVecValue(CGF, Ops[2],
                                    Ops[1]->getType()->getVectorNumElements());
 
-  return CGF.Builder.CreateMaskedLoad(Ops[0], Align, MaskVec, Ops[1]);
+  return CGF.Builder.CreateMaskedLoad(Ptr, Align, MaskVec, Ops[1]);
 }
 
 static Value *EmitX86MaskLogic(CodeGenFunction &CGF, Instruction::BinaryOps Opc,
-                              unsigned NumElts, SmallVectorImpl<Value *> &Ops,
+                              unsigned NumElts, ArrayRef<Value *> Ops,
                               bool InvertLHS = false) {
   Value *LHS = getMaskVecValue(CGF, Ops[0], NumElts);
   Value *RHS = getMaskVecValue(CGF, Ops[1], NumElts);
@@ -8301,12 +8301,12 @@ static Value *EmitX86MaskLogic(CodeGenFu
 }
 
 static Value *EmitX86SubVectorBroadcast(CodeGenFunction &CGF,
-                                        SmallVectorImpl<Value *> &Ops,
+                                        ArrayRef<Value *> Ops,
                                         llvm::Type *DstTy,
                                         unsigned SrcSizeInBits,
                                         unsigned Align) {
   // Load the subvector.
-  Ops[0] = CGF.Builder.CreateAlignedLoad(Ops[0], Align);
+  Value *SubVec = CGF.Builder.CreateAlignedLoad(Ops[0], Align);
 
   // Create broadcast mask.
   unsigned NumDstElts = DstTy->getVectorNumElements();
@@ -8317,7 +8317,7 @@ static Value *EmitX86SubVectorBroadcast(
     for (unsigned j = 0; j != NumSrcElts; ++j)
       Mask.push_back(j);
 
-  return CGF.Builder.CreateShuffleVector(Ops[0], Ops[0], Mask, "subvecbcst");
+  return CGF.Builder.CreateShuffleVector(SubVec, SubVec, Mask, "subvecbcst");
 }
 
 static Value *EmitX86Select(CodeGenFunction &CGF,




More information about the cfe-commits mailing list