mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-06-12 13:38:21 +00:00
Fixed a nasty layering violation in the edis source
code. It used to #include the enhanced disassembly information for the targets it supported straight out of lib/Target/{X86,ARM,...} but now it uses a new interface provided by MCDisassembler, and (so far) implemented by X86 and ARM. Also removed hacky #define-controlled initialization of targets in edis. If clients only want edis to initialize a limited set of targets, they can set --enable-targets on the configure command line. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101179 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@ -16,6 +16,8 @@ namespace llvm {
|
||||
class MCInst;
|
||||
class MemoryObject;
|
||||
class raw_ostream;
|
||||
|
||||
struct EDInstInfo;
|
||||
|
||||
/// MCDisassembler - Superclass for all disassemblers. Consumes a memory region
|
||||
/// and provides an array of assembly instructions.
|
||||
@ -43,7 +45,15 @@ public:
|
||||
const MemoryObject ®ion,
|
||||
uint64_t address,
|
||||
raw_ostream &vStream) const = 0;
|
||||
};
|
||||
|
||||
/// getEDInfo - Returns the enhanced insturction information corresponding to
|
||||
/// the disassembler.
|
||||
///
|
||||
/// @return - An array of instruction information, with one entry for
|
||||
/// each MCInst opcode this disassembler returns.
|
||||
/// NULL if there is no info for this target.
|
||||
virtual EDInstInfo *getEDInfo() const { return NULL; }
|
||||
};
|
||||
|
||||
} // namespace llvm
|
||||
|
||||
|
Reference in New Issue
Block a user