projects
/
oota-llvm.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix physical register liveness calculations:
[oota-llvm.git]
/
include
/
llvm
/
CodeGen
/
RegisterScavenging.h
diff --git
a/include/llvm/CodeGen/RegisterScavenging.h
b/include/llvm/CodeGen/RegisterScavenging.h
index 08d316992ec5f52d3b4beb865950ffe32146bb4c..8752e67a79d84c4cfde80134a69d4d8ae81517f2 100644
(file)
--- a/
include/llvm/CodeGen/RegisterScavenging.h
+++ b/
include/llvm/CodeGen/RegisterScavenging.h
@@
-129,10
+129,12
@@
private:
/// isReserved - Returns true if a register is reserved. It is never "unused".
bool isReserved(unsigned Reg) const { return MRI->isReserved(Reg); }
/// isReserved - Returns true if a register is reserved. It is never "unused".
bool isReserved(unsigned Reg) const { return MRI->isReserved(Reg); }
- /// isUsed / isUnused - Test if a register is currently being used.
+ /// isUsed - Test if a register is currently being used. When called by the
+ /// isAliasUsed function, we only check isReserved if this is the original
+ /// register, not an alias register.
///
///
- bool isUsed(unsigned Reg) const {
- return !RegsAvailable.test(Reg) ||
isReserved(Reg
);
+ bool isUsed(unsigned Reg
, bool CheckReserved = true
) const {
+ return !RegsAvailable.test(Reg) ||
(CheckReserved && isReserved(Reg)
);
}
/// isAliasUsed - Is Reg or an alias currently in use?
}
/// isAliasUsed - Is Reg or an alias currently in use?