|
OpenASIP 2.2
|
#include <Operation.hh>


Public Member Functions | |
| virtual | ~NullOperation () |
| virtual TCEString | name () const |
| virtual TCEString | description () const |
| virtual int | numberOfInputs () const |
| virtual int | numberOfOutputs () const |
| virtual bool | usesMemory () const |
| virtual bool | readsMemory () const |
| virtual bool | writesMemory () const |
| virtual bool | canTrap () const |
| virtual bool | hasSideEffects () const |
| virtual bool | isClocked () const |
| virtual bool | isControlFlowOperation () const |
| virtual bool | isCall () const |
| virtual bool | isBranch () const |
| virtual bool | dependsOn (const Operation &op) const |
| virtual int | affectsCount () const |
| virtual int | affectedByCount () const |
| virtual TCEString | affects (unsigned int i) const |
| virtual TCEString | affectedBy (unsigned int i) const |
| virtual bool | canSwap (int id1, int id2) const |
| virtual Operand & | input (int id) const |
| virtual Operand & | output (int id) const |
| virtual Operand & | operand (int id) const |
| virtual void | setBehavior (OperationBehavior &behavior) |
| virtual OperationBehavior & | behavior () const |
| virtual bool | simulateTrigger (SimValue **, OperationContext &context) const |
| virtual void | createState (OperationContext &context) const |
| virtual void | deleteState (OperationContext &context) const |
Public Member Functions inherited from Operation | |
| Operation (const TCEString &name, OperationBehavior &behavior) | |
| virtual | ~Operation () |
| virtual void | addDag (const TCEString &code) |
| virtual void | removeDag (int index) |
| virtual int | dagCount () const |
| virtual OperationDAG & | dag (int index) const |
| virtual TCEString | dagCode (int index) const |
| virtual void | setDagCode (int index, const TCEString &code) |
| virtual TCEString | dagError (int index) const |
| virtual int | operandCount () const |
| virtual bool | isVectorOperation () const |
| virtual void | setReadsMemory (bool setting) |
| virtual void | setWritesMemory (bool setting) |
| virtual bool | isBaseOffsetMemOperation () const |
| virtual void | setCall (bool setting) |
| virtual void | setBranch (bool setting) |
| virtual void | setControlFlowOperation (bool setting) |
| virtual bool | isPure () const |
| virtual void | addInput (Operand *operand) |
| virtual void | addOutput (Operand *operand) |
| virtual void | loadState (const ObjectState *state) |
| virtual ObjectState * | saveState () const |
| virtual bool | areValid (const InputOperandVector &inputs, const OperationContext &context) const |
| virtual bool | canBeSimulated () const |
| bool | isNull () const |
| TCEString | emulationFunctionName () const |
| OperationPimpl & | impl () |
Public Member Functions inherited from Serializable | |
| virtual | ~Serializable () |
Static Public Member Functions | |
| static NullOperation & | instance () |
Protected Member Functions | |
| NullOperation () | |
| Some gcc versions warn about private constructors. | |
Private Member Functions | |
| NullOperation (const NullOperation &) | |
| Copying not allowed. | |
| NullOperation & | operator= (const NullOperation &) |
| Assignment not allowed. | |
Static Private Attributes | |
| static NullOperation | instance_ |
| Unique instance of NullOperation. | |
Additional Inherited Members | |
Public Types inherited from Operation | |
| typedef OperationBehavior::InputOperandVector | InputOperandVector |
Static Public Attributes inherited from Operation | |
| static const char * | OPRN_OPERATION = "operation" |
| Object state name for operation. | |
| static const char * | OPRN_NAME = "name" |
| Object state name for name. | |
| static const char * | OPRN_DESCRIPTION = "description" |
| Object state name for description. | |
| static const char * | OPRN_INPUTS = "inputs" |
| Object state name for inputs. | |
| static const char * | OPRN_OUTPUTS = "outputs" |
| Object state name for outputs. | |
| static const char * | OPRN_TRAP = "trap" |
| Object state name for trap. | |
| static const char * | OPRN_SIDE_EFFECTS = "side-effects" |
| Object state name for side effects. | |
| static const char * | OPRN_CLOCKED = "clocked" |
| Object state name for clockedness. | |
| static const char * | OPRN_CONTROL_FLOW = "control-flow" |
| Object state name for control flow property. | |
| static const char * | OPRN_READS_MEMORY = "reads-memory" |
| Object state name for reads memory. | |
| static const char * | OPRN_WRITES_MEMORY = "writes-memory" |
| Object state name for writes memory. | |
| static const char * | OPRN_AFFECTS = "affects" |
| Object state name for affects. | |
| static const char * | OPRN_AFFECTED_BY = "affected-by" |
| Object state name for affected by. | |
| static const char * | OPRN_IN = "in" |
| Object state name for input operand. | |
| static const char * | OPRN_OUT = "out" |
| Object state name for output operand. | |
| static const char * | OPRN_TRIGGER = "trigger-semantics" |
| Object state name for trigger semantics. | |
| static const char * | OPRN_ISCALL = "is-call" |
| Object state name for call property. | |
| static const char * | OPRN_ISBRANCH = "is-branch" |
| Object state name for branch property. | |
Singleton class that is used to represent a null operation behavior.
All methods cause program abort with an error log message.
Definition at line 186 of file Operation.hh.
|
virtual |
|
protected |
Some gcc versions warn about private constructors.
Constructor.
Definition at line 652 of file Operation.cc.
|
private |
Copying not allowed.
|
virtual |
Aborts program with error log message.
| Nothing. |
Reimplemented from Operation.
Definition at line 715 of file Operation.cc.
References abortWithError.
|
virtual |
Aborts program with error log message.
Reimplemented from Operation.
Definition at line 690 of file Operation.cc.
References abortWithError.
|
virtual |
Aborts program with error log message.
| Nothing. |
Reimplemented from Operation.
Definition at line 702 of file Operation.cc.
References abortWithError.
|
virtual |
Aborts program with error log message.
Reimplemented from Operation.
Definition at line 679 of file Operation.cc.
References abortWithError.
|
virtual |
Aborts program with error log message.
Reimplemented from Operation.
Definition at line 771 of file Operation.cc.
References abortWithError, and NullOperationBehavior::instance().

