diff options
author | Chris Lattner <sabre@nondot.org> | 2008-05-20 22:05:28 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2008-05-20 22:05:28 +0000 |
commit | eb0fdc150a807a5fd1b656c13fdf019d93ff4bc3 (patch) | |
tree | de401a650d31ad111f79e4b8619140f989e61dda /lib/Analysis/AliasSetTracker.cpp | |
parent | 7a9708b984b844b96f308634148f349acb7840c7 (diff) | |
download | external_llvm-eb0fdc150a807a5fd1b656c13fdf019d93ff4bc3.zip external_llvm-eb0fdc150a807a5fd1b656c13fdf019d93ff4bc3.tar.gz external_llvm-eb0fdc150a807a5fd1b656c13fdf019d93ff4bc3.tar.bz2 |
Fix PR2346 by marking vaarg as volatile so that licm doesn't try to
hoist them.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51356 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Analysis/AliasSetTracker.cpp')
-rw-r--r-- | lib/Analysis/AliasSetTracker.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/Analysis/AliasSetTracker.cpp b/lib/Analysis/AliasSetTracker.cpp index 68603e5..228bb80 100644 --- a/lib/Analysis/AliasSetTracker.cpp +++ b/lib/Analysis/AliasSetTracker.cpp @@ -294,7 +294,10 @@ bool AliasSetTracker::add(FreeInst *FI) { bool AliasSetTracker::add(VAArgInst *VAAI) { bool NewPtr; - addPointer(VAAI->getOperand(0), ~0, AliasSet::ModRef, NewPtr); + AliasSet &AS = addPointer(VAAI->getOperand(0), ~0, AliasSet::ModRef, NewPtr); + + // Treat vaarg instructions as volatile (not to be moved). + AS.setVolatile(); return NewPtr; } |