|
OpenASIP 2.2
|
Functions | |
| std::vector< SimValue > | executeInstructionHelper (const char *opName, uint8_t width, const uint64_t *inputs, int inputsCount) |
Variables | |
| constexpr unsigned | OPC_CUSTOM_0 = 0b0001011 |
| constexpr unsigned | OPC_CUSTOM_1 = 0b0101011 |
| std::map< std::string, int > | customOps = {} |
| std::unique_ptr< OperationPool > | pool = nullptr |
| std::vector< SimValue > RISCVInstructionExecutor::executeInstructionHelper | ( | const char * | opName, |
| uint8_t | width, | ||
| const uint64_t * | inputs, | ||
| int | inputsCount | ||
| ) |
Helper function that executes an OSAL instruction.
Takes in the opName, instruction width, and the inputs, and returns the output vector.
| opName | operation to be executed |
| width | instruction width (typically 32 or 64) |
| inputs | array of input values |
| inputsCount | number of values in the inputs array |
Definition at line 61 of file RISCVInstructionExecutor.cc.
References Operation::behavior(), OperationBehavior::createState(), OperationBehavior::deleteState(), NullOperation::instance(), NullOperationBehavior::instance(), Operation::numberOfInputs(), Operation::numberOfOutputs(), pool, OperationBehavior::simulateTrigger(), and THROW_EXCEPTION.
Referenced by executeInstruction32(), and executeInstruction64().

| std::map<std::string, int> RISCVInstructionExecutor::customOps = {} |
Definition at line 45 of file RISCVInstructionExecutor.cc.
Referenced by initializeMachine(), resetMachine(), and unpackInstruction().
|
constexpr |
Definition at line 42 of file RISCVInstructionExecutor.cc.
Referenced by unpackInstruction().
|
constexpr |
Definition at line 43 of file RISCVInstructionExecutor.cc.
Referenced by unpackInstruction().
| std::unique_ptr<OperationPool> RISCVInstructionExecutor::pool = nullptr |
Definition at line 46 of file RISCVInstructionExecutor.cc.
Referenced by executeInstructionHelper(), initializeMachine(), and resetMachine().