35 lines · c
1//===- LanaiDisassembler.cpp - Disassembler for Lanai -----------*- C++ -*-===//2//3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.4// See https://llvm.org/LICENSE.txt for license information.5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception6//7//===----------------------------------------------------------------------===//8//9// This file is part of the Lanai Disassembler.10//11//===----------------------------------------------------------------------===//12 13#ifndef LLVM_LIB_TARGET_LANAI_DISASSEMBLER_LANAIDISASSEMBLER_H14#define LLVM_LIB_TARGET_LANAI_DISASSEMBLER_LANAIDISASSEMBLER_H15 16#include "llvm/MC/MCDisassembler/MCDisassembler.h"17 18namespace llvm {19 20class LanaiDisassembler : public MCDisassembler {21public:22 LanaiDisassembler(const MCSubtargetInfo &STI, MCContext &Ctx);23 24 ~LanaiDisassembler() override = default;25 26 // getInstruction - See MCDisassembler.27 MCDisassembler::DecodeStatus28 getInstruction(MCInst &Instr, uint64_t &Size, ArrayRef<uint8_t> Bytes,29 uint64_t Address, raw_ostream &CStream) const override;30};31 32} // end namespace llvm33 34#endif // LLVM_LIB_TARGET_LANAI_DISASSEMBLER_LANAIDISASSEMBLER_H35