Lines Matching refs:ARC
67 AdjOp = Positive ? ARC::ADD_rru6 : ARC::SUB_rru6; in generateStackAdjustment()
69 AdjOp = Positive ? ARC::ADD_rrlimm : ARC::SUB_rrlimm; in generateStackAdjustment()
80 assert(Reg.getReg() >= ARC::R13 && Reg.getReg() <= ARC::R25 && in determineLastCalleeSave()
93 SavedRegs.set(ARC::BLINK); in determineCalleeSaves()
109 ScalarAlloc, ARC::SP); in adjustStackToMatchRecords()
137 BuildMI(MBB, MBBI, dl, TII->get(ARC::SUB_rru6)) in emitPrologue()
138 .addReg(ARC::SP) in emitPrologue()
139 .addReg(ARC::SP) in emitPrologue()
144 BuildMI(MBB, MBBI, dl, TII->get(ARC::ST_AW_rs9)) in emitPrologue()
145 .addReg(ARC::SP, RegState::Define) in emitPrologue()
146 .addReg(ARC::FP) in emitPrologue()
147 .addReg(ARC::SP) in emitPrologue()
151 if (UseSaveRestoreFunclet && Last > ARC::R14) { in emitPrologue()
154 StackSlotsUsedByFunclet = Last - ARC::R12; in emitPrologue()
155 BuildMI(MBB, MBBI, dl, TII->get(ARC::PUSH_S_BLINK)); in emitPrologue()
156 BuildMI(MBB, MBBI, dl, TII->get(ARC::SUB_rru6)) in emitPrologue()
157 .addReg(ARC::SP) in emitPrologue()
158 .addReg(ARC::SP) in emitPrologue()
160 BuildMI(MBB, MBBI, dl, TII->get(ARC::BL)) in emitPrologue()
161 .addExternalSymbol(store_funclet_name[Last - ARC::R15]) in emitPrologue()
162 .addReg(ARC::BLINK, RegState::Implicit | RegState::Kill); in emitPrologue()
169 BuildMI(MBB, MBBI, dl, TII->get(ARC::PUSH_S_BLINK)); in emitPrologue()
178 -(MFI.getStackSize() - AlreadyAdjusted), ARC::SP); in emitPrologue()
183 TII->get(isUInt<6>(MFI.getStackSize()) ? ARC::ADD_rru6 in emitPrologue()
184 : ARC::ADD_rrlimm), in emitPrologue()
185 ARC::FP) in emitPrologue()
186 .addReg(ARC::SP) in emitPrologue()
203 nullptr, MRI->getDwarfRegNum(ARC::FP, true), CurOffset)); in emitPrologue()
212 nullptr, MRI->getDwarfRegNum(ARC::BLINK, true), CurOffset)); in emitPrologue()
222 if ((hasFP(MF) && Reg == ARC::FP) || (MFI.hasCalls() && Reg == ARC::BLINK)) in emitPrologue()
250 BuildMI(MBB, MBBI, DebugLoc(), TII->get(ARC::SUB_rru6), ARC::SP) in emitEpilogue()
251 .addReg(ARC::FP) in emitEpilogue()
261 if (UseSaveRestoreFunclet && Last > ARC::R14) { in emitEpilogue()
263 StackSlotsUsedByFunclet = Last - ARC::R12; in emitEpilogue()
275 BuildMI(MBB, MBBI, MBB.findDebugLoc(MBBI), TII->get(ARC::ADD_rru6)) in emitEpilogue()
276 .addReg(ARC::SP) in emitEpilogue()
277 .addReg(ARC::SP) in emitEpilogue()
282 BuildMI(MBB, MBBI, MBB.findDebugLoc(MBBI), TII->get(ARC::BL)) in emitEpilogue()
283 .addExternalSymbol(load_funclet_name[Last - ARC::R15]) in emitEpilogue()
284 .addReg(ARC::BLINK, RegState::Implicit | RegState::Kill); in emitEpilogue()
285 BuildMI(MBB, MBBI, MBB.findDebugLoc(MBBI), TII->get(ARC::ADD_rru6)) in emitEpilogue()
286 .addReg(ARC::SP) in emitEpilogue()
287 .addReg(ARC::SP) in emitEpilogue()
292 BuildMI(MBB, MBBI, MBB.findDebugLoc(MBBI), TII->get(ARC::POP_S_BLINK)); in emitEpilogue()
296 BuildMI(MBB, MBBI, MBB.findDebugLoc(MBBI), TII->get(ARC::LD_AB_rs9)) in emitEpilogue()
297 .addReg(ARC::SP, RegState::Define) in emitEpilogue()
298 .addReg(ARC::FP, RegState::Define) in emitEpilogue()
299 .addReg(ARC::SP) in emitEpilogue()
308 BuildMI(MBB, MBBI, MBB.findDebugLoc(MBBI), TII->get(ARC::ADD_rru6)) in emitEpilogue()
309 .addReg(ARC::SP) in emitEpilogue()
310 .addReg(ARC::SP) in emitEpilogue()
341 if (MFI.hasCalls() || (UseSaveRestoreFunclet && Last > ARC::R14)) { in assignCalleeSavedSpillSlots()
351 for (unsigned Which = Last; Which > ARC::R12; Which--) { in assignCalleeSavedSpillSlots()
364 if (I.getReg() > ARC::R12) in assignCalleeSavedSpillSlots()
388 if (UseSaveRestoreFunclet && Last > ARC::R14) { in spillCalleeSavedRegisters()
405 if (UseSaveRestoreFunclet && Last > ARC::R14) { in restoreCalleeSavedRegisters()
420 const TargetRegisterClass *RC = &ARC::GPR32RegClass; in processFunctionBeforeFrameFinalized()
434 unsigned Opc = IsAdd ? ARC::ADD_rru6 : ARC::SUB_rru6; in emitRegUpdate()
450 if (Amt > AFI->MaxCallStackReq && Old.getOpcode() == ARC::ADJCALLSTACKDOWN) in eliminateCallFramePseudoInstr()
454 assert((Old.getOpcode() == ARC::ADJCALLSTACKDOWN || in eliminateCallFramePseudoInstr()
455 Old.getOpcode() == ARC::ADJCALLSTACKUP) && in eliminateCallFramePseudoInstr()
457 bool IsAdd = (Old.getOpcode() == ARC::ADJCALLSTACKUP); in eliminateCallFramePseudoInstr()
458 emitRegUpdate(MBB, I, dl, ARC::SP, Amt, IsAdd, TII); in eliminateCallFramePseudoInstr()