diff options
| author | Dimitry Andric <dim@FreeBSD.org> | 2019-12-20 19:53:05 +0000 |
|---|---|---|
| committer | Dimitry Andric <dim@FreeBSD.org> | 2019-12-20 19:53:05 +0000 |
| commit | 0b57cec536236d46e3dba9bd041533462f33dbb7 (patch) | |
| tree | 56229dbdbbf76d18580f72f789003db17246c8d9 /contrib/llvm/lib/CodeGen/MIRPrintingPass.cpp | |
| parent | 718ef55ec7785aae63f98f8ca05dc07ed399c16d (diff) | |
Notes
Diffstat (limited to 'contrib/llvm/lib/CodeGen/MIRPrintingPass.cpp')
| -rw-r--r-- | contrib/llvm/lib/CodeGen/MIRPrintingPass.cpp | 70 |
1 files changed, 0 insertions, 70 deletions
diff --git a/contrib/llvm/lib/CodeGen/MIRPrintingPass.cpp b/contrib/llvm/lib/CodeGen/MIRPrintingPass.cpp deleted file mode 100644 index e032fffd658c8..0000000000000 --- a/contrib/llvm/lib/CodeGen/MIRPrintingPass.cpp +++ /dev/null @@ -1,70 +0,0 @@ -//===- MIRPrintingPass.cpp - Pass that prints out using the MIR format ----===// -// -// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. -// See https://llvm.org/LICENSE.txt for license information. -// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -// -//===----------------------------------------------------------------------===// -// -// This file implements a pass that prints out the LLVM module using the MIR -// serialization format. -// -//===----------------------------------------------------------------------===// - -#include "llvm/CodeGen/MIRPrinter.h" - -#include "llvm/CodeGen/MachineFunctionPass.h" -#include "llvm/CodeGen/Passes.h" -#include "llvm/Support/Debug.h" -#include "llvm/Support/raw_ostream.h" - -using namespace llvm; - -namespace { - -/// This pass prints out the LLVM IR to an output stream using the MIR -/// serialization format. -struct MIRPrintingPass : public MachineFunctionPass { - static char ID; - raw_ostream &OS; - std::string MachineFunctions; - - MIRPrintingPass() : MachineFunctionPass(ID), OS(dbgs()) {} - MIRPrintingPass(raw_ostream &OS) : MachineFunctionPass(ID), OS(OS) {} - - StringRef getPassName() const override { return "MIR Printing Pass"; } - - void getAnalysisUsage(AnalysisUsage &AU) const override { - AU.setPreservesAll(); - MachineFunctionPass::getAnalysisUsage(AU); - } - - bool runOnMachineFunction(MachineFunction &MF) override { - std::string Str; - raw_string_ostream StrOS(Str); - printMIR(StrOS, MF); - MachineFunctions.append(StrOS.str()); - return false; - } - - bool doFinalization(Module &M) override { - printMIR(OS, M); - OS << MachineFunctions; - return false; - } -}; - -char MIRPrintingPass::ID = 0; - -} // end anonymous namespace - -char &llvm::MIRPrintingPassID = MIRPrintingPass::ID; -INITIALIZE_PASS(MIRPrintingPass, "mir-printer", "MIR Printer", false, false) - -namespace llvm { - -MachineFunctionPass *createPrintMIRPass(raw_ostream &OS) { - return new MIRPrintingPass(OS); -} - -} // end namespace llvm |
