Public Types | Public Member Functions | Public Attributes | List of all members
Rose::BinaryAnalysis::DisassemblerM68k::M68k Class Referenceabstract


Interface for disassembling a single instruction.

Each instruction (or in some cases groups of closely related instructions) will define a subclass whose operator() unparses a single instruction and returns a SgAsmM68kInstruction. These functors are allocated and inserted into a list. When an instruction is to be disassembled, the list is scanned to find the first entry that matches, and then its operator() is invoked. An entry matches if the instruction bits to be disassembled match any of the BitPattern objects.

An instruction decoder is enabled if the disassembler's family (see DisassemblerM68k constructors) bit-wise ANDed with the decoder family (see DisassemblerM68k::M68k constructor) is non-zero.

Definition at line 43 of file DisassemblerM68k.h.

#include <Rose/BinaryAnalysis/DisassemblerM68k.h>

Collaboration diagram for Rose::BinaryAnalysis::DisassemblerM68k::M68k:
Collaboration graph

Public Types

typedef DisassemblerM68k D

Public Member Functions

 M68k (const std::string &name, unsigned family, const BitPattern< uint16_t > &pattern)
virtual SgAsmM68kInstructionoperator() (State &, const D *d, unsigned w0)=0

Public Attributes

std::string name
unsigned family
BitPattern< uint16_t > pattern

The documentation for this class was generated from the following file: