Load chain check is not needed
authorJim Laskey <jlaskey@mac.com>
Tue, 26 Sep 2006 17:44:58 +0000 (17:44 +0000)
committerJim Laskey <jlaskey@mac.com>
Tue, 26 Sep 2006 17:44:58 +0000 (17:44 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30613 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/SelectionDAG/DAGCombiner.cpp

index 32a81a044d88a7ebd0087e812fc19b69361e105a..1fe10019679483447351602e2601f444018ade6c 100644 (file)
@@ -240,10 +240,6 @@ class VISIBILITY_HIDDEN DAGCombiner {
     SDOperand BuildUDIV(SDNode *N);
     SDNode *MatchRotate(SDOperand LHS, SDOperand RHS);
     
-    ///  hasChainUsers - Returns true if one of the users of a load node has the
-    ///  chain result as an operand.
-    bool hasChainUsers(SDNode *Load);
-    
     /// FindBaseOffset - Return true if we can determine base and offset
     /// information from a given pointer operand.  Provides base and offset as a
     /// result.
@@ -2646,7 +2642,7 @@ SDOperand DAGCombiner::visitLOAD(SDNode *N) {
   
   // We can only move the load if it has a user of it's chain result.  Otherwise
   // there is no place to attach it's old chain.
-  if (CombinerAA && hasChainUsers(N)) { 
+  if (CombinerAA) { 
     // Walk up chain skipping non-aliasing memory nodes.
     SDOperand BetterChain = FindBetterChain(N, Chain);
     
@@ -3953,25 +3949,6 @@ SDOperand DAGCombiner::BuildUDIV(SDNode *N) {
   return S;
 }
 
-///  hasChainUsers - Returns true if one of the users of a load node has the
-///  chain result as an operand.
-bool DAGCombiner::hasChainUsers(SDNode *Load) {
-  SDOperand Chain(Load, 1);  // The load's chain result.
-  
-  // For each user of the load.
-  for (SDNode::use_iterator UI = Load->use_begin(), UE = Load->use_end();
-       UI != UE; ++UI) {
-    const SDNode *User = *UI;
-       
-    for (unsigned i = 0, e = User->getNumOperands(); i != e; ++i) {
-      if (User->getOperand(i) == Chain) return true;
-    }
-  }
-  
-  // No luck.
-  return false;
-}
-
 /// FindBaseOffset - Return true if we can determine base and offset information
 /// from a given pointer operand.  Provides base and offset as a result.
 bool DAGCombiner::FindBaseOffset(SDOperand Ptr,