forked from OSchip/llvm-project
The subtarget is cached on the MachineFunction. Access it directly.
llvm-svn: 227173
This commit is contained in:
parent
e38c8d4aa9
commit
3d4276f053
|
@ -777,15 +777,13 @@ bool EarlyIfConverter::runOnMachineFunction(MachineFunction &MF) {
|
|||
DEBUG(dbgs() << "********** EARLY IF-CONVERSION **********\n"
|
||||
<< "********** Function: " << MF.getName() << '\n');
|
||||
// Only run if conversion if the target wants it.
|
||||
if (!MF.getTarget()
|
||||
.getSubtarget<TargetSubtargetInfo>()
|
||||
.enableEarlyIfConversion())
|
||||
const TargetSubtargetInfo &STI = MF.getSubtarget();
|
||||
if (!STI.enableEarlyIfConversion())
|
||||
return false;
|
||||
|
||||
TII = MF.getSubtarget().getInstrInfo();
|
||||
TRI = MF.getSubtarget().getRegisterInfo();
|
||||
SchedModel =
|
||||
MF.getTarget().getSubtarget<TargetSubtargetInfo>().getSchedModel();
|
||||
TII = STI.getInstrInfo();
|
||||
TRI = STI.getRegisterInfo();
|
||||
SchedModel = STI.getSchedModel();
|
||||
MRI = &MF.getRegInfo();
|
||||
DomTree = &getAnalysis<MachineDominatorTree>();
|
||||
Loops = getAnalysisIfAvailable<MachineLoopInfo>();
|
||||
|
|
|
@ -271,15 +271,13 @@ INITIALIZE_PASS_DEPENDENCY(MachineBranchProbabilityInfo)
|
|||
INITIALIZE_PASS_END(IfConverter, "if-converter", "If Converter", false, false)
|
||||
|
||||
bool IfConverter::runOnMachineFunction(MachineFunction &MF) {
|
||||
TLI = MF.getSubtarget().getTargetLowering();
|
||||
TII = MF.getSubtarget().getInstrInfo();
|
||||
TRI = MF.getSubtarget().getRegisterInfo();
|
||||
const TargetSubtargetInfo &ST = MF.getSubtarget();
|
||||
TLI = ST.getTargetLowering();
|
||||
TII = ST.getInstrInfo();
|
||||
TRI = ST.getRegisterInfo();
|
||||
MBFI = &getAnalysis<MachineBlockFrequencyInfo>();
|
||||
MBPI = &getAnalysis<MachineBranchProbabilityInfo>();
|
||||
MRI = &MF.getRegInfo();
|
||||
|
||||
const TargetSubtargetInfo &ST =
|
||||
MF.getTarget().getSubtarget<TargetSubtargetInfo>();
|
||||
SchedModel.init(ST.getSchedModel(), &ST, TII);
|
||||
|
||||
if (!TII) return false;
|
||||
|
@ -290,7 +288,7 @@ bool IfConverter::runOnMachineFunction(MachineFunction &MF) {
|
|||
if (!PreRegAlloc) {
|
||||
// Tail merge tend to expose more if-conversion opportunities.
|
||||
BranchFolder BF(true, false, *MBFI, *MBPI);
|
||||
BFChange = BF.OptimizeFunction(MF, TII, MF.getSubtarget().getRegisterInfo(),
|
||||
BFChange = BF.OptimizeFunction(MF, TII, ST.getRegisterInfo(),
|
||||
getAnalysisIfAvailable<MachineModuleInfo>());
|
||||
}
|
||||
|
||||
|
|
|
@ -406,8 +406,7 @@ bool MachineCombiner::combineInstructions(MachineBasicBlock *MBB) {
|
|||
}
|
||||
|
||||
bool MachineCombiner::runOnMachineFunction(MachineFunction &MF) {
|
||||
const TargetSubtargetInfo &STI =
|
||||
MF.getTarget().getSubtarget<TargetSubtargetInfo>();
|
||||
const TargetSubtargetInfo &STI = MF.getSubtarget();
|
||||
TII = STI.getInstrInfo();
|
||||
TRI = STI.getRegisterInfo();
|
||||
SchedModel = STI.getSchedModel();
|
||||
|
|
|
@ -336,9 +336,7 @@ bool PostMachineScheduler::runOnMachineFunction(MachineFunction &mf) {
|
|||
if (skipOptnoneFunction(*mf.getFunction()))
|
||||
return false;
|
||||
|
||||
const TargetSubtargetInfo &ST =
|
||||
mf.getTarget().getSubtarget<TargetSubtargetInfo>();
|
||||
if (!ST.enablePostMachineScheduler()) {
|
||||
if (!mf.getSubtarget().enablePostMachineScheduler()) {
|
||||
DEBUG(dbgs() << "Subtarget disables post-MI-sched.\n");
|
||||
return false;
|
||||
}
|
||||
|
|
|
@ -52,12 +52,11 @@ void MachineTraceMetrics::getAnalysisUsage(AnalysisUsage &AU) const {
|
|||
|
||||
bool MachineTraceMetrics::runOnMachineFunction(MachineFunction &Func) {
|
||||
MF = &Func;
|
||||
TII = MF->getSubtarget().getInstrInfo();
|
||||
TRI = MF->getSubtarget().getRegisterInfo();
|
||||
const TargetSubtargetInfo &ST = MF->getSubtarget();
|
||||
TII = ST.getInstrInfo();
|
||||
TRI = ST.getRegisterInfo();
|
||||
MRI = &MF->getRegInfo();
|
||||
Loops = &getAnalysis<MachineLoopInfo>();
|
||||
const TargetSubtargetInfo &ST =
|
||||
MF->getTarget().getSubtarget<TargetSubtargetInfo>();
|
||||
SchedModel.init(ST.getSchedModel(), &ST, TII);
|
||||
BlockInfo.resize(MF->getNumBlockIDs());
|
||||
ProcResourceCycles.resize(MF->getNumBlockIDs() *
|
||||
|
|
|
@ -282,9 +282,7 @@ bool PostRAScheduler::runOnMachineFunction(MachineFunction &Fn) {
|
|||
} else {
|
||||
// Check that post-RA scheduling is enabled for this target.
|
||||
// This may upgrade the AntiDepMode.
|
||||
const TargetSubtargetInfo &ST =
|
||||
Fn.getTarget().getSubtarget<TargetSubtargetInfo>();
|
||||
if (!enablePostRAScheduler(ST, PassConfig->getOptLevel(),
|
||||
if (!enablePostRAScheduler(Fn.getSubtarget(), PassConfig->getOptLevel(),
|
||||
AntiDepMode, CriticalPathRCs))
|
||||
return false;
|
||||
}
|
||||
|
|
|
@ -893,8 +893,7 @@ bool AArch64ConditionalCompares::runOnMachineFunction(MachineFunction &MF) {
|
|||
<< "********** Function: " << MF.getName() << '\n');
|
||||
TII = MF.getSubtarget().getInstrInfo();
|
||||
TRI = MF.getSubtarget().getRegisterInfo();
|
||||
SchedModel =
|
||||
MF.getTarget().getSubtarget<TargetSubtargetInfo>().getSchedModel();
|
||||
SchedModel = MF.getSubtarget().getSchedModel();
|
||||
MRI = &MF.getRegInfo();
|
||||
DomTree = &getAnalysis<MachineDominatorTree>();
|
||||
Loops = getAnalysisIfAvailable<MachineLoopInfo>();
|
||||
|
|
|
@ -121,8 +121,7 @@ bool AArch64StorePairSuppress::runOnMachineFunction(MachineFunction &mf) {
|
|||
static_cast<const AArch64InstrInfo *>(MF->getSubtarget().getInstrInfo());
|
||||
TRI = MF->getSubtarget().getRegisterInfo();
|
||||
MRI = &MF->getRegInfo();
|
||||
const TargetSubtargetInfo &ST =
|
||||
MF->getTarget().getSubtarget<TargetSubtargetInfo>();
|
||||
const TargetSubtargetInfo &ST = MF->getSubtarget();
|
||||
SchedModel.init(ST.getSchedModel(), &ST, TII);
|
||||
|
||||
Traces = &getAnalysis<MachineTraceMetrics>();
|
||||
|
|
Loading…
Reference in New Issue