@@ -217,8 +217,8 @@ void LiveVariables::HandleVirtRegDef(Register Reg, MachineInstr &MI) {
217
217
// / Also returns the sub-registers that're defined by the instruction.
218
218
MachineInstr *
219
219
LiveVariables::FindLastPartialDef (Register Reg,
220
- SmallSet<unsigned , 4 > &PartDefRegs) {
221
- unsigned LastDefReg = 0 ;
220
+ SmallSet<Register , 4 > &PartDefRegs) {
221
+ Register LastDefReg = 0 ;
222
222
unsigned LastDefDist = 0 ;
223
223
MachineInstr *LastDef = nullptr ;
224
224
for (MCPhysReg SubReg : TRI->subregs (Reg)) {
@@ -264,14 +264,14 @@ void LiveVariables::HandlePhysRegUse(Register Reg, MachineInstr &MI) {
264
264
// ...
265
265
// = EAX
266
266
// All of the sub-registers must have been defined before the use of Reg!
267
- SmallSet<unsigned , 4 > PartDefRegs;
267
+ SmallSet<Register , 4 > PartDefRegs;
268
268
MachineInstr *LastPartialDef = FindLastPartialDef (Reg, PartDefRegs);
269
269
// If LastPartialDef is NULL, it must be using a livein register.
270
270
if (LastPartialDef) {
271
271
LastPartialDef->addOperand (MachineOperand::CreateReg (Reg, true /* IsDef*/ ,
272
272
true /* IsImp*/ ));
273
273
PhysRegDef[Reg] = LastPartialDef;
274
- SmallSet<unsigned , 8 > Processed;
274
+ SmallSet<MCPhysReg , 8 > Processed;
275
275
for (MCPhysReg SubReg : TRI->subregs (Reg)) {
276
276
if (Processed.count (SubReg))
277
277
continue ;
@@ -460,7 +460,7 @@ void LiveVariables::HandleRegMask(const MachineOperand &MO, unsigned NumRegs) {
460
460
}
461
461
462
462
void LiveVariables::HandlePhysRegDef (Register Reg, MachineInstr *MI,
463
- SmallVectorImpl<unsigned > &Defs) {
463
+ SmallVectorImpl<Register > &Defs) {
464
464
// What parts of the register are previously defined?
465
465
SmallSet<unsigned , 32 > Live;
466
466
if (PhysRegDef[Reg] || PhysRegUse[Reg]) {
@@ -499,7 +499,7 @@ void LiveVariables::HandlePhysRegDef(Register Reg, MachineInstr *MI,
499
499
}
500
500
501
501
void LiveVariables::UpdatePhysRegDefs (MachineInstr &MI,
502
- SmallVectorImpl<unsigned > &Defs) {
502
+ SmallVectorImpl<Register > &Defs) {
503
503
while (!Defs.empty ()) {
504
504
Register Reg = Defs.pop_back_val ();
505
505
for (MCPhysReg SubReg : TRI->subregs_inclusive (Reg)) {
@@ -510,7 +510,7 @@ void LiveVariables::UpdatePhysRegDefs(MachineInstr &MI,
510
510
}
511
511
512
512
void LiveVariables::runOnInstr (MachineInstr &MI,
513
- SmallVectorImpl<unsigned > &Defs,
513
+ SmallVectorImpl<Register > &Defs,
514
514
unsigned NumRegs) {
515
515
assert (!MI.isDebugOrPseudoInstr ());
516
516
// Process all of the operands of the instruction...
@@ -522,16 +522,16 @@ void LiveVariables::runOnInstr(MachineInstr &MI,
522
522
NumOperandsToProcess = 1 ;
523
523
524
524
// Clear kill and dead markers. LV will recompute them.
525
- SmallVector<unsigned , 4 > UseRegs;
526
- SmallVector<unsigned , 4 > DefRegs;
525
+ SmallVector<Register , 4 > UseRegs;
526
+ SmallVector<Register , 4 > DefRegs;
527
527
SmallVector<unsigned , 1 > RegMasks;
528
528
for (unsigned i = 0 ; i != NumOperandsToProcess; ++i) {
529
529
MachineOperand &MO = MI.getOperand (i);
530
530
if (MO.isRegMask ()) {
531
531
RegMasks.push_back (i);
532
532
continue ;
533
533
}
534
- if (!MO.isReg () || MO.getReg () == 0 )
534
+ if (!MO.isReg () || ! MO.getReg ())
535
535
continue ;
536
536
Register MOReg = MO.getReg ();
537
537
if (MO.isUse ()) {
@@ -551,8 +551,8 @@ void LiveVariables::runOnInstr(MachineInstr &MI,
551
551
552
552
MachineBasicBlock *MBB = MI.getParent ();
553
553
// Process all uses.
554
- for (unsigned MOReg : UseRegs) {
555
- if (Register::isVirtualRegister ( MOReg))
554
+ for (Register MOReg : UseRegs) {
555
+ if (MOReg. isVirtual ( ))
556
556
HandleVirtRegUse (MOReg, MBB, MI);
557
557
else if (!MRI->isReserved (MOReg))
558
558
HandlePhysRegUse (MOReg, MI);
@@ -563,8 +563,8 @@ void LiveVariables::runOnInstr(MachineInstr &MI,
563
563
HandleRegMask (MI.getOperand (Mask), NumRegs);
564
564
565
565
// Process all defs.
566
- for (unsigned MOReg : DefRegs) {
567
- if (Register::isVirtualRegister ( MOReg))
566
+ for (Register MOReg : DefRegs) {
567
+ if (MOReg. isVirtual ( ))
568
568
HandleVirtRegDef (MOReg, MI);
569
569
else if (!MRI->isReserved (MOReg))
570
570
HandlePhysRegDef (MOReg, &MI, Defs);
@@ -574,7 +574,7 @@ void LiveVariables::runOnInstr(MachineInstr &MI,
574
574
575
575
void LiveVariables::runOnBlock (MachineBasicBlock *MBB, unsigned NumRegs) {
576
576
// Mark live-in registers as live-in.
577
- SmallVector<unsigned , 4 > Defs;
577
+ SmallVector<Register , 4 > Defs;
578
578
for (const auto &LI : MBB->liveins ()) {
579
579
assert (Register::isPhysicalRegister (LI.PhysReg ) &&
580
580
" Cannot have a live-in virtual register!" );
0 commit comments