mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-10-19 02:52:53 +02:00
MachineScheduler: Add -misched-print-dags flag
Add a flag to dump the schedule DAG to the debug stream. This will be used in upcoming commits to test schedule DAG mutations such as macro fusion. llvm-svn: 342589
This commit is contained in:
parent
4a1fa0164e
commit
97fbf1c620
@ -100,8 +100,11 @@ static cl::opt<std::string> SchedOnlyFunc("misched-only-func", cl::Hidden,
|
|||||||
cl::desc("Only schedule this function"));
|
cl::desc("Only schedule this function"));
|
||||||
static cl::opt<unsigned> SchedOnlyBlock("misched-only-block", cl::Hidden,
|
static cl::opt<unsigned> SchedOnlyBlock("misched-only-block", cl::Hidden,
|
||||||
cl::desc("Only schedule this MBB#"));
|
cl::desc("Only schedule this MBB#"));
|
||||||
|
static cl::opt<bool> PrintDAGs("misched-print-dags", cl::Hidden,
|
||||||
|
cl::desc("Print schedule DAGs"));
|
||||||
#else
|
#else
|
||||||
static bool ViewMISchedDAGs = false;
|
static const bool ViewMISchedDAGs = false;
|
||||||
|
static const bool PrintDAGs = false;
|
||||||
#endif // NDEBUG
|
#endif // NDEBUG
|
||||||
|
|
||||||
/// Avoid quadratic complexity in unusually large basic blocks by limiting the
|
/// Avoid quadratic complexity in unusually large basic blocks by limiting the
|
||||||
@ -765,6 +768,7 @@ void ScheduleDAGMI::schedule() {
|
|||||||
findRootsAndBiasEdges(TopRoots, BotRoots);
|
findRootsAndBiasEdges(TopRoots, BotRoots);
|
||||||
|
|
||||||
LLVM_DEBUG(dump());
|
LLVM_DEBUG(dump());
|
||||||
|
if (PrintDAGs) dump();
|
||||||
if (ViewMISchedDAGs) viewGraph();
|
if (ViewMISchedDAGs) viewGraph();
|
||||||
|
|
||||||
// Initialize the strategy before modifying the DAG.
|
// Initialize the strategy before modifying the DAG.
|
||||||
@ -1218,6 +1222,7 @@ void ScheduleDAGMILive::schedule() {
|
|||||||
SchedImpl->initialize(this);
|
SchedImpl->initialize(this);
|
||||||
|
|
||||||
LLVM_DEBUG(dump());
|
LLVM_DEBUG(dump());
|
||||||
|
if (PrintDAGs) dump();
|
||||||
if (ViewMISchedDAGs) viewGraph();
|
if (ViewMISchedDAGs) viewGraph();
|
||||||
|
|
||||||
// Initialize ready queues now that the DAG and priority data are finalized.
|
// Initialize ready queues now that the DAG and priority data are finalized.
|
||||||
|
Loading…
Reference in New Issue
Block a user