Line data Source code
1 : //===- AArch64Disassembler.h - Disassembler for AArch64 ---------*- 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 : //
11 : //===----------------------------------------------------------------------===//
12 :
13 : #ifndef LLVM_LIB_TARGET_AARCH64_DISASSEMBLER_AARCH64DISASSEMBLER_H
14 : #define LLVM_LIB_TARGET_AARCH64_DISASSEMBLER_AARCH64DISASSEMBLER_H
15 :
16 : #include "llvm/MC/MCDisassembler/MCDisassembler.h"
17 :
18 : namespace llvm {
19 :
20 : class AArch64Disassembler : public MCDisassembler {
21 : public:
22 : AArch64Disassembler(const MCSubtargetInfo &STI, MCContext &Ctx)
23 880 : : MCDisassembler(STI, Ctx) {}
24 :
25 879 : ~AArch64Disassembler() override = default;
26 :
27 : MCDisassembler::DecodeStatus
28 : getInstruction(MCInst &Instr, uint64_t &Size, ArrayRef<uint8_t> Bytes,
29 : uint64_t Address, raw_ostream &VStream,
30 : raw_ostream &CStream) const override;
31 : };
32 :
33 : } // end namespace llvm
34 :
35 : #endif // LLVM_LIB_TARGET_AARCH64_DISASSEMBLER_AARCH64DISASSEMBLER_H
|