llvm.org GIT mirror llvm / d73462a
Thumb1 does not support dynamic stack realignment. rdar://10288916 is tracking this fix. In the past, instcombine and other passes were promoting alloca alignment past the natural alignment, resulting in dynamic stack realignment. Lang's work now prevents this from happening (LLVM commit r141599). Now that this really shouldn't happen report a fatal error rather than silently generate bad code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142028 91177308-0d34-0410-b5e6-96231b3b80d8 Chad Rosier 9 years ago
1 changed file(s) with 5 addition(s) and 0 deletion(s). Raw diff Collapse all Expand all
154154 AFI->setGPRCalleeSavedArea2Size(GPRCS2Size);
155155 AFI->setDPRCalleeSavedAreaSize(DPRCSSize);
157 // Thumb1 does not currently support dynamic stack realignment. Report a
158 // fatal error rather then silently generate bad code.
159 if (RegInfo->needsStackRealignment(MF))
160 report_fatal_error("Dynamic stack realignment not supported for thumb1.");
157162 // If we need a base pointer, set it up here. It's whatever the value
158163 // of the stack pointer is at this point. Any variable size objects
159164 // will be allocated after this, so we can still use the base pointer