Move instrIsFeasible from InstrScheduling.h
authorChris Lattner <sabre@nondot.org>
Mon, 4 Feb 2002 05:55:42 +0000 (05:55 +0000)
committerChris Lattner <sabre@nondot.org>
Mon, 4 Feb 2002 05:55:42 +0000 (05:55 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1674 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/InstrSched/SchedPriorities.h
lib/Target/SparcV9/InstrSched/SchedPriorities.h

index 7cbd0d12596bbccdb10a57095c275163cbf42f6a..78b685daddec8eb09983d0023906ee9f2468f80f 100644 (file)
@@ -32,7 +32,9 @@ class Method;
 class MachineInstr;
 class SchedulingManager;
 
+//---------------------------------------------------------------------------
 // Debug option levels for instruction scheduling
+
 enum SchedDebugLevel_t {
   Sched_NoDebugInfo,
   Sched_PrintMachineCode, 
@@ -42,6 +44,19 @@ enum SchedDebugLevel_t {
 
 extern cl::Enum<SchedDebugLevel_t> SchedDebugLevel;
 
+//---------------------------------------------------------------------------
+// Function: instrIsFeasible
+// 
+// Purpose:
+//   Used by the priority analysis to filter out instructions
+//   that are not feasible to issue in the current cycle.
+//   Should only be used during schedule construction..
+//---------------------------------------------------------------------------
+
+bool instrIsFeasible(const SchedulingManager &S, MachineOpCode opCode);
+
+
+
 struct NodeDelayPair {
   const SchedGraphNode* node;
   cycles_t delay;
index 7cbd0d12596bbccdb10a57095c275163cbf42f6a..78b685daddec8eb09983d0023906ee9f2468f80f 100644 (file)
@@ -32,7 +32,9 @@ class Method;
 class MachineInstr;
 class SchedulingManager;
 
+//---------------------------------------------------------------------------
 // Debug option levels for instruction scheduling
+
 enum SchedDebugLevel_t {
   Sched_NoDebugInfo,
   Sched_PrintMachineCode, 
@@ -42,6 +44,19 @@ enum SchedDebugLevel_t {
 
 extern cl::Enum<SchedDebugLevel_t> SchedDebugLevel;
 
+//---------------------------------------------------------------------------
+// Function: instrIsFeasible
+// 
+// Purpose:
+//   Used by the priority analysis to filter out instructions
+//   that are not feasible to issue in the current cycle.
+//   Should only be used during schedule construction..
+//---------------------------------------------------------------------------
+
+bool instrIsFeasible(const SchedulingManager &S, MachineOpCode opCode);
+
+
+
 struct NodeDelayPair {
   const SchedGraphNode* node;
   cycles_t delay;