diff options
author | Weiming Zhao <weimingz@codeaurora.org> | 2016-01-06 18:20:25 +0000 |
---|---|---|
committer | Weiming Zhao <weimingz@codeaurora.org> | 2016-01-06 18:20:25 +0000 |
commit | eac06368053bd1e7082b5ab7efcd6f9c7014d589 (patch) | |
tree | 0d07c5c52b63ddac0d8345db928893a825dd3bd2 /llvm/lib/CodeGen/MachineFunctionPrinterPass.cpp | |
parent | c7c18d6d14f5d95e1a940ee4841e8ba74d8f9078 (diff) | |
download | bcm5719-llvm-eac06368053bd1e7082b5ab7efcd6f9c7014d589.tar.gz bcm5719-llvm-eac06368053bd1e7082b5ab7efcd6f9c7014d589.zip |
Filtering IR printing for print-after-all/print-before-all
Summary:
This patch implements "-print-funcs" option to support function filtering for IR printing like -print-after-all, -print-before etc.
Examples:
-print-after-all -print-funcs=foo,bar
Reviewers: mcrosier, joker.eph
Subscribers: tejohnson, joker.eph, llvm-commits
Differential Revision: http://reviews.llvm.org/D15776
llvm-svn: 256952
Diffstat (limited to 'llvm/lib/CodeGen/MachineFunctionPrinterPass.cpp')
-rw-r--r-- | llvm/lib/CodeGen/MachineFunctionPrinterPass.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/llvm/lib/CodeGen/MachineFunctionPrinterPass.cpp b/llvm/lib/CodeGen/MachineFunctionPrinterPass.cpp index 790f5accdb2..4f424ff292c 100644 --- a/llvm/lib/CodeGen/MachineFunctionPrinterPass.cpp +++ b/llvm/lib/CodeGen/MachineFunctionPrinterPass.cpp @@ -31,7 +31,7 @@ struct MachineFunctionPrinterPass : public MachineFunctionPass { const std::string Banner; MachineFunctionPrinterPass() : MachineFunctionPass(ID), OS(dbgs()) { } - MachineFunctionPrinterPass(raw_ostream &os, const std::string &banner) + MachineFunctionPrinterPass(raw_ostream &os, const std::string &banner) : MachineFunctionPass(ID), OS(os), Banner(banner) {} const char *getPassName() const override { return "MachineFunction Printer"; } @@ -42,6 +42,8 @@ struct MachineFunctionPrinterPass : public MachineFunctionPass { } bool runOnMachineFunction(MachineFunction &MF) override { + if (!llvm::isFunctionInPrintList(MF.getName())) + return false; OS << "# " << Banner << ":\n"; MF.print(OS, getAnalysisIfAvailable<SlotIndexes>()); return false; |