summaryrefslogtreecommitdiffstats
path: root/llvm/include
diff options
context:
space:
mode:
authorMatthias Braun <matze@braunis.de>2015-06-13 03:42:11 +0000
committerMatthias Braun <matze@braunis.de>2015-06-13 03:42:11 +0000
commit88e213159a3d0650db1a1ca4cd840e4bd87b12d2 (patch)
treeb13dd786127940ce2fdd60cc44a869d7965cbc8e /llvm/include
parent45bb48ea197fe496865387120c7c55b56f0717d6 (diff)
downloadbcm5719-llvm-88e213159a3d0650db1a1ca4cd840e4bd87b12d2.tar.gz
bcm5719-llvm-88e213159a3d0650db1a1ca4cd840e4bd87b12d2.zip
MachineLICM: Use TargetSchedModel instead of just itineraries
This will use Itinieraries if available, but will also work if just a MCSchedModel is available. Differential Revision: http://reviews.llvm.org/D10428 llvm-svn: 239658
Diffstat (limited to 'llvm/include')
-rw-r--r--llvm/include/llvm/Target/TargetInstrInfo.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/llvm/include/llvm/Target/TargetInstrInfo.h b/llvm/include/llvm/Target/TargetInstrInfo.h
index c35831045a5..4b1acdab5b4 100644
--- a/llvm/include/llvm/Target/TargetInstrInfo.h
+++ b/llvm/include/llvm/Target/TargetInstrInfo.h
@@ -40,6 +40,7 @@ class TargetRegisterClass;
class TargetRegisterInfo;
class BranchProbability;
class TargetSubtargetInfo;
+class TargetSchedModel;
class DFAPacketizer;
template<class T> class SmallVectorImpl;
@@ -1054,7 +1055,7 @@ public:
/// determine whether it makes sense to hoist an instruction out even in a
/// high register pressure situation.
virtual
- bool hasHighOperandLatency(const InstrItineraryData *ItinData,
+ bool hasHighOperandLatency(const TargetSchedModel &SchedModel,
const MachineRegisterInfo *MRI,
const MachineInstr *DefMI, unsigned DefIdx,
const MachineInstr *UseMI, unsigned UseIdx) const {
@@ -1064,7 +1065,7 @@ public:
/// Compute operand latency of a def of 'Reg'. Return true
/// if the target considered it 'low'.
virtual
- bool hasLowDefLatency(const InstrItineraryData *ItinData,
+ bool hasLowDefLatency(const TargetSchedModel &SchedModel,
const MachineInstr *DefMI, unsigned DefIdx) const;
/// Perform target-specific instruction verification.
OpenPOWER on IntegriCloud