Home | History | Annotate | Download | only in ARM

Lines Matching refs:AFI

136   ARMFunctionInfo *AFI = MF.getInfo<ARMFunctionInfo>();
141 assert(!AFI->isThumb1OnlyFunction() &&
143 bool isARM = !AFI->isThumbFunction();
145 unsigned ArgRegsSaveSize = AFI->getArgRegsSaveSize(Align);
167 if (!AFI->hasStackFrame()) {
185 AFI->addGPRCalleeSavedArea1Frame(FI);
195 AFI->addGPRCalleeSavedArea2Frame(FI);
198 AFI->addGPRCalleeSavedArea1Frame(FI);
206 if (Reg < ARM::D8 || Reg >= ARM::D8 + AFI->getNumAlignedDPRCS2Regs()) {
207 AFI->addDPRCalleeSavedAreaFrame(FI);
223 unsigned ADDriOpc = !AFI->isThumbFunction() ? ARM::ADDri : ARM::t2ADDri;
239 AFI->setFramePtrSpillOffset(MFI->getObjectOffset(FramePtrSpillFI) +
241 AFI->setGPRCalleeSavedArea1Offset(GPRCS1Offset);
242 AFI->setGPRCalleeSavedArea2Offset(GPRCS2Offset);
243 AFI->setDPRCalleeSavedAreaOffset(DPRCSOffset);
255 if (AFI->getNumAlignedDPRCS2Regs() > 0) {
256 MBBI = skipAlignedDPRCS2Spills(MBBI, AFI->getNumAlignedDPRCS2Regs());
278 AFI->setShouldRestoreSPFromFP(true);
283 AFI->getFramePtrSpillOffset());
285 AFI->setGPRCalleeSavedArea1Size(GPRCS1Size);
286 AFI->setGPRCalleeSavedArea2Size(GPRCS2Size);
287 AFI->setDPRCalleeSavedAreaSize(DPRCSSize);
293 if (!AFI->getNumAlignedDPRCS2Regs() && RegInfo->needsStackRealignment(MF)) {
295 assert (!AFI->isThumb1OnlyFunction());
296 if (!AFI->isThumbFunction()) {
319 AFI->setShouldRestoreSPFromFP(true);
343 AFI->setShouldRestoreSPFromFP(true);
353 ARMFunctionInfo *AFI = MF.getInfo<ARMFunctionInfo>();
357 assert(!AFI->isThumb1OnlyFunction() &&
359 bool isARM = !AFI->isThumbFunction();
362 unsigned ArgRegsSaveSize = AFI->getArgRegsSaveSize(Align);
371 if (!AFI->hasStackFrame()) {
386 NumBytes -= (AFI->getGPRCalleeSavedArea1Size() +
387 AFI->getGPRCalleeSavedArea2Size() +
388 AFI->getDPRCalleeSavedAreaSize());
392 if (AFI->shouldRestoreSPFromFP()) {
393 NumBytes = AFI->getFramePtrSpillOffset() - NumBytes;
428 if (AFI->getDPRCalleeSavedAreaSize()) {
435 if (AFI->getGPRCalleeSavedArea2Size()) MBBI++;
436 if (AFI->getGPRCalleeSavedArea1Size()) MBBI++;
497 const ARMFunctionInfo *AFI = MF.getInfo<ARMFunctionInfo>();
499 int FPOffset = Offset - AFI->getFramePtrSpillOffset();
504 if (AFI->isGPRCalleeSavedArea1Frame(FI))
505 return Offset - AFI->getGPRCalleeSavedArea1Offset();
506 else if (AFI->isGPRCalleeSavedArea2Frame(FI))
507 return Offset - AFI->getGPRCalleeSavedArea2Offset();
508 else if (AFI->isDPRCalleeSavedAreaFrame(FI))
509 return Offset - AFI->getDPRCalleeSavedAreaOffset();
531 if (hasFP(MF) && AFI->hasStackFrame()) {
539 if (AFI->isThumb2Function()) {
548 } else if (AFI->isThumb2Function()) {
656 ARMFunctionInfo *AFI = MF.getInfo<ARMFunctionInfo>();
677 LdmOpc = AFI->isThumbFunction() ? ARM::t2LDMIA_RET : ARM::LDMIA_RET;
736 ARMFunctionInfo *AFI = MF.getInfo<ARMFunctionInfo>();
770 bool isThumb = AFI->isThumbFunction();
771 assert(!AFI->isThumb1OnlyFunction() && "Can't realign stack for thumb1");
772 AFI->setShouldRestoreSPFromFP(true);
895 ARMFunctionInfo *AFI = MF.getInfo<ARMFunctionInfo>();
912 bool isThumb = AFI->isThumbFunction();
913 assert(!AFI->isThumb1OnlyFunction() && "Can't realign stack for thumb1");
976 ARMFunctionInfo *AFI = MF.getInfo<ARMFunctionInfo>();
978 unsigned PushOpc = AFI->isThumbFunction() ? ARM::t2STMDB_UPD : ARM::STMDB_UPD;
979 unsigned PushOneOpc = AFI->isThumbFunction() ?
982 unsigned NumAlignedDPRCS2Regs = AFI->getNumAlignedDPRCS2Regs();
1007 ARMFunctionInfo *AFI = MF.getInfo<ARMFunctionInfo>();
1008 bool isVarArg = AFI->getArgRegsSaveSize() > 0;
1009 unsigned NumAlignedDPRCS2Regs = AFI->getNumAlignedDPRCS2Regs();
1016 unsigned PopOpc = AFI->isThumbFunction() ? ARM::t2LDMIA_UPD : ARM::LDMIA_UPD;
1017 unsigned LdrOpc = AFI->isThumbFunction() ? ARM::t2LDR_POST :ARM::LDR_POST_IMM;
1049 const ARMFunctionInfo *AFI = MF.getInfo<ARMFunctionInfo>();
1077 if (TFI->hasFP(MF) && AFI->hasStackFrame())
1163 ARMFunctionInfo *AFI = MF.getInfo<ARMFunctionInfo>();
1173 if (AFI->isThumb2Function() &&
1177 if (AFI->isThumb1OnlyFunction()) {
1179 if (AFI->getArgRegsSaveSize() > 0)
1256 if (!LRSpilled && AFI->isThumb1OnlyFunction()) {
1284 ((hasFP(MF) && AFI->hasStackFrame()) ? 4:0) >=
1291 AFI->setHasStackFrame(true);
1318 if (!AFI->isThumb1OnlyFunction() ||
1326 } else if (!UnspilledCS2GPRs.empty() && !AFI->isThumb1OnlyFunction()) {
1348 (!AFI->isThumb1OnlyFunction() || isARMLowRegister(Reg) ||
1355 if (!AFI->isThumb1OnlyFunction()) {
1369 } else if (!AFI->isThumb1OnlyFunction()) {
1382 AFI->setLRIsSpilledForFarJump(true);
1406 ARMFunctionInfo *AFI = MF.getInfo<ARMFunctionInfo>();
1407 assert(!AFI->isThumb1OnlyFunction() &&
1409 bool isARM = !AFI->isThumbFunction();