[llvm] 5b5f594 - [DAGCombiner] Replace call getSExtOrTrunc with a truncate. NFC

Craig Topper via llvm-commits llvm-commits at lists.llvm.org
Wed Apr 6 10:00:05 PDT 2022


Author: Craig Topper
Date: 2022-04-06T09:59:45-07:00
New Revision: 5b5f59428cc6f28bdc37fbf5fc375d7d3840f953

URL: https://github.com/llvm/llvm-project/commit/5b5f59428cc6f28bdc37fbf5fc375d7d3840f953
DIFF: https://github.com/llvm/llvm-project/commit/5b5f59428cc6f28bdc37fbf5fc375d7d3840f953.diff

LOG: [DAGCombiner] Replace call getSExtOrTrunc with a truncate. NFC

The extend case should never occur. The sign extend would be an
arbitrary choice, remove it to avoid confusion.

Added: 
    

Modified: 
    llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp

Removed: 
    


################################################################################
diff  --git a/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp b/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
index 0e4bb65818434..bcb6c931b2b7a 100644
--- a/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
+++ b/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
@@ -19474,8 +19474,9 @@ SDValue DAGCombiner::visitEXTRACT_VECTOR_ELT(SDNode *N) {
     // EXTRACT_VECTOR_ELT may widen the extracted vector.
     SDValue InOp = VecOp.getOperand(0);
     if (InOp.getValueType() != ScalarVT) {
-      assert(InOp.getValueType().isInteger() && ScalarVT.isInteger());
-      return DAG.getSExtOrTrunc(InOp, DL, ScalarVT);
+      assert(InOp.getValueType().isInteger() && ScalarVT.isInteger() &&
+             InOp.getValueType().bitsGT(ScalarVT));
+      return DAG.getNode(ISD::TRUNCATE, DL, ScalarVT, InOp);
     }
     return InOp;
   }


        


More information about the llvm-commits mailing list