ROSE  0.9.6a
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DisassemblerMips::Mips32 Class Referenceabstract

Interface for disassembling a single instruction. More...

#include <DisassemblerMips.h>

Public Types

enum  Architecture {
  Release1,
  Release2,
  Release3,
  Micro
}
 
typedef DisassemblerMips D
 

Public Member Functions

 Mips32 (Architecture arch, unsigned match, unsigned mask)
 
virtual ~Mips32 ()
 
virtual SgAsmMipsInstructionoperator() (D *d, unsigned insn_bits)=0
 

Public Attributes

Architecture arch
 
unsigned match
 
unsigned mask
 

Detailed Description

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 word and returns an SgAsmMipsInstruction. These functors are allocated and inserted into a list. When an instruction word 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 the match data member after both are masked according to the mask data member. The mask and match (as a pair) are unique across all the subclass instances.

Definition at line 23 of file DisassemblerMips.h.

Member Typedef Documentation

Member Enumeration Documentation

Enumerator
Release1 
Release2 
Release3 
Micro 

Definition at line 25 of file DisassemblerMips.h.

Constructor & Destructor Documentation

DisassemblerMips::Mips32::Mips32 ( Architecture  arch,
unsigned  match,
unsigned  mask 
)
inline

Definition at line 26 of file DisassemblerMips.h.

virtual DisassemblerMips::Mips32::~Mips32 ( )
inlinevirtual

Definition at line 27 of file DisassemblerMips.h.

Member Function Documentation

virtual SgAsmMipsInstruction* DisassemblerMips::Mips32::operator() ( D d,
unsigned  insn_bits 
)
pure virtual

Member Data Documentation

Architecture DisassemblerMips::Mips32::arch

Definition at line 28 of file DisassemblerMips.h.

unsigned DisassemblerMips::Mips32::match

Definition at line 29 of file DisassemblerMips.h.

unsigned DisassemblerMips::Mips32::mask

Definition at line 30 of file DisassemblerMips.h.


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