Commit f383a47b authored by Simon Pilgrim's avatar Simon Pilgrim
Browse files

[X86][AVX] combineInsertSubvector - remove concat_vectors(load(x),load(x)) --> sub_vbroadcast(x)

D58053/rL354340 added this to EltsFromConsecutiveLoads directly

llvm-svn: 354732
parent 398d0b9e
Loading
Loading
Loading
Loading
+0 −5
Original line number Diff line number Diff line
@@ -41949,11 +41949,6 @@ static SDValue combineInsertSubvector(SDNode *N, SelectionDAG &DAG,
            return Ld;
        }
      }
      // If lower/upper loads are the same and there's no other use of the lower
      // load, then splat the loaded value with a broadcast.
      if (auto *Ld = dyn_cast<LoadSDNode>(peekThroughOneUseBitcasts(SubVec2)))
        if (SubVec2 == SubVec && ISD::isNormalLoad(Ld) && Vec.hasOneUse())
          return DAG.getNode(X86ISD::SUBV_BROADCAST, dl, OpVT, SubVec);
      // If this broadcast/subv_broadcast is inserted into both halves, use a
      // larger broadcast/subv_broadcast.