mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-06-24 08:24:33 +00:00
Remove useMachineScheduler and replace it with subtarget options
that control, individually, all of the disparate things it was controlling. At the same time move a FIXME in the Hexagon port to a new subtarget function that will enable a user of the machine scheduler to avoid using the source scheduler for pre-RA-scheduling. The FIXME would have this removed, but involves either testcase changes or adding -pre-RA-sched=source to a few testcases. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@231980 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@ -23,22 +23,6 @@ TargetSubtargetInfo::TargetSubtargetInfo() {}
|
||||
|
||||
TargetSubtargetInfo::~TargetSubtargetInfo() {}
|
||||
|
||||
// Temporary option to compare overall performance change when moving from the
|
||||
// SD scheduler to the MachineScheduler pass pipeline. This is convenient for
|
||||
// benchmarking during the transition from SD to MI scheduling. Once armv7 makes
|
||||
// the switch, it should go away. The normal way to enable/disable the
|
||||
// MachineScheduling pass itself is by using -enable-misched. For targets that
|
||||
// already use MI sched (via MySubTarget::enableMachineScheduler())
|
||||
// -misched-bench=false negates the subtarget hook.
|
||||
static cl::opt<bool> BenchMachineSched("misched-bench", cl::Hidden,
|
||||
cl::desc("Migrate from the target's default SD scheduler to MI scheduler"));
|
||||
|
||||
bool TargetSubtargetInfo::useMachineScheduler() const {
|
||||
if (BenchMachineSched.getNumOccurrences())
|
||||
return BenchMachineSched;
|
||||
return enableMachineScheduler();
|
||||
}
|
||||
|
||||
bool TargetSubtargetInfo::enableAtomicExpand() const {
|
||||
return true;
|
||||
}
|
||||
@ -47,6 +31,10 @@ bool TargetSubtargetInfo::enableMachineScheduler() const {
|
||||
return false;
|
||||
}
|
||||
|
||||
bool TargetSubtargetInfo::enableJoinGlobalCopies() const {
|
||||
return enableMachineScheduler();
|
||||
}
|
||||
|
||||
bool TargetSubtargetInfo::enableRALocalReassignment(
|
||||
CodeGenOpt::Level OptLevel) const {
|
||||
return true;
|
||||
|
Reference in New Issue
Block a user