| /llvm-project-15.0.7/llvm/lib/Target/WebAssembly/ |
| H A D | WebAssemblyPeephole.cpp | 61 static bool maybeRewriteToDrop(unsigned OldReg, unsigned NewReg, in maybeRewriteToDrop() argument 65 if (OldReg == NewReg) { in maybeRewriteToDrop() 67 Register NewReg = MRI.createVirtualRegister(MRI.getRegClass(OldReg)); in maybeRewriteToDrop() local 68 MO.setReg(NewReg); in maybeRewriteToDrop() 70 MFI.stackifyVReg(MRI, NewReg); in maybeRewriteToDrop() 100 Register NewReg = MRI.createVirtualRegister(RegClass); in maybeRewriteToFallthrough() local 101 BuildMI(MBB, MI, MI.getDebugLoc(), TII.get(CopyLocalOpc), NewReg) in maybeRewriteToFallthrough() 103 MO.setReg(NewReg); in maybeRewriteToFallthrough() 104 MFI.stackifyVReg(MRI, NewReg); in maybeRewriteToFallthrough() 147 Register NewReg = Op2.getReg(); in runOnMachineFunction() local [all …]
|
| H A D | WebAssemblyExplicitLocals.cpp | 279 Register NewReg = MRI.createVirtualRegister(RC); in runOnMachineFunction() local 283 MI.getOperand(2).setReg(NewReg); in runOnMachineFunction() 284 MFI.stackifyVReg(MRI, NewReg); in runOnMachineFunction() 308 Register NewReg = MRI.createVirtualRegister(RC); in runOnMachineFunction() local 314 .addReg(NewReg); in runOnMachineFunction() 327 .addReg(NewReg); in runOnMachineFunction() 332 Def.setReg(NewReg); in runOnMachineFunction() 334 MFI.stackifyVReg(MRI, NewReg); in runOnMachineFunction() 380 Register NewReg = MRI.createVirtualRegister(RC); in runOnMachineFunction() local 390 MO.setReg(NewReg); in runOnMachineFunction() [all …]
|
| H A D | WebAssemblyRegStackify.cpp | 536 Def->getOperand(0).setReg(NewReg); in moveForSingleUse() 537 Op.setReg(NewReg); in moveForSingleUse() 540 LIS.createAndComputeVirtRegInterval(NewReg); in moveForSingleUse() 548 MFI.stackifyVReg(MRI, NewReg); in moveForSingleUse() 550 DefDIs.updateReg(NewReg); in moveForSingleUse() 572 TII->reMaterialize(MBB, Insert, NewReg, 0, Def, *TRI); in rematerializeCheapDef() 573 Op.setReg(NewReg); in rematerializeCheapDef() 576 LIS.createAndComputeVirtRegInterval(NewReg); in rematerializeCheapDef() 577 MFI.stackifyVReg(MRI, NewReg); in rematerializeCheapDef() 601 DefDIs.updateReg(NewReg); in rematerializeCheapDef() [all …]
|
| H A D | WebAssemblyDebugValueManager.cpp | 53 unsigned NewReg) { in clone() argument 59 MO.setReg(NewReg); in clone()
|
| H A D | WebAssemblyDebugValueManager.h | 33 void clone(MachineInstr *Insert, unsigned NewReg);
|
| /llvm-project-15.0.7/llvm/lib/CodeGen/ |
| H A D | CriticalAntiDepBreaker.cpp | 377 CheckOper.getReg() != NewReg) in isNewRegClobberedByRefs() 407 for (unsigned NewReg : Order) { in findSuitableFreeRegister() local 409 if (NewReg == AntiDepReg) continue; in findSuitableFreeRegister() 413 if (NewReg == LastNewReg) continue; in findSuitableFreeRegister() 422 assert(((KillIndices[NewReg] == ~0u) != (DefIndices[NewReg] == ~0u)) in findSuitableFreeRegister() 424 if (KillIndices[NewReg] != ~0u || in findSuitableFreeRegister() 431 if (TRI->regsOverlap(NewReg, R)) { in findSuitableFreeRegister() 436 return NewReg; in findSuitableFreeRegister() 662 Q->second->setReg(NewReg); in BreakAntiDependencies() 669 AntiDepReg, NewReg); in BreakAntiDependencies() [all …]
|
| H A D | AggressiveAntiDepBreaker.cpp | 647 unsigned NewReg = 0; in FindSuitableFreeRegisters() local 649 NewReg = NewSuperReg; in FindSuitableFreeRegisters() 659 if (!RenameRegisterMap[Reg].test(NewReg)) { in FindSuitableFreeRegisters() 668 if (State->IsLive(NewReg) || (KillIndices[Reg] > DefIndices[NewReg])) { in FindSuitableFreeRegisters() 709 if (DefMI->readsRegister(NewReg, TRI)) { in FindSuitableFreeRegisters() 945 unsigned NewReg = P.second; in BreakAntiDependencies() local 954 Q.second.Operand->setReg(NewReg); in BreakAntiDependencies() 961 AntiDepReg, NewReg); in BreakAntiDependencies() 967 State->UnionGroups(NewReg, 0); in BreakAntiDependencies() 968 RegRefs.erase(NewReg); in BreakAntiDependencies() [all …]
|
| H A D | MachineCSE.cpp | 618 Register NewReg = CSMI->getOperand(i).getReg(); in ProcessBlockCSE() local 630 if (OldReg == NewReg) { in ProcessBlockCSE() 636 Register::isVirtualRegister(NewReg) && in ProcessBlockCSE() 648 if (!MRI->constrainRegAttrs(NewReg, OldReg)) { in ProcessBlockCSE() 655 CSEPairs.push_back(std::make_pair(OldReg, NewReg)); in ProcessBlockCSE() 663 unsigned NewReg = CSEPair.second; in ProcessBlockCSE() local 667 Def->clearRegisterDeads(NewReg); in ProcessBlockCSE() 669 MRI->replaceRegWith(OldReg, NewReg); in ProcessBlockCSE() 670 MRI->clearKillFlags(NewReg); in ProcessBlockCSE() 852 if (!isProfitableToCSE(NewReg, VReg, CMBB, &MI)) in ProcessBlockPRE() [all …]
|
| H A D | ModuloSchedule.cpp | 411 unsigned NewReg = 0; in generateExistingPhis() local 511 NewReg = PhiOp2; in generateExistingPhis() 524 PhiOp2 = NewReg; in generateExistingPhis() 562 NewReg); in generateExistingPhis() 573 PhiOp2 = NewReg; in generateExistingPhis() 674 PhiOp2 = NewReg; in generatePhis() 1020 MO.setReg(NewReg); in updateInstruction() 1155 ReplaceReg = NewReg; in rewriteScheduledInstr() 1160 ReplaceReg = NewReg; in rewriteScheduledInstr() 1162 ReplaceReg = NewReg; in rewriteScheduledInstr() [all …]
|
| H A D | TailDuplicator.cpp | 331 void TailDuplicator::addSSAUpdateEntry(Register OrigReg, Register NewReg, in addSSAUpdateEntry() argument 336 LI->second.push_back(std::make_pair(BB, NewReg)); in addSSAUpdateEntry() 339 Vals.push_back(std::make_pair(BB, NewReg)); in addSSAUpdateEntry() 402 Register NewReg = MRI->createVirtualRegister(RC); in duplicateInstruction() local 403 MO.setReg(NewReg); in duplicateInstruction() 404 LocalVRMap.insert(std::make_pair(Reg, RegSubRegPair(NewReg, 0))); in duplicateInstruction() 406 addSSAUpdateEntry(Reg, NewReg, PredBB); in duplicateInstruction() 446 Register NewReg = MRI->createVirtualRegister(NewRC); in duplicateInstruction() local 448 TII->get(TargetOpcode::COPY), NewReg) in duplicateInstruction() 451 LocalVRMap.insert(std::make_pair(Reg, RegSubRegPair(NewReg, 0))); in duplicateInstruction() [all …]
|
| H A D | PeepholeOptimizer.cpp | 845 virtual bool RewriteCurrentSource(Register NewReg, unsigned NewSubReg) = 0; 873 bool RewriteCurrentSource(Register NewReg, unsigned NewSubReg) override { in RewriteCurrentSource() argument 877 MOSrc.setReg(NewReg); in RewriteCurrentSource() 918 bool RewriteCurrentSource(Register NewReg, unsigned NewSubReg) override { in RewriteCurrentSource() argument 962 bool RewriteCurrentSource(Register NewReg, unsigned NewSubReg) override { in RewriteCurrentSource() argument 967 MO.setReg(NewReg); in RewriteCurrentSource() 1009 bool RewriteCurrentSource(Register NewReg, unsigned NewSubReg) override { in RewriteCurrentSource() argument 1014 CopyLike.getOperand(CurrentSrcIdx).setReg(NewReg); in RewriteCurrentSource() 1087 bool RewriteCurrentSource(Register NewReg, unsigned NewSubReg) override { in RewriteCurrentSource() argument 1094 MO.setReg(NewReg); in RewriteCurrentSource()
|
| /llvm-project-15.0.7/llvm/lib/Target/CSKY/ |
| H A D | CSKYRegisterInfo.cpp | 199 Register NewReg = STI.hasE2() in eliminateFrameIndex() local 210 .addReg(NewReg, getKillRegState(true)) in eliminateFrameIndex() 219 Register NewReg; in eliminateFrameIndex() local 221 NewReg = MRI.createVirtualRegister(&CSKY::GPRRegClass); in eliminateFrameIndex() 222 BuildMI(MBB, II, DL, TII->get(CSKY::MVC32), NewReg) in eliminateFrameIndex() 225 NewReg = MRI.createVirtualRegister(&CSKY::mGPRRegClass); in eliminateFrameIndex() 228 .addReg(NewReg, RegState::Define) in eliminateFrameIndex() 230 .addReg(NewReg, getKillRegState(true)) in eliminateFrameIndex() 231 .addReg(NewReg, getKillRegState(true)) in eliminateFrameIndex() 235 .addReg(NewReg) in eliminateFrameIndex() [all …]
|
| /llvm-project-15.0.7/llvm/tools/llvm-reduce/deltas/ |
| H A D | ReduceInstructionsMIR.cpp | 103 Register NewReg = 0; in extractInstrFromFunction() local 111 while (NewReg == 0 && BB) { in extractInstrFromFunction() 112 NewReg = getPrevDefOfRCInMBB(*BB, RI, RegRC, RegTy, ToDelete); in extractInstrFromFunction() 126 if (!NewReg) { in extractInstrFromFunction() 127 NewReg = MRI->cloneVirtualRegister(Reg); in extractInstrFromFunction() 132 .addReg(NewReg, getRegState(MO), MO.getSubReg()); in extractInstrFromFunction() 138 UMO.setReg(NewReg); in extractInstrFromFunction()
|
| /llvm-project-15.0.7/llvm/include/llvm/CodeGen/ |
| H A D | AntiDepBreaker.h | 60 void UpdateDbgValue(MachineInstr &MI, unsigned OldReg, unsigned NewReg) { in UpdateDbgValue() argument 64 MI.getDebugOperand(0).setReg(NewReg); in UpdateDbgValue() 68 MI.getOperand(0).setReg(NewReg); in UpdateDbgValue() 77 unsigned OldReg, unsigned NewReg) { in UpdateDbgValues() argument 85 UpdateDbgValue(*DbgMI, OldReg, NewReg); in UpdateDbgValues()
|
| /llvm-project-15.0.7/llvm/lib/Target/AMDGPU/ |
| H A D | SIOptimizeVGPRLiveRange.cpp | 127 Register Reg, Register NewReg, MachineBasicBlock *Flow, 470 Register Reg, Register NewReg, MachineBasicBlock *Flow, in updateLiveRangeInElseRegion() argument 473 LiveVariables::VarInfo &NewVarInfo = LV->getVarInfo(NewReg); in updateLiveRangeInElseRegion() 507 Register NewReg = MRI->createVirtualRegister(RC); in optimizeLiveRange() local 526 O.setReg(NewReg); in optimizeLiveRange() 532 O.setReg(NewReg); in optimizeLiveRange() 550 Register NewReg = MRI->createVirtualRegister(RC); in optimizeWaterfallLiveRange() local 560 O.setReg(NewReg); in optimizeWaterfallLiveRange() 565 TII->get(TargetOpcode::PHI), NewReg); in optimizeWaterfallLiveRange() 579 if (MI->readsRegister(NewReg, TRI)) { in optimizeWaterfallLiveRange() [all …]
|
| /llvm-project-15.0.7/llvm/lib/Target/RISCV/ |
| H A D | RISCVMakeCompressible.cpp | 288 Register NewReg) { in updateOperands() argument 317 MO.setReg(NewReg); in updateOperands() 351 Register NewReg = analyzeCompressibleUses(MI, RegImm, MIs); in runOnMachineFunction() local 352 if (!NewReg) in runOnMachineFunction() 358 BuildMI(MBB, MI, MI.getDebugLoc(), TII.get(RISCV::ADDI), NewReg) in runOnMachineFunction() 370 BuildMI(MBB, MI, MI.getDebugLoc(), TII.get(Opcode), NewReg) in runOnMachineFunction() 381 updateOperands(*UpdateMI, RegImm, NewReg); in runOnMachineFunction()
|
| /llvm-project-15.0.7/llvm/lib/Target/SPIRV/ |
| H A D | SPIRVMCInstLower.cpp | 43 Register NewReg = MAI->getRegisterAlias(MF, MO.getReg()); in lower() local 44 MCOp = MCOperand::createReg(NewReg.isValid() ? NewReg : MO.getReg()); in lower()
|
| H A D | SPIRVPreLegalizer.cpp | 203 Register NewReg = MRI.createGenericVirtualRegister(MRI.getType(Reg)); in insertAssignInstr() local 205 MRI.setRegClass(NewReg, RC); in insertAssignInstr() 210 GR->assignSPIRVTypeToVReg(SpirvTy, NewReg, MIB.getMF()); in insertAssignInstr() 213 .addUse(NewReg) in insertAssignInstr() 215 Def->getOperand(0).setReg(NewReg); in insertAssignInstr() 217 return NewReg; in insertAssignInstr() 331 auto NewReg = createNewIdReg(MI.getOperand(0).getReg(), Opc, MRI, *GR).first; in processInstr() local 332 AssignTypeInst.getOperand(1).setReg(NewReg); in processInstr() 333 MI.getOperand(0).setReg(NewReg); in processInstr()
|
| H A D | SPIRVModuleAnalysis.h | 114 Register NewReg = Register::index2VirtReg(getNextID()); in getOrCreateMBBRegister() local 115 BBNumToRegMap[MBB.getNumber()] = NewReg; in getOrCreateMBBRegister() 116 return NewReg; in getOrCreateMBBRegister()
|
| H A D | SPIRVInstructionSelector.cpp | 655 .addUse(NewReg) in selectAddrSpaceCast() 880 if (!NewReg.isValid()) { in buildI32Constant() 882 GR.add(ConstInt, GR.CurMF, NewReg); in buildI32Constant() 887 .addDef(NewReg) in buildI32Constant() 891 .addDef(NewReg) in buildI32Constant() 897 return NewReg; in buildI32Constant() 1318 if (!NewReg.isValid()) { in selectGlobalValue() 1321 Register NewReg = ResVReg; in selectGlobalValue() local 1324 .addDef(NewReg) in selectGlobalValue() 1328 assert(NewReg != ResVReg); in selectGlobalValue() [all …]
|
| /llvm-project-15.0.7/llvm/lib/Target/AArch64/ |
| H A D | AArch64DeadRegisterDefinitionsPass.cpp | 161 unsigned NewReg; in processMachineBasicBlock() local 166 NewReg = AArch64::WZR; in processMachineBasicBlock() 168 NewReg = AArch64::XZR; in processMachineBasicBlock() 174 MO.setReg(NewReg); in processMachineBasicBlock()
|
| /llvm-project-15.0.7/llvm/lib/CodeGen/GlobalISel/ |
| H A D | Localizer.cpp | 134 Register NewReg = MRI->cloneVirtualRegister(Reg); in localizeInterBlock() local 135 LocalizedMI->getOperand(0).setReg(NewReg); in localizeInterBlock() 137 MBBWithLocalDef.insert(std::make_pair(MBBAndReg, NewReg)).first; in localizeInterBlock()
|
| /llvm-project-15.0.7/llvm/lib/Target/ARM/ |
| H A D | A15SDOptimizer.cpp | 625 unsigned NewReg = optimizeSDPattern(MI); in runOnInstruction() local 627 if (NewReg != 0) { in runOnInstruction() 635 MRI->constrainRegClass(NewReg, MRI->getRegClass(Use->getReg())); in runOnInstruction() 638 << printReg(NewReg) << "\n"); in runOnInstruction() 639 Use->substVirtReg(NewReg, 0, *TRI); in runOnInstruction() 642 Replacements[MI] = NewReg; in runOnInstruction()
|
| /llvm-project-15.0.7/llvm/tools/llvm-reduce/ |
| H A D | ReducerWorkItem.cpp | 252 Register NewReg = DstMRI->createIncompleteVirtualRegister( in cloneMF() local 254 assert(NewReg == Reg && "expected to preserve virtreg number"); in cloneMF() 256 DstMRI->setRegClassOrRegBank(NewReg, SrcMRI->getRegClassOrRegBank(Reg)); in cloneMF() 260 DstMRI->setType(NewReg, RegTy); in cloneMF() 265 DstMRI->addRegAllocationHint(NewReg, PrefReg); in cloneMF()
|
| /llvm-project-15.0.7/llvm/lib/CodeGen/AsmPrinter/ |
| H A D | DbgEntityHistoryCalculator.cpp | 395 Register NewReg = Op.getReg(); in handleNewDebugValue() local 396 if (!TrackedRegs.count(NewReg)) in handleNewDebugValue() 397 addRegDescribedVar(RegVars, NewReg, Var); in handleNewDebugValue() 399 TrackedRegs[NewReg] = true; in handleNewDebugValue()
|