blob: 612b05b7878ccbc625b6b4737800fe4c6a2effc3 [file] [log] [blame]
Tim Northover3b0846e2014-05-24 12:50:23 +00001//===- 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
Benjamin Kramera7c40ef2014-08-13 16:26:38 +000013#ifndef LLVM_LIB_TARGET_AARCH64_DISASSEMBLER_AARCH64DISASSEMBLER_H
14#define LLVM_LIB_TARGET_AARCH64_DISASSEMBLER_AARCH64DISASSEMBLER_H
Tim Northover3b0846e2014-05-24 12:50:23 +000015
16#include "llvm/MC/MCDisassembler.h"
17
18namespace llvm {
19
20class MCInst;
21class MemoryObject;
22class raw_ostream;
23
24class AArch64Disassembler : public MCDisassembler {
25public:
26 AArch64Disassembler(const MCSubtargetInfo &STI, MCContext &Ctx)
27 : MCDisassembler(STI, Ctx) {}
28
29 ~AArch64Disassembler() {}
30
31 /// getInstruction - See MCDisassembler.
32 MCDisassembler::DecodeStatus
33 getInstruction(MCInst &instr, uint64_t &size, const MemoryObject &region,
34 uint64_t address, raw_ostream &vStream,
35 raw_ostream &cStream) const override;
36};
37
38} // namespace llvm
39
40#endif