summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2008-02-03 02:05:04 +0000
committerChris Lattner <sabre@nondot.org>2008-02-03 02:05:04 +0000
commitf34dfe4f282885685de3fc03c6ee1cd1f92b45a8 (patch)
treef278a4f5441c8582d9258b361e622e17bbccf0da /llvm/lib/CodeGen
parentc43926fe67ac9a03e39cc6bc0741a6e1c492e53b (diff)
downloadbcm5719-llvm-f34dfe4f282885685de3fc03c6ee1cd1f92b45a8.tar.gz
bcm5719-llvm-f34dfe4f282885685de3fc03c6ee1cd1f92b45a8.zip
add a -view-legalize-types-dags option, for viewing the dags going into legalize types.
llvm-svn: 46672
Diffstat (limited to 'llvm/lib/CodeGen')
-rw-r--r--llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.cpp b/llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.cpp
index 70d07ebf428..b614085e30c 100644
--- a/llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.cpp
+++ b/llvm/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();
}
OpenPOWER on IntegriCloud