From 44ab792c47e8f63d35ac5aa8b7297cf76c864821 Mon Sep 17 00:00:00 2001 From: Simon Pilgrim Date: Sat, 23 Feb 2019 18:53:03 +0000 Subject: [PATCH] [X86][AVX] combineInsertSubvector - remove concat_vectors(load(x),load(x)) --> sub_vbroadcast(x) D58053/rL354340 added this to EltsFromConsecutiveLoads directly git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@354732 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Target/X86/X86ISelLowering.cpp | 5 ----- 1 file changed, 5 deletions(-) diff --git a/lib/Target/X86/X86ISelLowering.cpp b/lib/Target/X86/X86ISelLowering.cpp index 1db9f1274d0..c5824b366cd 100644 --- a/lib/Target/X86/X86ISelLowering.cpp +++ b/lib/Target/X86/X86ISelLowering.cpp @@ -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(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. -- 2.50.1