Avoid binding pointers to "auto&" (by dereferencing the pointer that's non-null anyway)

Based on @djtodoro's 2552dc5317
This commit is contained in:
David Blaikie 2020-05-12 11:39:01 -07:00
parent ce195fb22b
commit aa99da5ace
1 changed files with 8 additions and 8 deletions

View File

@ -652,9 +652,9 @@ static void collectCallSiteParameters(const MachineInstr *CallMI,
return;
auto *MBB = CallMI->getParent();
const auto &TRI = MF->getSubtarget().getRegisterInfo();
const auto &TII = MF->getSubtarget().getInstrInfo();
const auto &TLI = MF->getSubtarget().getTargetLowering();
const auto &TRI = *MF->getSubtarget().getRegisterInfo();
const auto &TII = *MF->getSubtarget().getInstrInfo();
const auto &TLI = *MF->getSubtarget().getTargetLowering();
// Skip the call instruction.
auto I = std::next(CallMI->getReverseIterator());
@ -715,7 +715,7 @@ static void collectCallSiteParameters(const MachineInstr *CallMI,
if (MO.isReg() && MO.isDef() &&
Register::isPhysicalRegister(MO.getReg())) {
for (auto FwdReg : ForwardedRegWorklist)
if (TRI->regsOverlap(FwdReg.first, MO.getReg()))
if (TRI.regsOverlap(FwdReg.first, MO.getReg()))
Defs.insert(FwdReg.first);
}
}
@ -743,17 +743,17 @@ static void collectCallSiteParameters(const MachineInstr *CallMI,
continue;
for (auto ParamFwdReg : FwdRegDefs) {
if (auto ParamValue = TII->describeLoadedValue(*I, ParamFwdReg)) {
if (auto ParamValue = TII.describeLoadedValue(*I, ParamFwdReg)) {
if (ParamValue->first.isImm()) {
int64_t Val = ParamValue->first.getImm();
finishCallSiteParams(Val, ParamValue->second,
ForwardedRegWorklist[ParamFwdReg], Params);
} else if (ParamValue->first.isReg()) {
Register RegLoc = ParamValue->first.getReg();
unsigned SP = TLI->getStackPointerRegisterToSaveRestore();
Register FP = TRI->getFrameRegister(*MF);
unsigned SP = TLI.getStackPointerRegisterToSaveRestore();
Register FP = TRI.getFrameRegister(*MF);
bool IsSPorFP = (RegLoc == SP) || (RegLoc == FP);
if (TRI->isCalleeSavedPhysReg(RegLoc, *MF) || IsSPorFP) {
if (TRI.isCalleeSavedPhysReg(RegLoc, *MF) || IsSPorFP) {
MachineLocation MLoc(RegLoc, /*IsIndirect=*/IsSPorFP);
finishCallSiteParams(MLoc, ParamValue->second,
ForwardedRegWorklist[ParamFwdReg], Params);