Disassembler.h revision ba847da571354e13f1caa3699ee06b2d57df9fe9
1ba847da571354e13f1caa3699ee06b2d57df9fe9Sean Callanan//===- HexDisassembler.h - Disassembler for hex strings -------------------===//
2ba847da571354e13f1caa3699ee06b2d57df9fe9Sean Callanan//
3ba847da571354e13f1caa3699ee06b2d57df9fe9Sean Callanan//                     The LLVM Compiler Infrastructure
4ba847da571354e13f1caa3699ee06b2d57df9fe9Sean Callanan//
5ba847da571354e13f1caa3699ee06b2d57df9fe9Sean Callanan// This file is distributed under the University of Illinois Open Source
6ba847da571354e13f1caa3699ee06b2d57df9fe9Sean Callanan// License. See LICENSE.TXT for details.
7ba847da571354e13f1caa3699ee06b2d57df9fe9Sean Callanan//
8ba847da571354e13f1caa3699ee06b2d57df9fe9Sean Callanan//===----------------------------------------------------------------------===//
9ba847da571354e13f1caa3699ee06b2d57df9fe9Sean Callanan//
10ba847da571354e13f1caa3699ee06b2d57df9fe9Sean Callanan// This class implements the disassembler of strings of bytes written in
11ba847da571354e13f1caa3699ee06b2d57df9fe9Sean Callanan// hexadecimal, from standard input or from a file.
12ba847da571354e13f1caa3699ee06b2d57df9fe9Sean Callanan//
13ba847da571354e13f1caa3699ee06b2d57df9fe9Sean Callanan//===----------------------------------------------------------------------===//
14ba847da571354e13f1caa3699ee06b2d57df9fe9Sean Callanan
15ba847da571354e13f1caa3699ee06b2d57df9fe9Sean Callanan#ifndef HEXDISASSEMBLER_H
16ba847da571354e13f1caa3699ee06b2d57df9fe9Sean Callanan#define HEXDISASSEMBLER_H
17ba847da571354e13f1caa3699ee06b2d57df9fe9Sean Callanan
18ba847da571354e13f1caa3699ee06b2d57df9fe9Sean Callanan#include <string>
19ba847da571354e13f1caa3699ee06b2d57df9fe9Sean Callanan
20ba847da571354e13f1caa3699ee06b2d57df9fe9Sean Callanannamespace llvm {
21ba847da571354e13f1caa3699ee06b2d57df9fe9Sean Callanan
22ba847da571354e13f1caa3699ee06b2d57df9fe9Sean Callananclass Target;
23ba847da571354e13f1caa3699ee06b2d57df9fe9Sean Callananclass MemoryBuffer;
24ba847da571354e13f1caa3699ee06b2d57df9fe9Sean Callanan
25ba847da571354e13f1caa3699ee06b2d57df9fe9Sean Callananclass HexDisassembler {
26ba847da571354e13f1caa3699ee06b2d57df9fe9Sean Callananpublic:
27ba847da571354e13f1caa3699ee06b2d57df9fe9Sean Callanan  static int disassemble(const Target &target,
28ba847da571354e13f1caa3699ee06b2d57df9fe9Sean Callanan                         const std::string &tripleString,
29ba847da571354e13f1caa3699ee06b2d57df9fe9Sean Callanan                         MemoryBuffer &buffer);
30ba847da571354e13f1caa3699ee06b2d57df9fe9Sean Callanan};
31ba847da571354e13f1caa3699ee06b2d57df9fe9Sean Callanan
32ba847da571354e13f1caa3699ee06b2d57df9fe9Sean Callanan} // namespace llvm
33ba847da571354e13f1caa3699ee06b2d57df9fe9Sean Callanan
34ba847da571354e13f1caa3699ee06b2d57df9fe9Sean Callanan#endif
35