/Users/buildslave/jenkins/sharedspace/clang-stage2-coverage-R@2/llvm/lib/Target/SystemZ/SystemZAsmPrinter.h
Line | Count | Source (jump to first uncovered line) |
1 | | //===-- SystemZAsmPrinter.h - SystemZ LLVM assembly printer ----*- C++ -*--===// |
2 | | // |
3 | | // The LLVM Compiler Infrastructure |
4 | | // |
5 | | // This file is distributed under the University of Illinois Open Source |
6 | | // License. See LICENSE.TXT for details. |
7 | | // |
8 | | //===----------------------------------------------------------------------===// |
9 | | |
10 | | #ifndef LLVM_LIB_TARGET_SYSTEMZ_SYSTEMZASMPRINTER_H |
11 | | #define LLVM_LIB_TARGET_SYSTEMZ_SYSTEMZASMPRINTER_H |
12 | | |
13 | | #include "SystemZTargetMachine.h" |
14 | | #include "llvm/CodeGen/AsmPrinter.h" |
15 | | #include "llvm/Support/Compiler.h" |
16 | | |
17 | | namespace llvm { |
18 | | class MCStreamer; |
19 | | class MachineBasicBlock; |
20 | | class MachineInstr; |
21 | | class Module; |
22 | | class raw_ostream; |
23 | | |
24 | | class LLVM_LIBRARY_VISIBILITY SystemZAsmPrinter : public AsmPrinter { |
25 | | public: |
26 | | SystemZAsmPrinter(TargetMachine &TM, std::unique_ptr<MCStreamer> Streamer) |
27 | 796 | : AsmPrinter(TM, std::move(Streamer)) {} |
28 | | |
29 | | // Override AsmPrinter. |
30 | 0 | StringRef getPassName() const override { return "SystemZ Assembly Printer"; } |
31 | | void EmitInstruction(const MachineInstr *MI) override; |
32 | | void EmitMachineConstantPoolValue(MachineConstantPoolValue *MCPV) override; |
33 | | bool PrintAsmOperand(const MachineInstr *MI, unsigned OpNo, |
34 | | unsigned AsmVariant, const char *ExtraCode, |
35 | | raw_ostream &OS) override; |
36 | | bool PrintAsmMemoryOperand(const MachineInstr *MI, unsigned OpNo, |
37 | | unsigned AsmVariant, const char *ExtraCode, |
38 | | raw_ostream &OS) override; |
39 | | }; |
40 | | } // end namespace llvm |
41 | | |
42 | | #endif |