From d8a78889f633c5a60f0a1c7cb60bf9b18817d9d7 Mon Sep 17 00:00:00 2001 From: David Sherwood Date: Wed, 27 May 2020 15:00:00 +0100 Subject: [PATCH] [CodeGen] Fix warning in visitShuffleVector Make sure we only ask for the number of elements after we've bailed out for scalable vectors. Differential revision: https://reviews.llvm.org/D80632 --- llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp b/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp index d40f7f92c4cb0..1dd5cfe1b49fa 100644 --- a/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp +++ b/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp @@ -3458,7 +3458,6 @@ void SelectionDAGBuilder::visitShuffleVector(const User &I) { const TargetLowering &TLI = DAG.getTargetLoweringInfo(); EVT VT = TLI.getValueType(DAG.getDataLayout(), I.getType()); EVT SrcVT = Src1.getValueType(); - unsigned SrcNumElts = SrcVT.getVectorNumElements(); if (all_of(Mask, [](int Elem) { return Elem == 0; }) && VT.isScalableVector()) { @@ -3475,6 +3474,7 @@ void SelectionDAGBuilder::visitShuffleVector(const User &I) { // for targets that support a SPLAT_VECTOR for non-scalable vector types. assert(!VT.isScalableVector() && "Unsupported scalable vector shuffle"); + unsigned SrcNumElts = SrcVT.getVectorNumElements(); unsigned MaskNumElts = Mask.size(); if (SrcNumElts == MaskNumElts) {