diff options
author | Andrew Trick <atrick@apple.com> | 2014-06-04 07:06:27 +0000 |
---|---|---|
committer | Andrew Trick <atrick@apple.com> | 2014-06-04 07:06:27 +0000 |
commit | 5f22dd78584bfd0a1125d313d04660df2c9c3c47 (patch) | |
tree | e40a81c973d2201ec39ed9ff3870d21e564cef4e /include | |
parent | 0c834245566d39a29df01d6ea276e13830473d26 (diff) | |
download | llvm-5f22dd78584bfd0a1125d313d04660df2c9c3c47.tar.gz llvm-5f22dd78584bfd0a1125d313d04660df2c9c3c47.tar.bz2 llvm-5f22dd78584bfd0a1125d313d04660df2c9c3c47.tar.xz |
Add a subtarget hook: enablePostMachineScheduler.
As requested by AArch64 subtargets.
Note that this will have no effect until the
AArch64 target actually enables the pass like this:
substitutePass(&PostRASchedulerID, &PostMachineSchedulerID);
As soon as armv7 switches over, PostMachineScheduler will become the
default postRA scheduler, so this won't be necessary any more.
Targets using the old postRA schedule would then do:
substitutePass(&PostMachineSchedulerID, &PostRASchedulerID);
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@210167 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include')
-rw-r--r-- | include/llvm/Target/TargetSubtargetInfo.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/include/llvm/Target/TargetSubtargetInfo.h b/include/llvm/Target/TargetSubtargetInfo.h index c0c342b22e..bb164288b0 100644 --- a/include/llvm/Target/TargetSubtargetInfo.h +++ b/include/llvm/Target/TargetSubtargetInfo.h @@ -66,6 +66,13 @@ public: /// scheduler. It does not yet disable the postRA scheduler. virtual bool enableMachineScheduler() const; + /// \brief True if the subtarget should run PostMachineScheduler. + /// + /// This only takes effect if the target has configured the + /// PostMachineScheduler pass to run, or if the global cl::opt flag, + /// MISchedPostRA, is set. + virtual bool enablePostMachineScheduler() const; + /// \brief Override generic scheduling policy within a region. /// /// This is a convenient way for targets that don't provide any custom |