return;
auto *MBB = CallMI->getParent();
- const TargetRegisterInfo &TRI = *MF->getSubtarget().getRegisterInfo();
- const TargetInstrInfo &TII = *MF->getSubtarget().getInstrInfo();
- const TargetLowering &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());
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);
}
}
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);