From 00ad4a2d170bc129c17ad7d8efe94daad8038796 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Sun, 14 Dec 2003 04:52:31 +0000 Subject: [PATCH] Do not promote volatile alias sets into registers git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10458 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Transforms/Scalar/LICM.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/Transforms/Scalar/LICM.cpp b/lib/Transforms/Scalar/LICM.cpp index 3365e64af05..6046f02563e 100644 --- a/lib/Transforms/Scalar/LICM.cpp +++ b/lib/Transforms/Scalar/LICM.cpp @@ -647,7 +647,7 @@ void LICM::findPromotableValuesInLoop( // 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;