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 AArch64DISASSEMBLER_H 14#define AArch64DISASSEMBLER_H 15 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 ®ion, 34 uint64_t address, raw_ostream &vStream, 35 raw_ostream &cStream) const override; 36}; 37 38} // namespace llvm 39 40#endif 41