diff options
author | Evan Cheng <evan.cheng@apple.com> | 2010-02-13 01:56:41 +0000 |
---|---|---|
committer | Evan Cheng <evan.cheng@apple.com> | 2010-02-13 01:56:41 +0000 |
commit | 7545f49a5edfe19612d03e683d8b955c03018056 (patch) | |
tree | be6cf7aad5799832c2c8bc1943186e0c604ad373 /lib/Target/X86 | |
parent | f0907fe59093753fe5a9e8fe5adc399dbdc94627 (diff) | |
download | external_llvm-7545f49a5edfe19612d03e683d8b955c03018056.zip external_llvm-7545f49a5edfe19612d03e683d8b955c03018056.tar.gz external_llvm-7545f49a5edfe19612d03e683d8b955c03018056.tar.bz2 |
Teach MachineFrameInfo to track maximum alignment while stack objects are being
created. This ensures it's updated at all time. It means targets which perform
dynamic stack alignment would know whether it is required and whether frame
pointer register cannot be made available register allocation.
This is a fix for rdar://7625239. Sorry, I can't create a reasonably sized test
case.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96069 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/X86')
-rw-r--r-- | lib/Target/X86/X86RegisterInfo.cpp | 6 |
1 files changed, 1 insertions, 5 deletions
diff --git a/lib/Target/X86/X86RegisterInfo.cpp b/lib/Target/X86/X86RegisterInfo.cpp index 081c6d9..8524236 100644 --- a/lib/Target/X86/X86RegisterInfo.cpp +++ b/lib/Target/X86/X86RegisterInfo.cpp @@ -485,7 +485,7 @@ X86RegisterInfo::getFrameIndexOffset(const MachineFunction &MF, int FI) const { Offset += SlotSize; } else { unsigned Align = MFI->getObjectAlignment(FI); - assert( (-(Offset + StackSize)) % Align == 0); + assert((-(Offset + StackSize)) % Align == 0); Align = 0; return Offset + StackSize; } @@ -627,10 +627,6 @@ X86RegisterInfo::processFunctionBeforeCalleeSavedScan(MachineFunction &MF, RegScavenger *RS) const { MachineFrameInfo *MFI = MF.getFrameInfo(); - // Calculate and set max stack object alignment early, so we can decide - // whether we will need stack realignment (and thus FP). - MFI->calculateMaxStackAlignment(); - X86MachineFunctionInfo *X86FI = MF.getInfo<X86MachineFunctionInfo>(); int32_t TailCallReturnAddrDelta = X86FI->getTCReturnAddrDelta(); |