Home
last modified time | relevance | path

Searched refs:ScratchReg (Results 1 – 25 of 32) sorted by relevance

12

/freebsd/contrib/llvm-project/llvm/lib/Target/LoongArch/
H A DLoongArchExpandAtomicPseudoInsts.cpp153 Register ScratchReg = MI.getOperand(1).getReg(); in doAtomicBinOpExpansion() local
170 BuildMI(LoopMBB, DL, TII->get(LoongArch::OR), ScratchReg) in doAtomicBinOpExpansion()
175 BuildMI(LoopMBB, DL, TII->get(LoongArch::AND), ScratchReg) in doAtomicBinOpExpansion()
178 BuildMI(LoopMBB, DL, TII->get(LoongArch::NOR), ScratchReg) in doAtomicBinOpExpansion()
179 .addReg(ScratchReg) in doAtomicBinOpExpansion()
183 BuildMI(LoopMBB, DL, TII->get(LoongArch::ADD_W), ScratchReg) in doAtomicBinOpExpansion()
188 BuildMI(LoopMBB, DL, TII->get(LoongArch::SUB_W), ScratchReg) in doAtomicBinOpExpansion()
193 BuildMI(LoopMBB, DL, TII->get(LoongArch::AND), ScratchReg) in doAtomicBinOpExpansion()
198 BuildMI(LoopMBB, DL, TII->get(LoongArch::OR), ScratchReg) in doAtomicBinOpExpansion()
203 BuildMI(LoopMBB, DL, TII->get(LoongArch::XOR), ScratchReg) in doAtomicBinOpExpansion()
227 insertMaskedMerge(const LoongArchInstrInfo * TII,DebugLoc DL,MachineBasicBlock * MBB,Register DestReg,Register OldValReg,Register NewValReg,Register MaskReg,Register ScratchReg) insertMaskedMerge() argument
250 Register ScratchReg = MI.getOperand(1).getReg(); doMaskedAtomicBinOpExpansion() local
520 Register ScratchReg = MI.getOperand(1).getReg(); expandAtomicCmpXchg() local
[all...]
H A DLoongArchRegisterInfo.cpp149 Register ScratchReg = MRI.createVirtualRegister(&LoongArch::GPRRegClass); in eliminateFrameIndex()
150 TII->movImm(MBB, II, DL, ScratchReg, Offset.getFixed()); in eliminateFrameIndex()
154 .addReg(ScratchReg, RegState::Kill); in eliminateFrameIndex()
158 BuildMI(MBB, II, DL, TII->get(Add), ScratchReg) in eliminateFrameIndex()
160 .addReg(ScratchReg, RegState::Kill); in eliminateFrameIndex()
162 FrameReg = ScratchReg; in eliminateFrameIndex()
168 Register ScratchReg = MRI.createVirtualRegister(&LoongArch::GPRRegClass); in eliminateFrameIndex()
169 BuildMI(MBB, II, DL, TII->get(LoongArch::MOVCF2GR), ScratchReg) in eliminateFrameIndex()
172 .addReg(ScratchReg, RegState::Kill) in eliminateFrameIndex()
181 Register ScratchReg in eliminateFrameIndex()
148 Register ScratchReg = MRI.createVirtualRegister(&LoongArch::GPRRegClass); eliminateFrameIndex() local
167 Register ScratchReg = MRI.createVirtualRegister(&LoongArch::GPRRegClass); eliminateFrameIndex() local
180 Register ScratchReg = MRI.createVirtualRegister(&LoongArch::GPRRegClass); eliminateFrameIndex() local
[all...]
H A DLoongArchExpandPseudoInsts.cpp143 Register ScratchReg = in expandPcalau12iInstPair() local
147 BuildMI(MBB, MBBI, DL, TII->get(LoongArch::PCALAU12I), ScratchReg) in expandPcalau12iInstPair()
152 .addReg(ScratchReg) in expandPcalau12iInstPair()
294 Register ScratchReg = in expandLoadAddressTLSDesc() local
298 BuildMI(MBB, MBBI, DL, TII->get(LoongArch::PCALAU12I), ScratchReg) in expandLoadAddressTLSDesc()
302 .addReg(ScratchReg) in expandLoadAddressTLSDesc()
538 Register ScratchReg = LoongArch::R20; // $t8 in expandLargeAddressLoad() local
544 auto Part0 = BuildMI(MBB, MBBI, DL, TII->get(LoongArch::ADDI_D), ScratchReg) in expandLargeAddressLoad()
546 auto Part2 = BuildMI(MBB, MBBI, DL, TII->get(LoongArch::LU32I_D), ScratchReg) in expandLargeAddressLoad()
548 .addReg(ScratchReg); in expandLargeAddressLoad()
[all …]
H A DLoongArchInstrInfo.cpp442 Register ScratchReg = MRI.createVirtualRegister(&LoongArch::GPRRegClass); in insertIndirectBranch() local
446 *BuildMI(MBB, II, DL, get(LoongArch::PCALAU12I), ScratchReg) in insertIndirectBranch()
451 ScratchReg) in insertIndirectBranch()
452 .addReg(ScratchReg) in insertIndirectBranch()
455 .addReg(ScratchReg, RegState::Kill) in insertIndirectBranch()
482 MRI.replaceRegWith(ScratchReg, Scav); in insertIndirectBranch()
H A DLoongArchFrameLowering.cpp100 Register ScratchReg = MRI.createVirtualRegister(&LoongArch::GPRRegClass); in adjustReg() local
101 TII->movImm(MBB, MBBI, DL, ScratchReg, Val, Flag); in adjustReg()
104 .addReg(ScratchReg, RegState::Kill) in adjustReg()
/freebsd/contrib/llvm-project/llvm/lib/Target/RISCV/
H A DRISCVExpandAtomicPseudoInsts.cpp266 Register ScratchReg = MI.getOperand(1).getReg(); in doAtomicBinOpExpansion()
283 BuildMI(LoopMBB, DL, TII->get(RISCV::AND), ScratchReg) in insertMaskedMerge()
286 BuildMI(LoopMBB, DL, TII->get(RISCV::XORI), ScratchReg) in insertMaskedMerge()
287 .addReg(ScratchReg) in insertMaskedMerge()
291 BuildMI(LoopMBB, DL, TII->get(getSCForRMW(Ordering, Width, STI)), ScratchReg) in insertMaskedMerge()
293 .addReg(ScratchReg); in insertMaskedMerge()
295 .addReg(ScratchReg) in insertMaskedMerge()
303 Register MaskReg, Register ScratchReg) { in doMaskedAtomicBinOpExpansion() local
304 assert(OldValReg != ScratchReg && "OldValReg and ScratchReg mus in doMaskedAtomicBinOpExpansion()
241 Register ScratchReg = MI.getOperand(1).getReg(); doAtomicBinOpExpansion() local
278 insertMaskedMerge(const RISCVInstrInfo * TII,DebugLoc DL,MachineBasicBlock * MBB,Register DestReg,Register OldValReg,Register NewValReg,Register MaskReg,Register ScratchReg) insertMaskedMerge() argument
607 Register ScratchReg = MI.getOperand(1).getReg(); expandAtomicCmpXchg() local
[all...]
H A DRISCVRegisterInfo.cpp198 Register ScratchReg = DestReg; in adjustReg() local
200 ScratchReg = MRI.createVirtualRegister(&RISCV::GPRRegClass); in adjustReg()
208 BuildMI(MBB, II, DL, TII->get(RISCV::PseudoReadVLENB), ScratchReg) in adjustReg()
216 .addReg(ScratchReg, RegState::Kill).addReg(SrcReg) in adjustReg()
219 TII->mulImm(MF, MBB, II, DL, ScratchReg, NumOfVReg, Flag); in adjustReg()
221 .addReg(SrcReg).addReg(ScratchReg, RegState::Kill) in adjustReg()
279 Register ScratchReg = MRI.createVirtualRegister(&RISCV::GPRRegClass); in adjustReg() local
280 TII->movImm(MBB, II, DL, ScratchReg, Val, Flag); in adjustReg()
282 .addReg(ScratchReg, RegState::Kill) in adjustReg()
295 Register ScratchReg = MRI.createVirtualRegister(&RISCV::GPRRegClass); in adjustReg() local
[all …]
H A DRISCVExpandPseudoInsts.cpp524 Register ScratchReg = in expandAuipcInstPair() local
532 BuildMI(MBB, MBBI, DL, TII->get(RISCV::AUIPC), ScratchReg).add(Symbol); in expandAuipcInstPair()
537 .addReg(ScratchReg) in expandAuipcInstPair()
590 Register ScratchReg = in expandLoadTLSDescAddress() local
598 BuildMI(MBB, MBBI, DL, TII->get(RISCV::AUIPC), ScratchReg).add(Symbol); in expandLoadTLSDescAddress()
602 .addReg(ScratchReg) in expandLoadTLSDescAddress()
606 .addReg(ScratchReg) in expandLoadTLSDescAddress()
/freebsd/contrib/llvm-project/llvm/lib/Target/PowerPC/
H A DPPCFrameLowering.cpp657 Register ScratchReg; in emitPrologue() local
690 &MBB, false, twoUniqueScratchRegsRequired(&MBB), &ScratchReg, &TempReg); in emitPrologue()
694 SingleScratchReg = ScratchReg == TempReg; in emitPrologue()
818 BuildMI(MBB, MBBI, dl, MFLRInst, ScratchReg); in emitPrologue()
847 .addReg(ScratchReg, getKillRegState(!HasROPProtect)) in emitPrologue()
865 .addReg(ScratchReg, getKillRegState(true)) in emitPrologue()
925 .addDef(ScratchReg) // ScratchReg stores the old sp. in emitPrologue()
931 BuildMI(MBB, MBBI, dl, TII.get(PPC::SUBF), ScratchReg) in emitPrologue()
932 .addReg(ScratchReg) in emitPrologue()
939 BuildMI(MBB, MBBI, dl, TII.get(PPC::RLDICL), ScratchReg) in emitPrologue()
[all …]
H A DPPCAsmPrinter.cpp569 Register ScratchReg = MI.getOperand(Opers.getNextScratchIdx()).getReg(); in LowerPATCHPOINT() local
573 .addReg(ScratchReg) in LowerPATCHPOINT()
577 .addReg(ScratchReg) in LowerPATCHPOINT()
578 .addReg(ScratchReg) in LowerPATCHPOINT()
582 .addReg(ScratchReg) in LowerPATCHPOINT()
583 .addReg(ScratchReg) in LowerPATCHPOINT()
587 .addReg(ScratchReg) in LowerPATCHPOINT()
588 .addReg(ScratchReg) in LowerPATCHPOINT()
608 .addReg(ScratchReg)); in LowerPATCHPOINT()
611 .addReg(ScratchReg) in LowerPATCHPOINT()
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Target/BPF/
H A DBPFInstrInfo.cpp50 Register ScratchReg = MI->getOperand(4).getReg(); in expandMEMCPY() local
79 .addReg(ScratchReg, RegState::Define).addReg(SrcReg) in expandMEMCPY()
82 .addReg(ScratchReg, RegState::Kill).addReg(DstReg) in expandMEMCPY()
93 .addReg(ScratchReg, RegState::Define).addReg(SrcReg).addImm(Offset); in expandMEMCPY()
95 .addReg(ScratchReg, RegState::Kill).addReg(DstReg).addImm(Offset); in expandMEMCPY()
100 .addReg(ScratchReg, RegState::Define).addReg(SrcReg).addImm(Offset); in expandMEMCPY()
102 .addReg(ScratchReg, RegState::Kill).addReg(DstReg).addImm(Offset); in expandMEMCPY()
107 .addReg(ScratchReg, RegState::Define).addReg(SrcReg).addImm(Offset); in expandMEMCPY()
109 .addReg(ScratchReg, RegState::Kill).addReg(DstReg).addImm(Offset); in expandMEMCPY()
H A DBPFISelLowering.cpp771 unsigned ScratchReg; in EmitInstrWithCustomInserterMemcpy() local
788 ScratchReg = MRI.createVirtualRegister(&BPF::GPRRegClass); in EmitInstrWithCustomInserterMemcpy()
789 MIB.addReg(ScratchReg, in EmitInstrWithCustomInserterMemcpy()
/freebsd/contrib/llvm-project/llvm/lib/Target/SystemZ/
H A DSystemZRegisterInfo.cpp343 Register ScratchReg = in eliminateFrameIndex() local
351 TII->loadImmediate(MBB, MI, ScratchReg, HighOffset); in eliminateFrameIndex()
353 MI->getOperand(FIOperandNum + 2).ChangeToRegister(ScratchReg, in eliminateFrameIndex()
359 BuildMI(MBB, MI, DL, TII->get(LAOpcode),ScratchReg) in eliminateFrameIndex()
364 TII->loadImmediate(MBB, MI, ScratchReg, HighOffset); in eliminateFrameIndex()
365 BuildMI(MBB, MI, DL, TII->get(SystemZ::LA), ScratchReg) in eliminateFrameIndex()
366 .addReg(BasePtr, RegState::Kill).addImm(0).addReg(ScratchReg); in eliminateFrameIndex()
370 MI->getOperand(FIOperandNum).ChangeToRegister(ScratchReg, in eliminateFrameIndex()
H A DSystemZAsmPrinter.cpp803 unsigned ScratchReg = 0; in LowerPATCHPOINT() local
806 ScratchReg = MI.getOperand(ScratchIdx).getReg(); in LowerPATCHPOINT()
807 } while (ScratchReg == SystemZ::R0D); in LowerPATCHPOINT()
811 .addReg(ScratchReg) in LowerPATCHPOINT()
816 .addReg(ScratchReg) in LowerPATCHPOINT()
823 .addReg(ScratchReg)); in LowerPATCHPOINT()
/freebsd/contrib/llvm-project/llvm/lib/Target/AArch64/
H A DAArch64FalkorHWPFFix.cpp749 for (unsigned ScratchReg : AArch64::GPR64RegClass) { in runOnLoop() local
750 if (!LR.available(ScratchReg) || MRI.isReserved(ScratchReg)) in runOnLoop()
754 NewLdI.BaseReg = ScratchReg; in runOnLoop()
761 << printReg(ScratchReg, TRI) << '\n'); in runOnLoop()
769 BuildMI(*MBB, &MI, DL, TII->get(AArch64::ORRXrs), ScratchReg) in runOnLoop()
774 BaseOpnd.setReg(ScratchReg); in runOnLoop()
780 << printReg(ScratchReg, TRI) << '\n'); in runOnLoop()
782 ScratchReg); // Change tied operand pre/post update dest. in runOnLoop()
786 .addReg(ScratchReg) in runOnLoop()
H A DAArch64RegisterInfo.cpp868 Register ScratchReg; in createScratchRegisterForInstruction() local
875 ScratchReg = MI.getOperand(1).getReg(); in createScratchRegisterForInstruction()
876 MI.getOperand(3).ChangeToRegister(ScratchReg, false, false, true); in createScratchRegisterForInstruction()
880 ScratchReg = in createScratchRegisterForInstruction()
883 .ChangeToRegister(ScratchReg, false, false, true); in createScratchRegisterForInstruction()
885 return ScratchReg; in createScratchRegisterForInstruction()
972 Register ScratchReg = in eliminateFrameIndex() local
974 emitFrameOffset(MBB, II, MI.getDebugLoc(), ScratchReg, FrameReg, Offset, in eliminateFrameIndex()
976 BuildMI(MBB, MI, MI.getDebugLoc(), TII->get(AArch64::LDG), ScratchReg) in eliminateFrameIndex()
977 .addReg(ScratchReg) in eliminateFrameIndex()
[all …]
H A DAArch64AsmPrinter.cpp1329 Register ScratchReg = MI.getOperand(1).getReg(); in LowerJumpTableDest() local
1331 STI->getRegisterInfo()->getSubReg(ScratchReg, AArch64::sub_32); in LowerJumpTableDest()
1366 .addReg(Size == 4 ? ScratchReg : ScratchRegW) in LowerJumpTableDest()
1377 .addReg(ScratchReg) in LowerJumpTableDest()
1597 Register ScratchReg = MI.getOperand(Opers.getNextScratchIdx()).getReg(); in LowerPATCHPOINT() local
1601 .addReg(ScratchReg) in LowerPATCHPOINT()
1605 .addReg(ScratchReg) in LowerPATCHPOINT()
1606 .addReg(ScratchReg) in LowerPATCHPOINT()
1610 .addReg(ScratchReg) in LowerPATCHPOINT()
1611 .addReg(ScratchReg) in LowerPATCHPOINT()
[all …]
H A DAArch64FrameLowering.cpp571 Register ScratchReg = in eliminateCallFramePseudoInstr() local
573 inlineStackProbeFixed(I, ScratchReg, -Amount, StackOffset::get(0, 0)); in eliminateCallFramePseudoInstr()
824 Register ScratchReg = findScratchNonCalleeSaveRegister(&MBB); in allocateStackSpace() local
825 assert(ScratchReg != AArch64::NoRegister); in allocateStackSpace()
827 .addDef(ScratchReg) in allocateStackSpace()
853 Register ScratchReg = RealignmentPadding in allocateStackSpace() local
856 assert(ScratchReg != AArch64::NoRegister); in allocateStackSpace()
858 emitFrameOffset(MBB, MBBI, DL, ScratchReg, AArch64::SP, -AllocSize, &TII, in allocateStackSpace()
864 .addReg(ScratchReg, RegState::Kill) in allocateStackSpace()
4227 Register ScratchReg = MRI->createVirtualRegister(&AArch64::GPR64RegClass); in emitUnrolled() local
[all …]
H A DAArch64FrameLowering.h175 Register ScratchReg, int64_t FrameSize,
/freebsd/contrib/llvm-project/llvm/lib/Target/CSKY/
H A DCSKYRegisterInfo.cpp268 Register ScratchReg = TII->movImm(MBB, NewII, DL, Offset); in eliminateFrameIndex() local
270 TII->get(STI.hasE2() ? CSKY::ADDU32 : CSKY::ADDU16XZ), ScratchReg) in eliminateFrameIndex()
271 .addReg(ScratchReg, RegState::Kill) in eliminateFrameIndex()
275 FrameReg = ScratchReg; in eliminateFrameIndex()
H A DCSKYFrameLowering.cpp572 Register ScratchReg = TII->movImm(MBB, MBBI, DL, std::abs(Val), Flag); in adjustReg() local
576 .addReg(ScratchReg, RegState::Kill) in adjustReg()
/freebsd/contrib/llvm-project/llvm/lib/Target/ARM/
H A DARMBaseRegisterInfo.cpp848 unsigned ScratchReg = 0; in eliminateFrameIndex() local
862 ScratchReg = MF.getRegInfo().createVirtualRegister(RegClass); in eliminateFrameIndex()
864 emitARMRegPlusImmediate(MBB, II, MI.getDebugLoc(), ScratchReg, FrameReg, in eliminateFrameIndex()
868 emitT2RegPlusImmediate(MBB, II, MI.getDebugLoc(), ScratchReg, FrameReg, in eliminateFrameIndex()
872 MI.getOperand(FIOperandNum).ChangeToRegister(ScratchReg, false, false,true); in eliminateFrameIndex()
H A DARMAsmPrinter.cpp2162 Register ScratchReg = MI->getOperand(1).getReg(); in emitInstruction() local
2172 .addReg(ScratchReg) in emitInstruction()
2212 .addReg(ScratchReg) in emitInstruction()
2225 Register ScratchReg = MI->getOperand(1).getReg(); in emitInstruction() local
2231 .addReg(ScratchReg) in emitInstruction()
2242 .addReg(ScratchReg) in emitInstruction()
2248 .addReg(ScratchReg) in emitInstruction()
2284 .addReg(ScratchReg) in emitInstruction()
H A DThumb1FrameLowering.cpp70 unsigned ScratchReg, unsigned MIFlags) { in emitPrologueEpilogueSPUpdate() argument
78 if (ScratchReg == ARM::NoRegister) in emitPrologueEpilogueSPUpdate()
84 BuildMI(MBB, MBBI, dl, TII.get(XOInstr), ScratchReg) in emitPrologueEpilogueSPUpdate()
87 MRI.emitLoadConstPool(MBB, MBBI, dl, ScratchReg, 0, NumBytes, ARMCC::AL, in emitPrologueEpilogueSPUpdate()
92 .addReg(ScratchReg, RegState::Kill) in emitPrologueEpilogueSPUpdate()
/freebsd/contrib/llvm-project/llvm/lib/Target/X86/
H A DX86FrameLowering.cpp3215 unsigned ScratchReg = GetScratchRegister(Is64Bit, IsLP64, MF, true); in adjustForSegmentedStacks() local
3216 assert(!MF.getRegInfo().isLiveIn(ScratchReg) && in adjustForSegmentedStacks()
3283 ScratchReg = IsLP64 ? X86::RSP : X86::ESP; in adjustForSegmentedStacks()
3286 ScratchReg) in adjustForSegmentedStacks()
3294 .addReg(ScratchReg) in adjustForSegmentedStacks()
3320 ScratchReg = X86::ESP; in adjustForSegmentedStacks()
3322 BuildMI(checkMBB, DL, TII.get(X86::LEA32r), ScratchReg) in adjustForSegmentedStacks()
3332 .addReg(ScratchReg) in adjustForSegmentedStacks()
3367 .addReg(ScratchReg) in adjustForSegmentedStacks()
3600 unsigned ScratchReg, SPReg, PReg, SPLimitOffset; in adjustForHiPEPrologue() local
[all …]

12