Add a LiveVariables::VarInfo::dump method
authorChris Lattner <sabre@nondot.org>
Wed, 4 Jan 2006 05:40:30 +0000 (05:40 +0000)
committerChris Lattner <sabre@nondot.org>
Wed, 4 Jan 2006 05:40:30 +0000 (05:40 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25080 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/LiveVariables.cpp

index a1bda195ff67adbb3314b9c5fcacc452b7ae11ef..c85d40b04f0f098df7d048fee493392344a843b9 100644 (file)
 #include "llvm/ADT/STLExtras.h"
 #include "llvm/Config/alloca.h"
 #include <algorithm>
+#include <iostream>
 using namespace llvm;
 
 static RegisterAnalysis<LiveVariables> X("livevars", "Live Variable Analysis");
 
+void LiveVariables::VarInfo::dump() const {
+  std::cerr << "Register Defined by: ";
+  if (DefInst) 
+    std::cerr << *DefInst;
+  else
+    std::cerr << "<null>\n";
+  std::cerr << "  Alive in blocks: ";
+  for (unsigned i = 0, e = AliveBlocks.size(); i != e; ++i)
+    if (AliveBlocks[i]) std::cerr << i << ", ";
+  std::cerr << "\n  Killed by:";
+  if (Kills.empty())
+    std::cerr << " No instructions.\n";
+  else {
+    for (unsigned i = 0, e = Kills.size(); i != e; ++i)
+      std::cerr << "\n    #" << i << ": " << *Kills[i];
+    std::cerr << "\n";
+  }
+}
+
 LiveVariables::VarInfo &LiveVariables::getVarInfo(unsigned RegIdx) {
   assert(MRegisterInfo::isVirtualRegister(RegIdx) &&
          "getVarInfo: not a virtual register!");