mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2025-01-05 18:49:06 +00:00
Free and vaarg are not really volatile.
llvm-svn: 51407
This commit is contained in:
parent
fd83f89e21
commit
5a09a5fb88
@ -284,20 +284,13 @@ bool AliasSetTracker::add(StoreInst *SI) {
|
|||||||
|
|
||||||
bool AliasSetTracker::add(FreeInst *FI) {
|
bool AliasSetTracker::add(FreeInst *FI) {
|
||||||
bool NewPtr;
|
bool NewPtr;
|
||||||
AliasSet &AS = addPointer(FI->getOperand(0), ~0,
|
addPointer(FI->getOperand(0), ~0, AliasSet::Mods, NewPtr);
|
||||||
AliasSet::Mods, NewPtr);
|
|
||||||
|
|
||||||
// Free operations are volatile ops (cannot be moved).
|
|
||||||
AS.setVolatile();
|
|
||||||
return NewPtr;
|
return NewPtr;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool AliasSetTracker::add(VAArgInst *VAAI) {
|
bool AliasSetTracker::add(VAArgInst *VAAI) {
|
||||||
bool NewPtr;
|
bool NewPtr;
|
||||||
AliasSet &AS = addPointer(VAAI->getOperand(0), ~0, AliasSet::ModRef, NewPtr);
|
addPointer(VAAI->getOperand(0), ~0, AliasSet::ModRef, NewPtr);
|
||||||
|
|
||||||
// Treat vaarg instructions as volatile (not to be moved).
|
|
||||||
AS.setVolatile();
|
|
||||||
return NewPtr;
|
return NewPtr;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user