summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen/PrologEpilogInserter.cpp
diff options
context:
space:
mode:
authorJakob Stoklund Olesen <stoklund@2pi.dk>2011-12-21 19:50:05 +0000
committerJakob Stoklund Olesen <stoklund@2pi.dk>2011-12-21 19:50:05 +0000
commit3588a43e3a3633b41a811aefcf86ae00a5a8e548 (patch)
treeab5d700d49099b57523fbfffc50d4d46e35a5751 /llvm/lib/CodeGen/PrologEpilogInserter.cpp
parenta4b2a86353ef12c7abd4aaffbbfb4ab22d79eea0 (diff)
downloadbcm5719-llvm-3588a43e3a3633b41a811aefcf86ae00a5a8e548.tar.gz
bcm5719-llvm-3588a43e3a3633b41a811aefcf86ae00a5a8e548.zip
Move common code into an MRI function.
llvm-svn: 147071
Diffstat (limited to 'llvm/lib/CodeGen/PrologEpilogInserter.cpp')
-rw-r--r--llvm/lib/CodeGen/PrologEpilogInserter.cpp10
1 files changed, 1 insertions, 9 deletions
diff --git a/llvm/lib/CodeGen/PrologEpilogInserter.cpp b/llvm/lib/CodeGen/PrologEpilogInserter.cpp
index b4fd1cb4f52..dd0a83a90a3 100644
--- a/llvm/lib/CodeGen/PrologEpilogInserter.cpp
+++ b/llvm/lib/CodeGen/PrologEpilogInserter.cpp
@@ -224,17 +224,9 @@ void PEI::calculateCalleeSavedRegisters(MachineFunction &Fn) {
std::vector<CalleeSavedInfo> CSI;
for (unsigned i = 0; CSRegs[i]; ++i) {
unsigned Reg = CSRegs[i];
- if (Fn.getRegInfo().isPhysRegUsed(Reg)) {
+ if (Fn.getRegInfo().isPhysRegOrOverlapUsed(Reg)) {
// If the reg is modified, save it!
CSI.push_back(CalleeSavedInfo(Reg));
- } else {
- for (const unsigned *AliasSet = RegInfo->getAliasSet(Reg);
- *AliasSet; ++AliasSet) { // Check alias registers too.
- if (Fn.getRegInfo().isPhysRegUsed(*AliasSet)) {
- CSI.push_back(CalleeSavedInfo(Reg));
- break;
- }
- }
}
}
OpenPOWER on IntegriCloud