2009-12-22 22:50:29 +00:00
|
|
|
//===- Disassembler.h - Text File Disassembler ----------------------------===//
|
2009-12-17 01:49:59 +00:00
|
|
|
//
|
|
|
|
// The LLVM Compiler Infrastructure
|
|
|
|
//
|
|
|
|
// This file is distributed under the University of Illinois Open Source
|
|
|
|
// License. See LICENSE.TXT for details.
|
|
|
|
//
|
|
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
//
|
|
|
|
// This class implements the disassembler of strings of bytes written in
|
|
|
|
// hexadecimal, from standard input or from a file.
|
|
|
|
//
|
|
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
|
2009-12-22 22:50:29 +00:00
|
|
|
#ifndef DISASSEMBLER_H
|
|
|
|
#define DISASSEMBLER_H
|
2009-12-17 01:49:59 +00:00
|
|
|
|
|
|
|
#include <string>
|
|
|
|
|
|
|
|
namespace llvm {
|
|
|
|
|
|
|
|
class MemoryBuffer;
|
2011-03-21 04:13:46 +00:00
|
|
|
class Target;
|
2010-08-20 01:07:01 +00:00
|
|
|
class raw_ostream;
|
2009-12-17 01:49:59 +00:00
|
|
|
|
2009-12-22 22:50:29 +00:00
|
|
|
class Disassembler {
|
2009-12-17 01:49:59 +00:00
|
|
|
public:
|
2011-03-21 04:13:46 +00:00
|
|
|
static int disassemble(const Target &target,
|
2009-12-17 01:49:59 +00:00
|
|
|
const std::string &tripleString,
|
2011-09-07 17:24:38 +00:00
|
|
|
const std::string &Cpu,
|
|
|
|
const std::string &FeaturesStr,
|
2010-08-20 01:07:01 +00:00
|
|
|
MemoryBuffer &buffer,
|
|
|
|
raw_ostream &Out);
|
2011-05-09 20:05:25 +00:00
|
|
|
|
2010-04-12 19:43:00 +00:00
|
|
|
static int disassembleEnhanced(const std::string &tripleString,
|
2010-08-20 01:07:01 +00:00
|
|
|
MemoryBuffer &buffer,
|
|
|
|
raw_ostream &Out);
|
2009-12-17 01:49:59 +00:00
|
|
|
};
|
2011-05-09 20:05:25 +00:00
|
|
|
|
2009-12-17 01:49:59 +00:00
|
|
|
} // namespace llvm
|
|
|
|
|
|
|
|
#endif
|