#include "llvm/Target/TargetInstrInfo.h"
#include "llvm/Target/TargetLowering.h"
#include "llvm/Target/TargetMachine.h"
+#include "llvm/Support/CommandLine.h"
#include "llvm/Support/Debug.h"
#include <map>
#include <iostream>
using namespace llvm;
+#ifndef _NDEBUG
+static cl::opt<bool>
+ViewDAGs("view-isel-dags", cl::Hidden,
+ cl::desc("Pop up a window to show isel dags as they are selected"));
+#else
+static const bool ViewDAGS = 0;
+#endif
+
namespace llvm {
//===--------------------------------------------------------------------===//
/// FunctionLoweringInfo - This contains information that is global to a
// the code to the MachineBasicBlock.
InstructionSelectBasicBlock(DAG);
+ if (ViewDAGs) DAG.viewGraph();
+
DEBUG(std::cerr << "Selected machine code:\n");
DEBUG(BB->dump());