From 9aecdb51c743f13f88748ef3c539a3e6e6df9e99 Mon Sep 17 00:00:00 2001 From: Michael Liao Date: Fri, 19 Oct 2012 03:17:00 +0000 Subject: [PATCH] Simplify condition checking as CONCAT assume all inputs of the same type. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@166260 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/CodeGen/SelectionDAG/DAGCombiner.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/CodeGen/SelectionDAG/DAGCombiner.cpp b/lib/CodeGen/SelectionDAG/DAGCombiner.cpp index 22270968e3f..17386b74e36 100644 --- a/lib/CodeGen/SelectionDAG/DAGCombiner.cpp +++ b/lib/CodeGen/SelectionDAG/DAGCombiner.cpp @@ -8629,9 +8629,9 @@ SDValue DAGCombiner::visitEXTRACT_SUBVECTOR(SDNode* N) { // (extract_subvec (concat V1, V2, ...), i) // Into: // Vi if possible - for (unsigned i = 0, e = V->getNumOperands(); i != e; ++i) - if (V->getOperand(i).getValueType() != NVT) - return SDValue(); + // Only operand 0 is checked as 'concat' assumes all inputs of the same type. + if (V->getOperand(0).getValueType() != NVT) + return SDValue(); unsigned Idx = dyn_cast(N->getOperand(1))->getZExtValue(); unsigned NumElems = NVT.getVectorNumElements(); assert((Idx % NumElems) == 0 && -- 2.34.1