[llvm-commits] CVS: llvm/lib/Analysis/BasicAliasAnalysis.cpp

Chris Lattner lattner at cs.uiuc.edu
Sun Nov 28 12:30:29 PST 2004



Changes in directory llvm/lib/Analysis:

BasicAliasAnalysis.cpp updated: 1.57 -> 1.58
---
Log message:

Fix DeadStoreElimination/2004-11-28-LiveStoreDeleted.ll


---
Diffs of the changes:  (+3 -3)

Index: llvm/lib/Analysis/BasicAliasAnalysis.cpp
diff -u llvm/lib/Analysis/BasicAliasAnalysis.cpp:1.57 llvm/lib/Analysis/BasicAliasAnalysis.cpp:1.58
--- llvm/lib/Analysis/BasicAliasAnalysis.cpp:1.57	Fri Nov 26 14:01:48 2004
+++ llvm/lib/Analysis/BasicAliasAnalysis.cpp	Sun Nov 28 14:30:15 2004
@@ -297,7 +297,7 @@
         // undefined to load or store bytes before or after an object).
         const Type *ElTy = cast<PointerType>(O1->getType())->getElementType();
         unsigned GlobalSize = getTargetData().getTypeSize(ElTy);
-        if (GlobalSize < V2Size)
+        if (GlobalSize < V2Size && V2Size != ~0U)
           return NoAlias;
       }
   }
@@ -313,7 +313,7 @@
         // undefined to load or store bytes before or after an object).
         const Type *ElTy = cast<PointerType>(O2->getType())->getElementType();
         unsigned GlobalSize = getTargetData().getTypeSize(ElTy);
-        if (GlobalSize < V1Size)
+        if (GlobalSize < V1Size && V1Size != ~0U)
           return NoAlias;
       }
   }
@@ -496,7 +496,7 @@
   //        A[i][0] != A[j][1] iff (&A[0][1]-&A[0][0] >= std::max(G1S, G2S))
   //
   unsigned SizeMax = std::max(G1S, G2S);
-  if (SizeMax == ~0U) return MayAlias; // Avoid frivolous work...
+  if (SizeMax == ~0U) return MayAlias; // Avoid frivolous work.
 
   // Scan for the first operand that is constant and unequal in the
   // two getelementptrs...






More information about the llvm-commits mailing list