[llvm-commits] [llvm] r112402 - /llvm/trunk/lib/Analysis/AliasSetTracker.cpp

Chris Lattner sabre at nondot.org
Sat Aug 28 21:14:48 PDT 2010


Author: lattner
Date: Sat Aug 28 23:14:47 2010
New Revision: 112402

URL: http://llvm.org/viewvc/llvm-project?rev=112402&view=rev
Log:
when merging two alias sets, the result set is volatile if either
of the sets is volatile.  We were dropping the volatile bit of the
merged in set, leading (luckily) to assertions in cases like 
PR7535.  I cannot produce a testcase that repros with opt, but this
is obviously correct.

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

Modified: llvm/trunk/lib/Analysis/AliasSetTracker.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Analysis/AliasSetTracker.cpp?rev=112402&r1=112401&r2=112402&view=diff
==============================================================================
--- llvm/trunk/lib/Analysis/AliasSetTracker.cpp (original)
+++ llvm/trunk/lib/Analysis/AliasSetTracker.cpp Sat Aug 28 23:14:47 2010
@@ -35,6 +35,7 @@
   // Update the alias and access types of this set...
   AccessTy |= AS.AccessTy;
   AliasTy  |= AS.AliasTy;
+  Volatile |= AS.Volatile;
 
   if (AliasTy == MustAlias) {
     // Check that these two merged sets really are must aliases.  Since both





More information about the llvm-commits mailing list