blob: 1f18ac075f854be6a2fe2e56edc8cfbebd7da45b [file] [log] [blame]
Chris Lattnerb257d242009-12-22 22:50:29 +00001//===- Disassembler.h - Text File Disassembler ----------------------------===//
Sean Callanan7e645502009-12-17 01:49:59 +00002//
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// This class implements the disassembler of strings of bytes written in
11// hexadecimal, from standard input or from a file.
12//
13//===----------------------------------------------------------------------===//
14
Benjamin Kramera7c40ef2014-08-13 16:26:38 +000015#ifndef LLVM_TOOLS_LLVM_MC_DISASSEMBLER_H
16#define LLVM_TOOLS_LLVM_MC_DISASSEMBLER_H
Sean Callanan7e645502009-12-17 01:49:59 +000017
18#include <string>
19
20namespace llvm {
21
Sean Callanan7e645502009-12-17 01:49:59 +000022class MemoryBuffer;
Bill Wendling00f0cdd2011-03-21 04:13:46 +000023class Target;
Dan Gohman268b0f42010-08-20 01:07:01 +000024class raw_ostream;
Richard Bartondef81b92012-04-16 11:32:10 +000025class SourceMgr;
26class MCSubtargetInfo;
27class MCStreamer;
Sean Callanan7e645502009-12-17 01:49:59 +000028
Chris Lattnerb257d242009-12-22 22:50:29 +000029class Disassembler {
Sean Callanan7e645502009-12-17 01:49:59 +000030public:
Richard Bartondef81b92012-04-16 11:32:10 +000031 static int disassemble(const Target &T,
32 const std::string &Triple,
33 MCSubtargetInfo &STI,
34 MCStreamer &Streamer,
35 MemoryBuffer &Buffer,
36 SourceMgr &SM,
Dan Gohman268b0f42010-08-20 01:07:01 +000037 raw_ostream &Out);
Sean Callanan7e645502009-12-17 01:49:59 +000038};
Jim Grosbach112a2de2011-05-09 20:05:25 +000039
Sean Callanan7e645502009-12-17 01:49:59 +000040} // namespace llvm
41
42#endif