[llvm-commits] CVS: llvm/lib/Transforms/Scalar/LICM.cpp

Chris Lattner lattner at cs.uiuc.edu
Sat Dec 13 22:53:14 PST 2003


Changes in directory llvm/lib/Transforms/Scalar:

LICM.cpp updated: 1.50 -> 1.51

---
Log message:

Do not promote volatile alias sets into registers


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

Index: llvm/lib/Transforms/Scalar/LICM.cpp
diff -u llvm/lib/Transforms/Scalar/LICM.cpp:1.50 llvm/lib/Transforms/Scalar/LICM.cpp:1.51
--- llvm/lib/Transforms/Scalar/LICM.cpp:1.50	Thu Dec 11 16:23:32 2003
+++ llvm/lib/Transforms/Scalar/LICM.cpp	Sat Dec 13 22:52:31 2003
@@ -647,7 +647,7 @@
     // We can promote this alias set if it has a store, if it is a "Must" alias
     // set, and if the pointer is loop invariant.
     if (!AS.isForwardingAliasSet() && AS.isMod() && AS.isMustAlias() &&
-        isLoopInvariant(AS.begin()->first)) {
+        !AS.isVolatile() && isLoopInvariant(AS.begin()->first)) {
       assert(AS.begin() != AS.end() &&
              "Must alias set should have at least one pointer element in it!");
       Value *V = AS.begin()->first;





More information about the llvm-commits mailing list