Lines Matching refs:Reg

70         unsigned Reg = *AI;  in StartBlock()  local
71 Classes[Reg] = reinterpret_cast<TargetRegisterClass *>(-1); in StartBlock()
72 KillIndices[Reg] = BBSize; in StartBlock()
73 DefIndices[Reg] = ~0u; in StartBlock()
84 unsigned Reg = *I; in StartBlock() local
85 if (!IsReturnBlock && !Pristine.test(Reg)) in StartBlock()
88 unsigned Reg = *AI; in StartBlock() local
89 Classes[Reg] = reinterpret_cast<TargetRegisterClass *>(-1); in StartBlock()
90 KillIndices[Reg] = BBSize; in StartBlock()
91 DefIndices[Reg] = ~0u; in StartBlock()
114 for (unsigned Reg = 1; Reg != TRI->getNumRegs(); ++Reg) { in Observe() local
115 if (KillIndices[Reg] != ~0u) { in Observe()
119 Classes[Reg] = reinterpret_cast<TargetRegisterClass *>(-1); in Observe()
120 KillIndices[Reg] = Count; in Observe()
121 } else if (DefIndices[Reg] < InsertPosIndex && DefIndices[Reg] >= Count) { in Observe()
126 Classes[Reg] = reinterpret_cast<TargetRegisterClass *>(-1); in Observe()
130 DefIndices[Reg] = InsertPosIndex; in Observe()
184 Register Reg = MO.getReg(); in PrescanInstruction() local
185 if (Reg == 0) continue; in PrescanInstruction()
193 if (!Classes[Reg] && NewRC) in PrescanInstruction()
194 Classes[Reg] = NewRC; in PrescanInstruction()
195 else if (!NewRC || Classes[Reg] != NewRC) in PrescanInstruction()
196 Classes[Reg] = reinterpret_cast<TargetRegisterClass *>(-1); in PrescanInstruction()
199 for (MCRegAliasIterator AI(Reg, TRI, false); AI.isValid(); ++AI) { in PrescanInstruction()
206 Classes[Reg] = reinterpret_cast<TargetRegisterClass *>(-1); in PrescanInstruction()
211 if (Classes[Reg] != reinterpret_cast<TargetRegisterClass *>(-1)) in PrescanInstruction()
212 RegRefs.insert(std::make_pair(Reg, &MO)); in PrescanInstruction()
215 if (!KeepRegs.test(Reg)) { in PrescanInstruction()
216 for (MCPhysReg SubReg : TRI->subregs_inclusive(Reg)) in PrescanInstruction()
225 Register Reg = MO.getReg(); in PrescanInstruction() local
226 if (!Reg.isValid()) in PrescanInstruction()
239 Classes[Reg] == reinterpret_cast<TargetRegisterClass *>(-1)) { in PrescanInstruction()
240 for (MCPhysReg SubReg : TRI->subregs_inclusive(Reg)) { in PrescanInstruction()
243 for (MCPhysReg SuperReg : TRI->superregs(Reg)) { in PrescanInstruction()
280 Register Reg = MO.getReg(); in ScanInstruction() local
281 if (Reg == 0) continue; in ScanInstruction()
290 bool Keep = KeepRegs.test(Reg); in ScanInstruction()
294 for (MCPhysReg SubregReg : TRI->subregs_inclusive(Reg)) { in ScanInstruction()
303 for (MCPhysReg SR : TRI->superregs(Reg)) in ScanInstruction()
310 Register Reg = MO.getReg(); in ScanInstruction() local
311 if (Reg == 0) continue; in ScanInstruction()
320 if (!Classes[Reg] && NewRC) in ScanInstruction()
321 Classes[Reg] = NewRC; in ScanInstruction()
322 else if (!NewRC || Classes[Reg] != NewRC) in ScanInstruction()
323 Classes[Reg] = reinterpret_cast<TargetRegisterClass *>(-1); in ScanInstruction()
325 RegRefs.insert(std::make_pair(Reg, &MO)); in ScanInstruction()
329 for (MCRegAliasIterator AI(Reg, TRI, true); AI.isValid(); ++AI) { in ScanInstruction()
466 for (unsigned Reg = 1; Reg < TRI->getNumRegs(); ++Reg) { in BreakAntiDependencies() local
467 if (KillIndices[Reg] == ~0u) in BreakAntiDependencies()
468 LLVM_DEBUG(dbgs() << " " << printReg(Reg, TRI)); in BreakAntiDependencies()
614 Register Reg = MO.getReg(); in BreakAntiDependencies() local
615 if (Reg == 0) continue; in BreakAntiDependencies()
616 if (MO.isUse() && TRI->regsOverlap(AntiDepReg, Reg)) { in BreakAntiDependencies()
620 if (MO.isDef() && Reg != AntiDepReg) in BreakAntiDependencies()
621 ForbidRegs.push_back(Reg); in BreakAntiDependencies()