[llvm-commits] [llvm] r76603 - in /llvm/trunk: include/llvm/CodeGen/MachineBasicBlock.h include/llvm/CodeGen/MachineFunction.h lib/CodeGen/MachineBasicBlock.cpp lib/CodeGen/MachineFunction.cpp
David Greene
greened at obbligato.org
Tue Jul 21 11:27:10 PDT 2009
Author: greened
Date: Tue Jul 21 13:27:05 2009
New Revision: 76603
URL: http://llvm.org/viewvc/llvm-project?rev=76603&view=rev
Log:
Add PrefixPrinter arguments to the dump routines for MachineFunction and
MachineBasicBlock. We'll use these shortly.
Modified:
llvm/trunk/include/llvm/CodeGen/MachineBasicBlock.h
llvm/trunk/include/llvm/CodeGen/MachineFunction.h
llvm/trunk/lib/CodeGen/MachineBasicBlock.cpp
llvm/trunk/lib/CodeGen/MachineFunction.cpp
Modified: llvm/trunk/include/llvm/CodeGen/MachineBasicBlock.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/CodeGen/MachineBasicBlock.h?rev=76603&r1=76602&r2=76603&view=diff
==============================================================================
--- llvm/trunk/include/llvm/CodeGen/MachineBasicBlock.h (original)
+++ llvm/trunk/include/llvm/CodeGen/MachineBasicBlock.h Tue Jul 21 13:27:05 2009
@@ -16,6 +16,7 @@
#include "llvm/CodeGen/MachineInstr.h"
#include "llvm/ADT/GraphTraits.h"
+#include "llvm/Support/Dump.h"
namespace llvm {
@@ -309,8 +310,12 @@
// Debugging methods.
void dump() const;
- void print(std::ostream &OS) const;
- void print(std::ostream *OS) const { if (OS) print(*OS); }
+ void print(std::ostream &OS,
+ const PrefixPrinter &prefix = PrefixPrinter()) const;
+ void print(std::ostream *OS,
+ const PrefixPrinter &prefix = PrefixPrinter()) const {
+ if (OS) print(*OS, prefix);
+ }
/// getNumber - MachineBasicBlocks are uniquely numbered at the function
/// level, unless they're not in a MachineFunction yet, in which case this
Modified: llvm/trunk/include/llvm/CodeGen/MachineFunction.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/CodeGen/MachineFunction.h?rev=76603&r1=76602&r2=76603&view=diff
==============================================================================
--- llvm/trunk/include/llvm/CodeGen/MachineFunction.h (original)
+++ llvm/trunk/include/llvm/CodeGen/MachineFunction.h Tue Jul 21 13:27:05 2009
@@ -20,6 +20,7 @@
#include "llvm/ADT/ilist.h"
#include "llvm/Support/DebugLoc.h"
+#include "llvm/Support/Dump.h"
#include "llvm/CodeGen/MachineBasicBlock.h"
#include "llvm/Support/Annotation.h"
#include "llvm/Support/Allocator.h"
@@ -207,8 +208,12 @@
/// print - Print out the MachineFunction in a format suitable for debugging
/// to the specified stream.
///
- void print(std::ostream &OS) const;
- void print(std::ostream *OS) const { if (OS) print(*OS); }
+ void print(std::ostream &OS,
+ const PrefixPrinter &prefix = PrefixPrinter()) const;
+ void print(std::ostream *OS,
+ const PrefixPrinter &prefix = PrefixPrinter()) const {
+ if (OS) print(*OS, prefix);
+ }
/// viewCFG - This function is meant for use from the debugger. You can just
/// say 'call F->viewCFG()' and a ghostview window should pop up from the
Modified: llvm/trunk/lib/CodeGen/MachineBasicBlock.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/MachineBasicBlock.cpp?rev=76603&r1=76602&r2=76603&view=diff
==============================================================================
--- llvm/trunk/lib/CodeGen/MachineBasicBlock.cpp (original)
+++ llvm/trunk/lib/CodeGen/MachineBasicBlock.cpp Tue Jul 21 13:27:05 2009
@@ -148,7 +148,8 @@
os << " %reg" << RegNo;
}
-void MachineBasicBlock::print(std::ostream &OS) const {
+void MachineBasicBlock::print(std::ostream &OS,
+ const PrefixPrinter &prefix) const {
const MachineFunction *MF = getParent();
if(!MF) {
OS << "Can't print out MachineBasicBlock because parent MachineFunction"
@@ -181,6 +182,7 @@
}
for (const_iterator I = begin(); I != end(); ++I) {
+ OS << prefix(*I);
OS << "\t";
I->print(OS, &getParent()->getTarget());
}
Modified: llvm/trunk/lib/CodeGen/MachineFunction.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/MachineFunction.cpp?rev=76603&r1=76602&r2=76603&view=diff
==============================================================================
--- llvm/trunk/lib/CodeGen/MachineFunction.cpp (original)
+++ llvm/trunk/lib/CodeGen/MachineFunction.cpp Tue Jul 21 13:27:05 2009
@@ -252,7 +252,8 @@
print(*cerr.stream());
}
-void MachineFunction::print(std::ostream &OS) const {
+void MachineFunction::print(std::ostream &OS,
+ const PrefixPrinter &prefix) const {
OS << "# Machine code for " << Fn->getName () << "():\n";
// Print Frame Information
@@ -294,8 +295,10 @@
OS << "\n";
}
- for (const_iterator BB = begin(); BB != end(); ++BB)
- BB->print(OS);
+ for (const_iterator BB = begin(); BB != end(); ++BB) {
+ OS << prefix(*BB);
+ BB->print(OS, prefix);
+ }
OS << "\n# End machine code for " << Fn->getName () << "().\n\n";
}
More information about the llvm-commits
mailing list