[llvm] 98ceac4 - [GISel][CombinerHelper] Use uses() instead of operands() when traversing use operands.

Quentin Colombet via llvm-commits llvm-commits at lists.llvm.org
Fri Nov 15 13:55:16 PST 2019


Author: Quentin Colombet
Date: 2019-11-15T13:54:33-08:00
New Revision: 98ceac498167cfadb05c5bd7590525d75bda01c4

URL: https://github.com/llvm/llvm-project/commit/98ceac498167cfadb05c5bd7590525d75bda01c4
DIFF: https://github.com/llvm/llvm-project/commit/98ceac498167cfadb05c5bd7590525d75bda01c4.diff

LOG: [GISel][CombinerHelper] Use uses() instead of operands() when traversing use operands.

NFC

Added: 
    

Modified: 
    llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp

Removed: 
    


################################################################################
diff  --git a/llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp b/llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
index 504f0eb76003..bcf31e16142c 100644
--- a/llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
+++ b/llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
@@ -109,10 +109,7 @@ bool CombinerHelper::matchCombineConcatVectors(MachineInstr &MI, bool &IsUndef,
   // Walk over all the operands of concat vectors and check if they are
   // build_vector themselves or undef.
   // Then collect their operands in Ops.
-  for (const MachineOperand &MO : MI.operands()) {
-    // Skip the instruction definition.
-    if (MO.isDef())
-      continue;
+  for (const MachineOperand &MO : MI.uses()) {
     Register Reg = MO.getReg();
     MachineInstr *Def = MRI.getVRegDef(Reg);
     assert(Def && "Operand not defined");
@@ -121,12 +118,8 @@ bool CombinerHelper::matchCombineConcatVectors(MachineInstr &MI, bool &IsUndef,
       IsUndef = false;
       // Remember the operands of the build_vector to fold
       // them into the yet-to-build flattened concat vectors.
-      for (const MachineOperand &BuildVecMO : Def->operands()) {
-        // Skip the definition.
-        if (BuildVecMO.isDef())
-          continue;
+      for (const MachineOperand &BuildVecMO : Def->uses())
         Ops.push_back(BuildVecMO.getReg());
-      }
       break;
     case TargetOpcode::G_IMPLICIT_DEF: {
       LLT OpType = MRI.getType(Reg);


        


More information about the llvm-commits mailing list