[llvm-commits] CVS: llvm/lib/CodeGen/LiveVariables.cpp

Chris Lattner lattner at cs.uiuc.edu
Tue Jan 3 21:40:42 PST 2006



Changes in directory llvm/lib/CodeGen:

LiveVariables.cpp updated: 1.53 -> 1.54
---
Log message:

Add a LiveVariables::VarInfo::dump method


---
Diffs of the changes:  (+20 -0)

 LiveVariables.cpp |   20 ++++++++++++++++++++
 1 files changed, 20 insertions(+)


Index: llvm/lib/CodeGen/LiveVariables.cpp
diff -u llvm/lib/CodeGen/LiveVariables.cpp:1.53 llvm/lib/CodeGen/LiveVariables.cpp:1.54
--- llvm/lib/CodeGen/LiveVariables.cpp:1.53	Mon Nov 21 01:06:27 2005
+++ llvm/lib/CodeGen/LiveVariables.cpp	Tue Jan  3 23:40:30 2006
@@ -35,10 +35,30 @@
 #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!");






More information about the llvm-commits mailing list