From 37cb415eec53e20ed77c1c90f86310de217f3e6c Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Fri, 10 Mar 2006 07:48:52 +0000 Subject: [PATCH] Simplify the interface to the schedulers, to not pass the selected heuristic in. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26691 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/CodeGen/ScheduleDAG.h | 18 ++++-------------- 1 file changed, 4 insertions(+), 14 deletions(-) diff --git a/include/llvm/CodeGen/ScheduleDAG.h b/include/llvm/CodeGen/ScheduleDAG.h index 9c948a61f17..ba3637b5c32 100644 --- a/include/llvm/CodeGen/ScheduleDAG.h +++ b/include/llvm/CodeGen/ScheduleDAG.h @@ -34,16 +34,6 @@ namespace llvm { typedef std::vector NIVector; typedef std::vector::iterator NIIterator; - // Scheduling heuristics - enum SchedHeuristics { - defaultScheduling, // Let the target specify its preference. - noScheduling, // No scheduling, emit breadth first sequence. - simpleScheduling, // Two pass, min. critical path, max. utilization. - simpleNoItinScheduling, // Same as above exact using generic latency. - listSchedulingBURR, // Bottom up reg reduction list scheduling. - listSchedulingTD // Top-down list scheduler. - }; - /// HazardRecognizer - This determines whether or not an instruction can be /// issued this cycle, and whether or not a noop needs to be inserted to handle /// the hazard. @@ -296,8 +286,7 @@ namespace llvm { const TargetMachine &tm) : DAG(dag), BB(bb), TM(tm) {} - virtual ~ScheduleDAG() { - }; + virtual ~ScheduleDAG() {} /// Run - perform scheduling. /// @@ -337,10 +326,11 @@ namespace llvm { std::map &VRBaseMap); }; + ScheduleDAG *createBFS_DAGScheduler(SelectionDAG &DAG, MachineBasicBlock *BB); + /// createSimpleDAGScheduler - This creates a simple two pass instruction /// scheduler. - ScheduleDAG* createSimpleDAGScheduler(SchedHeuristics Heuristic, - SelectionDAG &DAG, + ScheduleDAG* createSimpleDAGScheduler(bool NoItins, SelectionDAG &DAG, MachineBasicBlock *BB); /// createBURRListDAGScheduler - This creates a bottom up register usage -- 2.34.1