diff options
author | Chris Lattner <sabre@nondot.org> | 2008-02-03 02:05:04 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2008-02-03 02:05:04 +0000 |
commit | a658baba78e9cb0a9efbc5e4921c63f7b92a920c (patch) | |
tree | 820f5b7f21b42392108b2cfb60c098f7cf1eecca /lib/CodeGen/SelectionDAG | |
parent | 4eecdeb3faf5df864790175da5d58301b751ec11 (diff) |
add a -view-legalize-types-dags option, for viewing the dags going into legalize types.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46672 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/SelectionDAG')
-rw-r--r-- | lib/CodeGen/SelectionDAG/LegalizeTypes.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/lib/CodeGen/SelectionDAG/LegalizeTypes.cpp b/lib/CodeGen/SelectionDAG/LegalizeTypes.cpp index 70d07ebf42..b614085e30 100644 --- a/lib/CodeGen/SelectionDAG/LegalizeTypes.cpp +++ b/lib/CodeGen/SelectionDAG/LegalizeTypes.cpp @@ -16,9 +16,20 @@ #include "LegalizeTypes.h" #include "llvm/Constants.h" #include "llvm/DerivedTypes.h" +#include "llvm/Support/CommandLine.h" #include "llvm/Support/MathExtras.h" using namespace llvm; +#ifndef NDEBUG +static cl::opt<bool> +ViewLegalizeTypesDAGs("view-legalize-types-dags", cl::Hidden, + cl::desc("Pop up a window to show dags before legalize types")); +#else +static const bool ViewLegalizeTypesDAGs = 0; +#endif + + + /// run - This is the main entry point for the type legalizer. This does a /// top-down traversal of the dag, legalizing types as it goes. void DAGTypeLegalizer::run() { @@ -438,5 +449,7 @@ void DAGTypeLegalizer::SplitOp(SDOperand Op, SDOperand &Lo, SDOperand &Hi) { /// Note that this is an involved process that may invalidate pointers into /// the graph. void SelectionDAG::LegalizeTypes() { + if (ViewLegalizeTypesDAGs) viewGraph(); + DAGTypeLegalizer(*this).run(); } |