summaryrefslogtreecommitdiff
path: root/lib/CodeGen/MachineFunctionPrinterPass.cpp
diff options
context:
space:
mode:
authorBob Wilson <bob.wilson@apple.com>2012-05-30 00:17:12 +0000
committerBob Wilson <bob.wilson@apple.com>2012-05-30 00:17:12 +0000
commit6e1b8128505711276a87e96f6bffb818b435cbd5 (patch)
tree6de88116fe82f5718ead015ceb088c9e7515dc08 /lib/CodeGen/MachineFunctionPrinterPass.cpp
parent209cdc2999208e9783349e970bd96fc37557fd97 (diff)
downloadllvm-6e1b8128505711276a87e96f6bffb818b435cbd5.tar.gz
llvm-6e1b8128505711276a87e96f6bffb818b435cbd5.tar.bz2
llvm-6e1b8128505711276a87e96f6bffb818b435cbd5.tar.xz
Add an insertPass API to TargetPassConfig. <rdar://problem/11498613>
Besides adding the new insertPass function, this patch uses it to enhance the existing -print-machineinstrs so that the MachineInstrs after a specific pass can be printed. Patch by Bin Zeng! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157655 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/MachineFunctionPrinterPass.cpp')
-rw-r--r--lib/CodeGen/MachineFunctionPrinterPass.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/CodeGen/MachineFunctionPrinterPass.cpp b/lib/CodeGen/MachineFunctionPrinterPass.cpp
index 2aaa798a02..dbda93e4fd 100644
--- a/lib/CodeGen/MachineFunctionPrinterPass.cpp
+++ b/lib/CodeGen/MachineFunctionPrinterPass.cpp
@@ -15,6 +15,7 @@
#include "llvm/CodeGen/MachineFunctionPass.h"
#include "llvm/CodeGen/MachineFunction.h"
#include "llvm/Support/raw_ostream.h"
+#include "llvm/Support/Debug.h"
using namespace llvm;
@@ -28,6 +29,7 @@ struct MachineFunctionPrinterPass : public MachineFunctionPass {
raw_ostream &OS;
const std::string Banner;
+ MachineFunctionPrinterPass() : MachineFunctionPass(ID), OS(dbgs()) { }
MachineFunctionPrinterPass(raw_ostream &os, const std::string &banner)
: MachineFunctionPass(ID), OS(os), Banner(banner) {}
@@ -48,6 +50,10 @@ struct MachineFunctionPrinterPass : public MachineFunctionPass {
char MachineFunctionPrinterPass::ID = 0;
}
+char &MachineFunctionPrinterPassID = MachineFunctionPrinterPass::ID;
+INITIALIZE_PASS(MachineFunctionPrinterPass, "print-machineinstrs",
+ "Machine Function Printer", false, false)
+
namespace llvm {
/// Returns a newly-created MachineFunction Printer pass. The
/// default banner is empty.