ReuseFrameIndexVals("arm-reuse-frame-index-vals", cl::Hidden, cl::init(true),
cl::desc("Reuse repeated frame index values"));
-static cl::opt<bool>
-ARMDynamicStackAlign("arm-dynamic-stack-alignment", cl::Hidden, cl::init(true),
- cl::desc("Dynamically re-align the stack as needed"));
-
unsigned ARMBaseRegisterInfo::getRegisterNumbering(unsigned RegEnum,
bool *isSPVFP) {
if (isSPVFP)
bool ARMBaseRegisterInfo::
needsStackRealignment(const MachineFunction &MF) const {
- if (!ARMDynamicStackAlign)
- return false;
-
const MachineFrameInfo *MFI = MF.getFrameInfo();
const ARMFunctionInfo *AFI = MF.getInfo<ARMFunctionInfo>();
unsigned StackAlign = MF.getTarget().getFrameInfo()->getStackAlignment();
// Calculate and set max stack object alignment early, so we can decide
// whether we will need stack realignment (and thus FP).
- if (ARMDynamicStackAlign) {
+ if (RealignStack) {
unsigned MaxAlign = std::max(MFI->getMaxAlignment(),
calculateMaxStackAlignment(MFI));
MFI->setMaxAlignment(MaxAlign);