diff --git a/lib/Analysis/DataStructure/DataStructure.cpp b/lib/Analysis/DataStructure/DataStructure.cpp
index 2f64eb0..33c36c3 100644
--- a/lib/Analysis/DataStructure/DataStructure.cpp
+++ b/lib/Analysis/DataStructure/DataStructure.cpp
@@ -751,7 +751,7 @@
 //
 static void markIncompleteNode(DSNode *N) {
   // Stop recursion if no node, or if node already marked...
-  if (N == 0 || (N->isIncomplete())) return;
+  if (N == 0 || N->isIncomplete()) return;
 
   // Actually mark the node
   N->setIncompleteMarker();
@@ -917,7 +917,7 @@
 
   for (unsigned i = 0; i != Nodes.size(); ++i) {
     DSNode *Node = Nodes[i];
-    if (!Node->isIncomplete() && !Node->isModified() && !Node->isRead()) {
+    if (Node->isComplete() && !Node->isModified() && !Node->isRead()) {
       // This is a useless node if it has no mod/ref info (checked above),
       // outgoing edges (which it cannot, as it is not modified in this
       // context), and it has no incoming edges.  If it is a global node it may
diff --git a/lib/Analysis/DataStructure/DataStructureAA.cpp b/lib/Analysis/DataStructure/DataStructureAA.cpp
index 3c89e6d..f39e2ad 100644
--- a/lib/Analysis/DataStructure/DataStructureAA.cpp
+++ b/lib/Analysis/DataStructure/DataStructureAA.cpp
@@ -90,7 +90,7 @@
         unsigned O1 = I->second.getOffset(), O2 = J->second.getOffset();
         
         // We can only make a judgement of one of the nodes is complete...
-        if (!N1->isIncomplete() || !N2->isIncomplete()) {
+        if (N1->isComplete() || N2->isComplete()) {
           if (N1 != N2)
             return NoAlias;   // Completely different nodes.
 
