Eliminate unnecessary operands-list traversals.
authorDan Gohman <gohman@apple.com>
Tue, 27 Jan 2009 02:37:43 +0000 (02:37 +0000)
committerDan Gohman <gohman@apple.com>
Tue, 27 Jan 2009 02:37:43 +0000 (02:37 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63088 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/X86/X86ISelDAGToDAG.cpp

index 04ba430d2d6e7d3a0bf1ed9b273175a6c5dbf630..c5a6edd87a77da0f87f7b2accf3d668f3df0068a 100644 (file)
@@ -242,12 +242,9 @@ namespace {
 static SDNode *findFlagUse(SDNode *N) {
   unsigned FlagResNo = N->getNumValues()-1;
   for (SDNode::use_iterator I = N->use_begin(), E = N->use_end(); I != E; ++I) {
-    SDNode *User = *I;
-    for (unsigned i = 0, e = User->getNumOperands(); i != e; ++i) {
-      SDValue Op = User->getOperand(i);
-      if (Op.getNode() == N && Op.getResNo() == FlagResNo)
-        return User;
-    }
+    SDUse &Use = I.getUse();
+    if (Use.getResNo() == FlagResNo)
+      return Use.getUser();
   }
   return NULL;
 }