Fennel: InstructionFactory Class Reference (original) (raw)

Dynamically create Instruction objects given an InstructionDescription description of the desired Instruction. More...

#include <[InstructionFactory.h](InstructionFactory%5F8h-source.html)>

List of all members.

Public Member Functions
InstructionFactory ()
Static Public Member Functions
static Instruction * createInstruction (string const &name, vector< RegisterReference * > const &operands)
static Instruction * createInstruction (string const &name, TProgramCounter pc, RegisterReference *operand)
static Instruction * createInstruction (string const &name, string const &function, vector< RegisterReference * > const &operands)
static string signatures ()
static string extendedSignatures ()
static void registerInstructions ()
static StringToCreateFn * getInstructionTable ()
static ExtendedInstructionTable * getExtendedInstructionTable ()
Static Private Member Functions
static Instruction * createInstructionHelper (InstructionSignature const &sig)
Static Private Attributes
static StringToCreateFn instructionTable
A map to hold regular instructions.
static ExtendedInstructionTable extendedTable
A map to hold extended instructions.

Detailed Description

Dynamically create Instruction objects given an InstructionDescription description of the desired Instruction.

Definition at line 40 of file InstructionFactory.h.


Constructor & Destructor Documentation

| InstructionFactory::InstructionFactory | ( | | ) | [inline, explicit] | | -------------------------------------- | - | | - | -------------------- |


Member Function Documentation

Instruction * InstructionFactory::createInstruction ( string const & name,
string const & function,
vector< RegisterReference * > const & operands
) [static]

| string InstructionFactory::signatures | ( | | ) | [static] | | ------------------------------------- | - | | - | ---------- |

| string InstructionFactory::extendedSignatures | ( | | ) | [static] | | --------------------------------------------- | - | | - | ---------- |

| void InstructionFactory::registerInstructions | ( | | ) | [static] | | --------------------------------------------- | - | | - | ---------- |

Definition at line 106 of file InstructionFactory.cpp.

References ReturnInstructionRegister::registerInstructions(), PointerPointerInstructionRegister::registerInstructions(), PointerIntegralInstructionRegister::registerInstructions(), NativeNativeInstructionRegister::registerInstructions(), JumpInstructionRegister::registerInstructions(), IntegralPointerInstructionRegister::registerInstructions(), IntegralNativeInstructionRegister::registerInstructions(), CastInstructionRegister::registerInstructions(), BoolPointerInstructionRegister::registerInstructions(), BoolNativeInstructionRegister::registerInstructions(), and BoolInstructionRegister::registerInstructions().

Referenced by CalcInit::instance(), and main().

| static StringToCreateFn* InstructionFactory::getInstructionTable | ( | | ) | [inline, static] | | ------------------------------------------------------------------------------------------------------------------------------------ | - | | - | ------------------ |


Member Data Documentation


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


Generated on Mon Jun 22 04:00:32 2009 for Fennel by doxygen 1.5.1