OSDN Git Service

[X86] Remove an unnecessary SmallVector from LowerBUILD_VECTOR.
authorCraig Topper <craig.topper@intel.com>
Thu, 14 Sep 2017 22:47:59 +0000 (22:47 +0000)
committerCraig Topper <craig.topper@intel.com>
Thu, 14 Sep 2017 22:47:59 +0000 (22:47 +0000)
I think this may have existed to convert from SDUse to SDValue, but it doesn't look like its needed now.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@313311 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/X86/X86ISelLowering.cpp

index 3089204..33bc20b 100644 (file)
@@ -7814,15 +7814,13 @@ X86TargetLowering::LowerBUILD_VECTOR(SDValue Op, SelectionDAG &DAG) const {
   // For AVX-length vectors, build the individual 128-bit pieces and use
   // shuffles to put them in place.
   if (VT.is256BitVector() || VT.is512BitVector()) {
-    SmallVector<SDValue, 64> Ops(Op->op_begin(), Op->op_begin() + NumElems);
-
     EVT HVT = EVT::getVectorVT(*DAG.getContext(), ExtVT, NumElems/2);
 
     // Build both the lower and upper subvector.
     SDValue Lower =
-        DAG.getBuildVector(HVT, dl, makeArrayRef(&Ops[0], NumElems / 2));
+        DAG.getBuildVector(HVT, dl, Op->ops().slice(0, NumElems / 2));
     SDValue Upper = DAG.getBuildVector(
-        HVT, dl, makeArrayRef(&Ops[NumElems / 2], NumElems / 2));
+        HVT, dl, Op->ops().slice(NumElems / 2, NumElems /2));
 
     // Recreate the wider vector with the lower and upper part.
     if (VT.is256BitVector())