Free and vaarg are not really volatile.
authorChris Lattner <sabre@nondot.org>
Thu, 22 May 2008 03:23:06 +0000 (03:23 +0000)
committerChris Lattner <sabre@nondot.org>
Thu, 22 May 2008 03:23:06 +0000 (03:23 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51407 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Analysis/AliasSetTracker.cpp

index 228bb80ae3b8a1866d50048116031d057be4072d..398bf5aca5b4371ee5251711611e37466856b059 100644 (file)
@@ -284,20 +284,13 @@ bool AliasSetTracker::add(StoreInst *SI) {
 
 bool AliasSetTracker::add(FreeInst *FI) {
   bool NewPtr;
-  AliasSet &AS = addPointer(FI->getOperand(0), ~0,
-                            AliasSet::Mods, NewPtr);
-
-  // Free operations are volatile ops (cannot be moved).
-  AS.setVolatile();
+  addPointer(FI->getOperand(0), ~0, AliasSet::Mods, NewPtr);
   return NewPtr;
 }
 
 bool AliasSetTracker::add(VAArgInst *VAAI) {
   bool NewPtr;
-  AliasSet &AS = addPointer(VAAI->getOperand(0), ~0, AliasSet::ModRef, NewPtr);
-  
-  // Treat vaarg instructions as volatile (not to be moved).
-  AS.setVolatile();
+  addPointer(VAAI->getOperand(0), ~0, AliasSet::ModRef, NewPtr);
   return NewPtr;
 }