[BasicAA] fix build break by converting the previously introduced assert into an...
authorNuno Lopes <nunoplopes@sapo.pt>
Thu, 9 Nov 2017 17:06:42 +0000 (17:06 +0000)
committerNuno Lopes <nunoplopes@sapo.pt>
Thu, 9 Nov 2017 17:06:42 +0000 (17:06 +0000)
Apparently V1Size == -1 doest imply V2Size == -1, which is a bit surprising to me.

llvm-svn: 317812

llvm/lib/Analysis/BasicAliasAnalysis.cpp

index e68dd04..528806a 100644 (file)
@@ -1289,10 +1289,10 @@ AliasResult BasicAAResult::aliasGEP(const GEPOperator *GEP1, uint64_t V1Size,
   // greater, we know they do not overlap.
   if (GEP1BaseOffset != 0 && DecompGEP1.VarIndices.empty()) {
     if (GEP1BaseOffset >= 0) {
-      if (V2Size != MemoryLocation::UnknownSize) {
+      if (V1Size != MemoryLocation::UnknownSize &&
+          V2Size != MemoryLocation::UnknownSize) {
         if ((uint64_t)GEP1BaseOffset < V2Size)
           return PartialAlias;
-        assert(V1Size != MemoryLocation::UnknownSize);
         return NoAlias;
       }
     } else {