Lines Matching refs:SystemZ
30 { SystemZ::R2D, 0x10 },
31 { SystemZ::R3D, 0x18 },
32 { SystemZ::R4D, 0x20 },
33 { SystemZ::R5D, 0x28 },
34 { SystemZ::R6D, 0x30 },
35 { SystemZ::R7D, 0x38 },
36 { SystemZ::R8D, 0x40 },
37 { SystemZ::R9D, 0x48 },
38 { SystemZ::R10D, 0x50 },
39 { SystemZ::R11D, 0x58 },
40 { SystemZ::R12D, 0x60 },
41 { SystemZ::R13D, 0x68 },
42 { SystemZ::R14D, 0x70 },
43 { SystemZ::R15D, 0x78 },
44 { SystemZ::F0D, 0x80 },
45 { SystemZ::F2D, 0x88 },
46 { SystemZ::F4D, 0x90 },
47 { SystemZ::F6D, 0x98 }
51 {SystemZ::R4D, 0x00}, {SystemZ::R5D, 0x08}, {SystemZ::R6D, 0x10},
52 {SystemZ::R7D, 0x18}, {SystemZ::R8D, 0x20}, {SystemZ::R9D, 0x28},
53 {SystemZ::R10D, 0x30}, {SystemZ::R11D, 0x38}, {SystemZ::R12D, 0x40},
54 {SystemZ::R13D, 0x48}, {SystemZ::R14D, 0x50}, {SystemZ::R15D, 0x58}};
173 unsigned HighGPR = SystemZ::R15D; in assignCalleeSavedSpillSlots()
179 if (SystemZ::GR64BitRegClass.contains(Reg) && StartSPOffset > Offset) { in assignCalleeSavedSpillSlots()
199 if (FirstGPR < SystemZ::ELFNumArgGPRs) { in assignCalleeSavedSpillSlots()
200 unsigned Reg = SystemZ::ELFArgGPRs[FirstGPR]; in assignCalleeSavedSpillSlots()
246 for (unsigned I = MFI->getVarArgsFirstGPR(); I < SystemZ::ELFNumArgGPRs; ++I) in determineCalleeSaves()
247 SavedRegs.set(SystemZ::ELFArgGPRs[I]); in determineCalleeSaves()
251 SavedRegs.set(SystemZ::R6D); in determineCalleeSaves()
252 SavedRegs.set(SystemZ::R7D); in determineCalleeSaves()
258 SavedRegs.set(SystemZ::R11D); in determineCalleeSaves()
263 SavedRegs.set(SystemZ::R14D); in determineCalleeSaves()
272 if (SystemZ::GR64BitRegClass.contains(Reg) && SavedRegs.test(Reg)) { in determineCalleeSaves()
273 SavedRegs.set(SystemZ::R15D); in determineCalleeSaves()
292 RegSpillOffsets.grow(SystemZ::NUM_TARGET_REGS); in SystemZELFFrameLowering()
305 Register GPR32 = RI->getSubReg(GPR64, SystemZ::subreg_l32); in addSavedGPR()
327 SystemZ::GPRRegs SpillGPRs = ZFI->getSpillGPRRegs(); in spillCalleeSavedRegisters()
333 MachineInstrBuilder MIB = BuildMI(MBB, MBBI, DL, TII->get(SystemZ::STMG)); in spillCalleeSavedRegisters()
340 MIB.addReg(SystemZ::R15D).addImm(SpillGPRs.GPROffset); in spillCalleeSavedRegisters()
346 if (SystemZ::GR64BitRegClass.contains(Reg)) in spillCalleeSavedRegisters()
352 for (unsigned I = ZFI->getVarArgsFirstGPR(); I < SystemZ::ELFNumArgGPRs; ++I) in spillCalleeSavedRegisters()
353 addSavedGPR(MBB, MIB, SystemZ::ELFArgGPRs[I], true); in spillCalleeSavedRegisters()
359 if (SystemZ::FP64BitRegClass.contains(Reg)) { in spillCalleeSavedRegisters()
362 &SystemZ::FP64BitRegClass, TRI, Register()); in spillCalleeSavedRegisters()
364 if (SystemZ::VR128BitRegClass.contains(Reg)) { in spillCalleeSavedRegisters()
367 &SystemZ::VR128BitRegClass, TRI, Register()); in spillCalleeSavedRegisters()
389 if (SystemZ::FP64BitRegClass.contains(Reg)) in restoreCalleeSavedRegisters()
391 &SystemZ::FP64BitRegClass, TRI, Register()); in restoreCalleeSavedRegisters()
392 if (SystemZ::VR128BitRegClass.contains(Reg)) in restoreCalleeSavedRegisters()
394 &SystemZ::VR128BitRegClass, TRI, Register()); in restoreCalleeSavedRegisters()
399 SystemZ::GPRRegs RestoreGPRs = ZFI->getRestoreGPRRegs(); in restoreCalleeSavedRegisters()
408 MachineInstrBuilder MIB = BuildMI(MBB, MBBI, DL, TII->get(SystemZ::LMG)); in restoreCalleeSavedRegisters()
415 MIB.addReg(HasFP ? SystemZ::R11D : SystemZ::R15D); in restoreCalleeSavedRegisters()
422 SystemZ::GR64BitRegClass.contains(Reg)) in restoreCalleeSavedRegisters()
469 if (MF.front().isLiveIn(SystemZ::R6D) && in processFunctionBeforeFrameFinalized()
470 ZFI->getRestoreGPRRegs().LowGPR != SystemZ::R6D) in processFunctionBeforeFrameFinalized()
471 for (auto &MO : MRI->use_nodbg_operands(SystemZ::R6D)) in processFunctionBeforeFrameFinalized()
484 Opcode = SystemZ::AGHI; in emitIncrement()
486 Opcode = SystemZ::AGFI; in emitIncrement()
567 if (MBBI != MBB.end() && MBBI->getOpcode() == SystemZ::STMG) in emitPrologue()
575 if (SystemZ::GR64BitRegClass.contains(Reg)) { in emitPrologue()
616 BuildMI(MBB, MBBI, DL, ZII->get(SystemZ::PROBED_STACKALLOC)) in emitPrologue()
624 BuildMI(MBB, MBBI, DL, ZII->get(SystemZ::LGR)) in emitPrologue()
625 .addReg(SystemZ::R1D, RegState::Define).addReg(SystemZ::R15D); in emitPrologue()
626 emitIncrement(MBB, MBBI, DL, SystemZ::R15D, Delta, ZII); in emitPrologue()
629 BuildMI(MBB, MBBI, DL, ZII->get(SystemZ::STG)) in emitPrologue()
630 .addReg(SystemZ::R1D, RegState::Kill).addReg(SystemZ::R15D) in emitPrologue()
638 BuildMI(MBB, MBBI, DL, ZII->get(SystemZ::LGR), SystemZ::R11D) in emitPrologue()
639 .addReg(SystemZ::R15D); in emitPrologue()
642 buildDefCFAReg(MBB, MBBI, DL, SystemZ::R11D, ZII); in emitPrologue()
648 MBBJ.addLiveIn(SystemZ::R11D); in emitPrologue()
655 if (SystemZ::FP64BitRegClass.contains(Reg)) { in emitPrologue()
657 (MBBI->getOpcode() == SystemZ::STD || in emitPrologue()
658 MBBI->getOpcode() == SystemZ::STDY)) in emitPrologue()
662 } else if (SystemZ::VR128BitRegClass.contains(Reg)) { in emitPrologue()
664 MBBI->getOpcode() == SystemZ::VST) in emitPrologue()
709 if (Opcode != SystemZ::LMG) in emitEpilogue()
732 emitIncrement(MBB, MBBI, DL, SystemZ::R15D, StackSize, ZII); in emitEpilogue()
745 if (MI.getOpcode() == SystemZ::PROBED_STACKALLOC) { in inlineStackProbe()
764 emitIncrement(InsMBB, InsPt, DL, SystemZ::R15D, -int64_t(Size), ZII); in inlineStackProbe()
772 BuildMI(InsMBB, InsPt, DL, ZII->get(SystemZ::CG)) in inlineStackProbe()
773 .addReg(SystemZ::R0D, RegState::Undef) in inlineStackProbe()
774 .addReg(SystemZ::R15D).addImm(Size - 8).addReg(0) in inlineStackProbe()
780 BuildMI(*MBB, MBBI, DL, ZII->get(SystemZ::LGR)) in inlineStackProbe()
781 .addReg(SystemZ::R1D, RegState::Define).addReg(SystemZ::R15D); in inlineStackProbe()
795 BuildMI(*MBB, MBBI, DL, ZII->get(SystemZ::LGR), SystemZ::R0D) in inlineStackProbe()
796 .addReg(SystemZ::R15D); in inlineStackProbe()
797 buildDefCFAReg(*MBB, MBBI, DL, SystemZ::R0D, ZII); in inlineStackProbe()
798 emitIncrement(*MBB, MBBI, DL, SystemZ::R0D, -int64_t(LoopAlloc), ZII); in inlineStackProbe()
802 DoneMBB = SystemZ::splitBlockBefore(MBBI, MBB); in inlineStackProbe()
803 LoopMBB = SystemZ::emitBlockAfter(MBB); in inlineStackProbe()
810 BuildMI(*MBB, MBB->end(), DL, ZII->get(SystemZ::CLGR)) in inlineStackProbe()
811 .addReg(SystemZ::R15D).addReg(SystemZ::R0D); in inlineStackProbe()
812 BuildMI(*MBB, MBB->end(), DL, ZII->get(SystemZ::BRC)) in inlineStackProbe()
813 .addImm(SystemZ::CCMASK_ICMP).addImm(SystemZ::CCMASK_CMP_GT).addMBB(MBB); in inlineStackProbe()
817 buildDefCFAReg(*MBB, MBBI, DL, SystemZ::R15D, ZII); in inlineStackProbe()
824 BuildMI(*MBB, MBBI, DL, ZII->get(SystemZ::STG)) in inlineStackProbe()
825 .addReg(SystemZ::R1D, RegState::Kill).addReg(SystemZ::R15D) in inlineStackProbe()
857 if (SystemZ::GR64BitRegClass.contains(Reg)) in getRegSpillOffset()
899 RegSpillOffsets.grow(SystemZ::NUM_TARGET_REGS); in SystemZXPLINKFrameLowering()
972 auto &GRRegClass = SystemZ::GR64BitRegClass; in assignCalleeSavedSpillSlots()
1093 SystemZ::GPRRegs SpillGPRs = ZFI->getSpillGPRRegs(); in spillCalleeSavedRegisters()
1102 MachineInstrBuilder MIB = BuildMI(MBB, MBBI, DL, TII->get(SystemZ::STMG)); in spillCalleeSavedRegisters()
1117 auto &GRRegClass = SystemZ::GR64BitRegClass; in spillCalleeSavedRegisters()
1128 if (SystemZ::FP64BitRegClass.contains(Reg)) { in spillCalleeSavedRegisters()
1131 &SystemZ::FP64BitRegClass, TRI, Register()); in spillCalleeSavedRegisters()
1133 if (SystemZ::VR128BitRegClass.contains(Reg)) { in spillCalleeSavedRegisters()
1136 &SystemZ::VR128BitRegClass, TRI, Register()); in spillCalleeSavedRegisters()
1161 if (SystemZ::FP64BitRegClass.contains(Reg)) in restoreCalleeSavedRegisters()
1163 &SystemZ::FP64BitRegClass, TRI, Register()); in restoreCalleeSavedRegisters()
1164 if (SystemZ::VR128BitRegClass.contains(Reg)) in restoreCalleeSavedRegisters()
1166 &SystemZ::VR128BitRegClass, TRI, Register()); in restoreCalleeSavedRegisters()
1171 SystemZ::GPRRegs RestoreGPRs = ZFI->getRestoreGPRRegs(); in restoreCalleeSavedRegisters()
1176 BuildMI(MBB, MBBI, DL, TII->get(SystemZ::LG), RestoreGPRs.LowGPR) in restoreCalleeSavedRegisters()
1182 MachineInstrBuilder MIB = BuildMI(MBB, MBBI, DL, TII->get(SystemZ::LMG)); in restoreCalleeSavedRegisters()
1227 if ((MBBI != MBB.end()) && ((MBBI->getOpcode() == SystemZ::STMG))) { in emitPrologue()
1254 BuildMI(MBB, InsertPt, DL, ZII->get(SystemZ::LGR)) in emitPrologue()
1255 .addReg(SystemZ::R0D, RegState::Define) in emitPrologue()
1256 .addReg(SystemZ::R4D); in emitPrologue()
1258 BuildMI(MBB, MBBI, DL, ZII->get(SystemZ::STG)) in emitPrologue()
1259 .addReg(SystemZ::R0D, RegState::Kill) in emitPrologue()
1260 .addReg(SystemZ::R4D) in emitPrologue()
1277 BuildMI(MBB, InsertPt, DL, ZII->get(SystemZ::XPLINK_STACKALLOC)); in emitPrologue()
1283 BuildMI(MBB, MBBI, DL, ZII->get(SystemZ::LGR), in emitPrologue()
1302 auto &GPRs = SystemZ::XPLINK64ArgGPRs; in emitPrologue()
1303 for (unsigned I = FixedRegs; I < SystemZ::XPLINK64NumArgGPRs; I++) { in emitPrologue()
1308 BuildMI(MBB, MBBI, DL, TII->get(SystemZ::STG)) in emitPrologue()
1350 if (MI.getOpcode() == SystemZ::XPLINK_STACKALLOC) { in inlineStackProbe()
1358 bool NeedSaveArg = PrologMBB.isLiveIn(SystemZ::R3D); in inlineStackProbe()
1373 BuildMI(StackExtMBB, DL, ZII->get(SystemZ::LG), SystemZ::R3D) in inlineStackProbe()
1374 .addReg(SystemZ::R3D) in inlineStackProbe()
1378 BuildMI(StackExtMBB, DL, ZII->get(SystemZ::CallBASR_STACKEXT)) in inlineStackProbe()
1379 .addReg(SystemZ::R3D); in inlineStackProbe()
1383 BuildMI(MBB, StackAllocMI, DL, ZII->get(SystemZ::LGR)) in inlineStackProbe()
1384 .addReg(SystemZ::R0D, RegState::Define) in inlineStackProbe()
1385 .addReg(SystemZ::R3D); in inlineStackProbe()
1392 BuildMI(MBB, MBB.begin(), DL, ZII->get(SystemZ::STG)) in inlineStackProbe()
1393 .addReg(SystemZ::R3D) in inlineStackProbe()
1394 .addReg(SystemZ::R4D) in inlineStackProbe()
1400 BuildMI(MBB, StackAllocMI, DL, ZII->get(SystemZ::LLGT), SystemZ::R3D) in inlineStackProbe()
1405 BuildMI(MBB, StackAllocMI, DL, ZII->get(SystemZ::CG)) in inlineStackProbe()
1406 .addReg(SystemZ::R4D) in inlineStackProbe()
1407 .addReg(SystemZ::R3D) in inlineStackProbe()
1411 BuildMI(MBB, StackAllocMI, DL, ZII->get(SystemZ::BRC)) in inlineStackProbe()
1412 .addImm(SystemZ::CCMASK_ICMP) in inlineStackProbe()
1413 .addImm(SystemZ::CCMASK_CMP_LT) in inlineStackProbe()
1416 NextMBB = SystemZ::splitBlockBefore(StackAllocMI, &MBB); in inlineStackProbe()
1422 BuildMI(*NextMBB, StackAllocMI, DL, ZII->get(SystemZ::LGR)) in inlineStackProbe()
1423 .addReg(SystemZ::R3D, RegState::Define) in inlineStackProbe()
1424 .addReg(SystemZ::R0D, RegState::Kill); in inlineStackProbe()
1430 BuildMI(*NextMBB, StackAllocMI, DL, ZII->get(SystemZ::LGR)) in inlineStackProbe()
1431 .addReg(SystemZ::R3D, RegState::Define) in inlineStackProbe()
1432 .addReg(SystemZ::R0D); in inlineStackProbe()
1434 BuildMI(*NextMBB, StackAllocMI, DL, ZII->get(SystemZ::LG)) in inlineStackProbe()
1435 .addReg(SystemZ::R3D, RegState::Define) in inlineStackProbe()
1436 .addReg(SystemZ::R3D) in inlineStackProbe()
1443 BuildMI(StackExtMBB, DL, ZII->get(SystemZ::J)).addMBB(NextMBB); in inlineStackProbe()