Skip to content

Commit 04c6d18

Browse files
author
git apple-llvm automerger
committed
Merge commit 'c8fcffe775c1' from llvm.org/master into apple/main
2 parents a512152 + c8fcffe commit 04c6d18

File tree

3 files changed

+23
-22
lines changed

3 files changed

+23
-22
lines changed

llvm/include/llvm/CodeGen/MachinePipeliner.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -304,7 +304,7 @@ class SwingSchedulerDAG : public ScheduleDAGInstrs {
304304
void checkValidNodeOrder(const NodeSetType &Circuits) const;
305305
bool schedulePipeline(SMSchedule &Schedule);
306306
bool computeDelta(MachineInstr &MI, unsigned &Delta);
307-
MachineInstr *findDefInLoop(unsigned Reg);
307+
MachineInstr *findDefInLoop(Register Reg);
308308
bool canUseLastOffsetValue(MachineInstr *MI, unsigned &BasePos,
309309
unsigned &OffsetPos, unsigned &NewBase,
310310
int64_t &NewOffset);

llvm/lib/CodeGen/MachinePipeliner.cpp

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1632,7 +1632,8 @@ static void computeLiveOuts(MachineFunction &MF, RegPressureTracker &RPTracker,
16321632
if (Register::isVirtualRegister(Reg))
16331633
Uses.insert(Reg);
16341634
else if (MRI.isAllocatable(Reg))
1635-
for (MCRegUnitIterator Units(Reg, TRI); Units.isValid(); ++Units)
1635+
for (MCRegUnitIterator Units(Reg.asMCReg(), TRI); Units.isValid();
1636+
++Units)
16361637
Uses.insert(*Units);
16371638
}
16381639
}
@@ -1645,7 +1646,8 @@ static void computeLiveOuts(MachineFunction &MF, RegPressureTracker &RPTracker,
16451646
LiveOutRegs.push_back(RegisterMaskPair(Reg,
16461647
LaneBitmask::getNone()));
16471648
} else if (MRI.isAllocatable(Reg)) {
1648-
for (MCRegUnitIterator Units(Reg, TRI); Units.isValid(); ++Units)
1649+
for (MCRegUnitIterator Units(Reg.asMCReg(), TRI); Units.isValid();
1650+
++Units)
16491651
if (!Uses.count(*Units))
16501652
LiveOutRegs.push_back(RegisterMaskPair(*Units,
16511653
LaneBitmask::getNone()));
@@ -2270,7 +2272,7 @@ void SwingSchedulerDAG::applyInstrChange(MachineInstr *MI,
22702272
/// Return the instruction in the loop that defines the register.
22712273
/// If the definition is a Phi, then follow the Phi operand to
22722274
/// the instruction in the loop.
2273-
MachineInstr *SwingSchedulerDAG::findDefInLoop(unsigned Reg) {
2275+
MachineInstr *SwingSchedulerDAG::findDefInLoop(Register Reg) {
22742276
SmallPtrSet<MachineInstr *, 8> Visited;
22752277
MachineInstr *Def = MRI.getVRegDef(Reg);
22762278
while (Def->isPHI()) {

llvm/lib/CodeGen/MachineSink.cpp

Lines changed: 17 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -184,12 +184,12 @@ namespace {
184184
/// to the copy source.
185185
void SalvageUnsunkDebugUsersOfCopy(MachineInstr &,
186186
MachineBasicBlock *TargetBlock);
187-
bool AllUsesDominatedByBlock(unsigned Reg, MachineBasicBlock *MBB,
188-
MachineBasicBlock *DefMBB,
189-
bool &BreakPHIEdge, bool &LocalUse) const;
187+
bool AllUsesDominatedByBlock(Register Reg, MachineBasicBlock *MBB,
188+
MachineBasicBlock *DefMBB, bool &BreakPHIEdge,
189+
bool &LocalUse) const;
190190
MachineBasicBlock *FindSuccToSinkTo(MachineInstr &MI, MachineBasicBlock *MBB,
191191
bool &BreakPHIEdge, AllSuccsCache &AllSuccessors);
192-
bool isProfitableToSinkTo(unsigned Reg, MachineInstr &MI,
192+
bool isProfitableToSinkTo(Register Reg, MachineInstr &MI,
193193
MachineBasicBlock *MBB,
194194
MachineBasicBlock *SuccToSinkTo,
195195
AllSuccsCache &AllSuccessors);
@@ -253,12 +253,11 @@ bool MachineSinking::PerformTrivialForwardCoalescing(MachineInstr &MI,
253253
/// occur in blocks dominated by the specified block. If any use is in the
254254
/// definition block, then return false since it is never legal to move def
255255
/// after uses.
256-
bool
257-
MachineSinking::AllUsesDominatedByBlock(unsigned Reg,
258-
MachineBasicBlock *MBB,
259-
MachineBasicBlock *DefMBB,
260-
bool &BreakPHIEdge,
261-
bool &LocalUse) const {
256+
bool MachineSinking::AllUsesDominatedByBlock(Register Reg,
257+
MachineBasicBlock *MBB,
258+
MachineBasicBlock *DefMBB,
259+
bool &BreakPHIEdge,
260+
bool &LocalUse) const {
262261
assert(Register::isVirtualRegister(Reg) && "Only makes sense for vregs");
263262

264263
// Ignore debug uses because debug info doesn't affect the code.
@@ -560,7 +559,7 @@ bool MachineSinking::PostponeSplitCriticalEdge(MachineInstr &MI,
560559
}
561560

562561
/// isProfitableToSinkTo - Return true if it is profitable to sink MI.
563-
bool MachineSinking::isProfitableToSinkTo(unsigned Reg, MachineInstr &MI,
562+
bool MachineSinking::isProfitableToSinkTo(Register Reg, MachineInstr &MI,
564563
MachineBasicBlock *MBB,
565564
MachineBasicBlock *SuccToSinkTo,
566565
AllSuccsCache &AllSuccessors) {
@@ -1312,9 +1311,9 @@ static bool hasRegisterDependency(MachineInstr *MI,
13121311
return HasRegDependency;
13131312
}
13141313

1315-
static SmallSet<unsigned, 4> getRegUnits(unsigned Reg,
1316-
const TargetRegisterInfo *TRI) {
1317-
SmallSet<unsigned, 4> RegUnits;
1314+
static SmallSet<MCRegister, 4> getRegUnits(MCRegister Reg,
1315+
const TargetRegisterInfo *TRI) {
1316+
SmallSet<MCRegister, 4> RegUnits;
13181317
for (auto RI = MCRegUnitIterator(Reg, TRI); RI.isValid(); ++RI)
13191318
RegUnits.insert(*RI);
13201319
return RegUnits;
@@ -1364,8 +1363,8 @@ bool PostRAMachineSinking::tryToSinkCopy(MachineBasicBlock &CurBB,
13641363
continue;
13651364

13661365
// Record debug use of each reg unit.
1367-
SmallSet<unsigned, 4> Units = getRegUnits(MO.getReg(), TRI);
1368-
for (unsigned Reg : Units)
1366+
SmallSet<MCRegister, 4> Units = getRegUnits(MO.getReg(), TRI);
1367+
for (MCRegister Reg : Units)
13691368
SeenDbgInstrs[Reg].push_back(MI);
13701369
}
13711370
continue;
@@ -1414,8 +1413,8 @@ bool PostRAMachineSinking::tryToSinkCopy(MachineBasicBlock &CurBB,
14141413
if (!MO.isReg() || !MO.isDef())
14151414
continue;
14161415

1417-
SmallSet<unsigned, 4> Units = getRegUnits(MO.getReg(), TRI);
1418-
for (unsigned Reg : Units)
1416+
SmallSet<MCRegister, 4> Units = getRegUnits(MO.getReg(), TRI);
1417+
for (MCRegister Reg : Units)
14191418
for (auto *MI : SeenDbgInstrs.lookup(Reg))
14201419
DbgValsToSinkSet.insert(MI);
14211420
}

0 commit comments

Comments
 (0)