@@ -30,7 +30,7 @@ static bool isValidRegUse(const MachineOperand &MO) {
30
30
return isValidReg (MO) && MO.isUse ();
31
31
}
32
32
33
- static bool isValidRegUseOf (const MachineOperand &MO, MCRegister Reg,
33
+ static bool isValidRegUseOf (const MachineOperand &MO, Register Reg,
34
34
const TargetRegisterInfo *TRI) {
35
35
if (!isValidRegUse (MO))
36
36
return false ;
@@ -41,7 +41,7 @@ static bool isValidRegDef(const MachineOperand &MO) {
41
41
return isValidReg (MO) && MO.isDef ();
42
42
}
43
43
44
- static bool isValidRegDefOf (const MachineOperand &MO, MCRegister Reg,
44
+ static bool isValidRegDefOf (const MachineOperand &MO, Register Reg,
45
45
const TargetRegisterInfo *TRI) {
46
46
if (!isValidRegDef (MO))
47
47
return false ;
@@ -260,8 +260,7 @@ void ReachingDefAnalysis::traverse() {
260
260
#endif
261
261
}
262
262
263
- int ReachingDefAnalysis::getReachingDef (MachineInstr *MI,
264
- MCRegister Reg) const {
263
+ int ReachingDefAnalysis::getReachingDef (MachineInstr *MI, Register Reg) const {
265
264
assert (InstIds.count (MI) && " Unexpected machine instuction." );
266
265
int InstId = InstIds.lookup (MI);
267
266
int DefRes = ReachingDefDefaultVal;
@@ -281,14 +280,14 @@ int ReachingDefAnalysis::getReachingDef(MachineInstr *MI,
281
280
}
282
281
283
282
MachineInstr *ReachingDefAnalysis::getReachingLocalMIDef (MachineInstr *MI,
284
- MCRegister Reg) const {
283
+ Register Reg) const {
285
284
return hasLocalDefBefore (MI, Reg)
286
285
? getInstFromId (MI->getParent (), getReachingDef (MI, Reg))
287
286
: nullptr ;
288
287
}
289
288
290
289
bool ReachingDefAnalysis::hasSameReachingDef (MachineInstr *A, MachineInstr *B,
291
- MCRegister Reg) const {
290
+ Register Reg) const {
292
291
MachineBasicBlock *ParentA = A->getParent ();
293
292
MachineBasicBlock *ParentB = B->getParent ();
294
293
if (ParentA != ParentB)
@@ -317,18 +316,17 @@ MachineInstr *ReachingDefAnalysis::getInstFromId(MachineBasicBlock *MBB,
317
316
return nullptr ;
318
317
}
319
318
320
- int ReachingDefAnalysis::getClearance (MachineInstr *MI, MCRegister Reg) const {
319
+ int ReachingDefAnalysis::getClearance (MachineInstr *MI, Register Reg) const {
321
320
assert (InstIds.count (MI) && " Unexpected machine instuction." );
322
321
return InstIds.lookup (MI) - getReachingDef (MI, Reg);
323
322
}
324
323
325
324
bool ReachingDefAnalysis::hasLocalDefBefore (MachineInstr *MI,
326
- MCRegister Reg) const {
325
+ Register Reg) const {
327
326
return getReachingDef (MI, Reg) >= 0 ;
328
327
}
329
328
330
- void ReachingDefAnalysis::getReachingLocalUses (MachineInstr *Def,
331
- MCRegister Reg,
329
+ void ReachingDefAnalysis::getReachingLocalUses (MachineInstr *Def, Register Reg,
332
330
InstSet &Uses) const {
333
331
MachineBasicBlock *MBB = Def->getParent ();
334
332
MachineBasicBlock::iterator MI = MachineBasicBlock::iterator (Def);
@@ -352,7 +350,7 @@ void ReachingDefAnalysis::getReachingLocalUses(MachineInstr *Def,
352
350
}
353
351
}
354
352
355
- bool ReachingDefAnalysis::getLiveInUses (MachineBasicBlock *MBB, MCRegister Reg,
353
+ bool ReachingDefAnalysis::getLiveInUses (MachineBasicBlock *MBB, Register Reg,
356
354
InstSet &Uses) const {
357
355
for (MachineInstr &MI :
358
356
instructionsWithoutDebug (MBB->instr_begin (), MBB->instr_end ())) {
@@ -370,7 +368,7 @@ bool ReachingDefAnalysis::getLiveInUses(MachineBasicBlock *MBB, MCRegister Reg,
370
368
return isReachingDefLiveOut (&*Last, Reg);
371
369
}
372
370
373
- void ReachingDefAnalysis::getGlobalUses (MachineInstr *MI, MCRegister Reg,
371
+ void ReachingDefAnalysis::getGlobalUses (MachineInstr *MI, Register Reg,
374
372
InstSet &Uses) const {
375
373
MachineBasicBlock *MBB = MI->getParent ();
376
374
@@ -395,8 +393,7 @@ void ReachingDefAnalysis::getGlobalUses(MachineInstr *MI, MCRegister Reg,
395
393
}
396
394
}
397
395
398
- void ReachingDefAnalysis::getGlobalReachingDefs (MachineInstr *MI,
399
- MCRegister Reg,
396
+ void ReachingDefAnalysis::getGlobalReachingDefs (MachineInstr *MI, Register Reg,
400
397
InstSet &Defs) const {
401
398
if (auto *Def = getUniqueReachingMIDef (MI, Reg)) {
402
399
Defs.insert (Def);
@@ -407,13 +404,13 @@ void ReachingDefAnalysis::getGlobalReachingDefs(MachineInstr *MI,
407
404
getLiveOuts (MBB, Reg, Defs);
408
405
}
409
406
410
- void ReachingDefAnalysis::getLiveOuts (MachineBasicBlock *MBB, MCRegister Reg,
407
+ void ReachingDefAnalysis::getLiveOuts (MachineBasicBlock *MBB, Register Reg,
411
408
InstSet &Defs) const {
412
409
SmallPtrSet<MachineBasicBlock*, 2 > VisitedBBs;
413
410
getLiveOuts (MBB, Reg, Defs, VisitedBBs);
414
411
}
415
412
416
- void ReachingDefAnalysis::getLiveOuts (MachineBasicBlock *MBB, MCRegister Reg,
413
+ void ReachingDefAnalysis::getLiveOuts (MachineBasicBlock *MBB, Register Reg,
417
414
InstSet &Defs,
418
415
BlockSet &VisitedBBs) const {
419
416
if (VisitedBBs.count (MBB))
@@ -432,9 +429,8 @@ void ReachingDefAnalysis::getLiveOuts(MachineBasicBlock *MBB, MCRegister Reg,
432
429
getLiveOuts (Pred, Reg, Defs, VisitedBBs);
433
430
}
434
431
435
- MachineInstr *
436
- ReachingDefAnalysis::getUniqueReachingMIDef (MachineInstr *MI,
437
- MCRegister Reg) const {
432
+ MachineInstr *ReachingDefAnalysis::getUniqueReachingMIDef (MachineInstr *MI,
433
+ Register Reg) const {
438
434
// If there's a local def before MI, return it.
439
435
MachineInstr *LocalDef = getReachingLocalMIDef (MI, Reg);
440
436
if (LocalDef && InstIds.lookup (LocalDef) < InstIds.lookup (MI))
@@ -465,8 +461,7 @@ MachineInstr *ReachingDefAnalysis::getMIOperand(MachineInstr *MI,
465
461
return getUniqueReachingMIDef (MI, MO.getReg ());
466
462
}
467
463
468
- bool ReachingDefAnalysis::isRegUsedAfter (MachineInstr *MI,
469
- MCRegister Reg) const {
464
+ bool ReachingDefAnalysis::isRegUsedAfter (MachineInstr *MI, Register Reg) const {
470
465
MachineBasicBlock *MBB = MI->getParent ();
471
466
LiveRegUnits LiveRegs (*TRI);
472
467
LiveRegs.addLiveOuts (*MBB);
@@ -487,7 +482,7 @@ bool ReachingDefAnalysis::isRegUsedAfter(MachineInstr *MI,
487
482
}
488
483
489
484
bool ReachingDefAnalysis::isRegDefinedAfter (MachineInstr *MI,
490
- MCRegister Reg) const {
485
+ Register Reg) const {
491
486
MachineBasicBlock *MBB = MI->getParent ();
492
487
auto Last = MBB->getLastNonDebugInstr ();
493
488
if (Last != MBB->end () &&
@@ -501,7 +496,7 @@ bool ReachingDefAnalysis::isRegDefinedAfter(MachineInstr *MI,
501
496
}
502
497
503
498
bool ReachingDefAnalysis::isReachingDefLiveOut (MachineInstr *MI,
504
- MCRegister Reg) const {
499
+ Register Reg) const {
505
500
MachineBasicBlock *MBB = MI->getParent ();
506
501
LiveRegUnits LiveRegs (*TRI);
507
502
LiveRegs.addLiveOuts (*MBB);
@@ -522,7 +517,7 @@ bool ReachingDefAnalysis::isReachingDefLiveOut(MachineInstr *MI,
522
517
}
523
518
524
519
MachineInstr *ReachingDefAnalysis::getLocalLiveOutMIDef (MachineBasicBlock *MBB,
525
- MCRegister Reg) const {
520
+ Register Reg) const {
526
521
LiveRegUnits LiveRegs (*TRI);
527
522
LiveRegs.addLiveOuts (*MBB);
528
523
if (LiveRegs.available (Reg))
@@ -646,7 +641,7 @@ ReachingDefAnalysis::isSafeToRemove(MachineInstr *MI, InstSet &Visited,
646
641
void ReachingDefAnalysis::collectKilledOperands (MachineInstr *MI,
647
642
InstSet &Dead) const {
648
643
Dead.insert (MI);
649
- auto IsDead = [this , &Dead](MachineInstr *Def, MCRegister Reg) {
644
+ auto IsDead = [this , &Dead](MachineInstr *Def, Register Reg) {
650
645
if (mayHaveSideEffects (*Def))
651
646
return false ;
652
647
@@ -676,12 +671,12 @@ void ReachingDefAnalysis::collectKilledOperands(MachineInstr *MI,
676
671
}
677
672
678
673
bool ReachingDefAnalysis::isSafeToDefRegAt (MachineInstr *MI,
679
- MCRegister Reg) const {
674
+ Register Reg) const {
680
675
SmallPtrSet<MachineInstr*, 1 > Ignore;
681
676
return isSafeToDefRegAt (MI, Reg, Ignore);
682
677
}
683
678
684
- bool ReachingDefAnalysis::isSafeToDefRegAt (MachineInstr *MI, MCRegister Reg,
679
+ bool ReachingDefAnalysis::isSafeToDefRegAt (MachineInstr *MI, Register Reg,
685
680
InstSet &Ignore) const {
686
681
// Check for any uses of the register after MI.
687
682
if (isRegUsedAfter (MI, Reg)) {
0 commit comments