|
virtual |
Aborts program with error log message.
Reimplemented from Operation.
Definition at line 727 of file Operation.cc.
References abortWithError.
|
virtual |
Aborts program with error log message.
Reimplemented from Operation.
Definition at line 867 of file Operation.cc.
References abortWithError.
|
virtual |
Aborts program with error log message.
Reimplemented from Operation.
Definition at line 944 of file Operation.cc.
References abortWithError.
|
virtual |
Aborts program with error log message.
Reimplemented from Operation.
Definition at line 952 of file Operation.cc.
References abortWithError.
|
virtual |
Aborts program with error log message.
Reimplemented from Operation.
Definition at line 668 of file Operation.cc.
References abortWithError.
|
virtual |
Aborts program with error log message.
Reimplemented from Operation.
Definition at line 801 of file Operation.cc.
References abortWithError.
|
virtual |
Aborts program with error log message.
Reimplemented from Operation.
Definition at line 878 of file Operation.cc.
References abortWithError.
|
virtual |
Aborts program with error log message.
Reimplemented from Operation.
Definition at line 738 of file Operation.cc.
References abortWithError, and NullOperand::instance().

|
static |
Referenced by TDGen::analyzeMachineVectorRegisterClasses(), MachineStateBuilder::bindPortsToOperands(), AddressSpaceCheck::check(), POMDisassembler::createFUPort(), OperationDAGBuilder::createOperationNode(), ControlFlowEdge::edgePredicateFromMove(), CodeCompressorPlugin::encodeFUTerminal(), CmdTrigger::execute(), CmdReset::execute(), RISCVInstructionExecutor::executeInstructionHelper(), TDGen::gatherAllMachineOperations(), UniversalFunctionUnit::hasOperation(), TTAProgram::TerminalFUPort::hintOperation(), TTAProgram::Move::isCall(), TTAProgram::Move::isControlFlowMove(), TTAProgram::Move::isJump(), operandBindingsString(), MachineInfo::operandFromPort(), MachineConnectivityCheck::operandWidth(), OperationPoolPimpl::operation(), OsalInterpreter::operation(), UniversalFunctionUnit::operation(), OsalInterpreter::OsalInterpreter(), printLatexFunctionUnitDescription(), TTAProgram::TerminalFUPort::setHintOperation(), TTAProgram::ProgramWriter::terminalResource(), TDGen::writeInstrInfo(), TDGen::writeIntegerImmediateDefs(), and TDGen::writeScalarOperationExploitations().
|
virtual |
Aborts program with error log message.
Reimplemented from Operation.
Definition at line 920 of file Operation.cc.
References __func__, and abortWithError.
|
virtual |
Aborts program with error log message.
Reimplemented from Operation.
Definition at line 910 of file Operation.cc.
References __func__, and abortWithError.
|
virtual |
Aborts program with error log message.
Reimplemented from Operation.
Definition at line 889 of file Operation.cc.
References abortWithError.
|
virtual |
Aborts program with error log message.
Reimplemented from Operation.
Definition at line 900 of file Operation.cc.
References __func__, and abortWithError.
|
virtual |
Aborts program with error log message.
Reimplemented from Operation.
Definition at line 790 of file Operation.cc.
References abortWithError.
|
virtual |
Aborts program with error log message.
Reimplemented from Operation.
Definition at line 812 of file Operation.cc.
References abortWithError.
|
virtual |
Aborts program with error log message.
Reimplemented from Operation.
Definition at line 823 of file Operation.cc.
References abortWithError.
|
virtual |
Aborts program with error log message.
Reimplemented from Operation.
Definition at line 760 of file Operation.cc.
References abortWithError, and NullOperand::instance().

|
private |
Assignment not allowed.
|
virtual |
Aborts program with error log message.
Reimplemented from Operation.
Definition at line 749 of file Operation.cc.
References abortWithError, and NullOperand::instance().

|
virtual |
Aborts program with error log message.
Reimplemented from Operation.
Definition at line 845 of file Operation.cc.
References abortWithError.
|
virtual |
Aborts program with error log message.
Reimplemented from Operation.
Definition at line 780 of file Operation.cc.
References abortWithError.
|
virtual |
Aborts program with error log message.
| Exception | never. |
Reimplemented from Operation.
Definition at line 932 of file Operation.cc.
References abortWithError.
|
virtual |
Aborts program with error log message.
Reimplemented from Operation.
Definition at line 834 of file Operation.cc.
References abortWithError.
|
virtual |
Aborts program with error log message.
Reimplemented from Operation.
Definition at line 856 of file Operation.cc.
References abortWithError.
|
staticprivate |
Unique instance of NullOperation.
Definition at line 237 of file Operation.hh.