From 35410a493bb393d0d8d5868feb5ef901aba64575 Mon Sep 17 00:00:00 2001 From: Anton Korobeynikov Date: Wed, 23 Apr 2008 18:16:43 +0000 Subject: [PATCH] Disable stack realignment for functions with dynamic-sized alloca's git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50155 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Target/X86/X86RegisterInfo.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/lib/Target/X86/X86RegisterInfo.cpp b/lib/Target/X86/X86RegisterInfo.cpp index 31b9d046f67..9059a4e65e7 100644 --- a/lib/Target/X86/X86RegisterInfo.cpp +++ b/lib/Target/X86/X86RegisterInfo.cpp @@ -267,7 +267,10 @@ bool X86RegisterInfo::hasFP(const MachineFunction &MF) const { bool X86RegisterInfo::needsStackRealignment(const MachineFunction &MF) const { MachineFrameInfo *MFI = MF.getFrameInfo();; - return (MFI->getMaxAlignment() > StackAlign); + // FIXME: Currently we don't support stack realignment for functions with + // variable-sized allocas + return (MFI->getMaxAlignment() > StackAlign && + !MFI->hasVarSizedObjects()); } bool X86RegisterInfo::hasReservedCallFrame(MachineFunction &MF) const {