aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Target/X86/X86RegisterInfo.cpp
diff options
context:
space:
mode:
authorAnton Korobeynikov <asl@math.spbu.ru>2010-09-02 22:31:32 +0000
committerAnton Korobeynikov <asl@math.spbu.ru>2010-09-02 22:31:32 +0000
commitc7c62bb3caed31fb1e43a9f6c3b833627388d2fc (patch)
treeb7b6713496a4311b55ff82cc24d52b1634081bce /lib/Target/X86/X86RegisterInfo.cpp
parent1755b3964f931bdd6fa9b4c0138f666ccfa12aca (diff)
downloadexternal_llvm-c7c62bb3caed31fb1e43a9f6c3b833627388d2fc.zip
external_llvm-c7c62bb3caed31fb1e43a9f6c3b833627388d2fc.tar.gz
external_llvm-c7c62bb3caed31fb1e43a9f6c3b833627388d2fc.tar.bz2
Revert win64 changes. They seem to be incomplete
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112885 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/X86/X86RegisterInfo.cpp')
-rw-r--r--lib/Target/X86/X86RegisterInfo.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/lib/Target/X86/X86RegisterInfo.cpp b/lib/Target/X86/X86RegisterInfo.cpp
index ae9a39a..03c7ffc 100644
--- a/lib/Target/X86/X86RegisterInfo.cpp
+++ b/lib/Target/X86/X86RegisterInfo.cpp
@@ -945,6 +945,11 @@ void X86RegisterInfo::emitPrologue(MachineFunction &MF) const {
if (HasFP) MinSize += SlotSize;
StackSize = std::max(MinSize, StackSize > 128 ? StackSize - 128 : 0);
MFI->setStackSize(StackSize);
+ } else if (Subtarget->isTargetWin64()) {
+ // We need to always allocate 32 bytes as register spill area.
+ // FIXME: We might reuse these 32 bytes for leaf functions.
+ StackSize += 32;
+ MFI->setStackSize(StackSize);
}
// Insert stack pointer adjustment for later moving of return addr. Only