[llvm-commits] [llvm] r60832 - /llvm/trunk/lib/Analysis/MemoryDependenceAnalysis.cpp

Duncan Sands baldrick at free.fr
Wed Dec 10 01:38:47 PST 2008


Author: baldrick
Date: Wed Dec 10 03:38:36 2008
New Revision: 60832

URL: http://llvm.org/viewvc/llvm-project?rev=60832&view=rev
Log:
Don't dereference the end() iterator.  This was
causing a bunch of failures when running
"make ENABLE_EXPENSIVE_CHECKS=1 check".

Modified:
    llvm/trunk/lib/Analysis/MemoryDependenceAnalysis.cpp

Modified: llvm/trunk/lib/Analysis/MemoryDependenceAnalysis.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Analysis/MemoryDependenceAnalysis.cpp?rev=60832&r1=60831&r2=60832&view=diff

==============================================================================
--- llvm/trunk/lib/Analysis/MemoryDependenceAnalysis.cpp (original)
+++ llvm/trunk/lib/Analysis/MemoryDependenceAnalysis.cpp Wed Dec 10 03:38:36 2008
@@ -21,6 +21,7 @@
 #include "llvm/Function.h"
 #include "llvm/Analysis/AliasAnalysis.h"
 #include "llvm/ADT/Statistic.h"
+#include "llvm/ADT/STLExtras.h"
 #include "llvm/Support/PredIteratorCache.h"
 #include "llvm/Support/Debug.h"
 #include "llvm/Target/TargetData.h"
@@ -401,7 +402,7 @@
     NonLocalDepInfo::iterator Entry = 
       std::upper_bound(Cache.begin(), Cache.begin()+NumSortedEntries,
                        std::make_pair(DirtyBB, MemDepResult()));
-    if (Entry != Cache.begin() && (&*Entry)[-1].first == DirtyBB)
+    if (Entry != Cache.begin() && prior(Entry)->first == DirtyBB)
       --Entry;
     
     MemDepResult *ExistingResult = 0;
@@ -506,7 +507,7 @@
   NonLocalDepInfo::iterator Entry =
     std::upper_bound(Cache->begin(), Cache->begin()+NumSortedEntries,
                      std::make_pair(BB, MemDepResult()));
-  if (Entry != Cache->begin() && (&*Entry)[-1].first == BB)
+  if (Entry != Cache->begin() && prior(Entry)->first == BB)
     --Entry;
   
   MemDepResult *ExistingResult = 0;





More information about the llvm-commits mailing list