325 return upperName ==
"ALDW" || upperName ==
"ALDHU" ||
326 upperName ==
"ALDH" || upperName ==
"ALDQU" ||
327 upperName ==
"ALDQ" || upperName ==
"ASTW" ||
328 upperName ==
"ASTH" || upperName ==
"ASTQ";
#define abortWithError(message)
static NullOperand & instance()
static NullOperationBehavior & instance()
virtual bool canSwap(int id1, int id2) const
virtual TCEString description() const
virtual void createState(OperationContext &context) const
virtual bool isClocked() const
virtual Operand & input(int id) const
virtual int affectsCount() const
virtual bool canTrap() const
virtual int numberOfOutputs() const
virtual void setBehavior(OperationBehavior &behavior)
virtual Operand & output(int id) const
virtual bool isControlFlowOperation() const
virtual TCEString name() const
virtual TCEString affectedBy(unsigned int i) const
virtual int affectedByCount() const
virtual bool isCall() const
virtual bool hasSideEffects() const
virtual bool readsMemory() const
virtual bool simulateTrigger(SimValue **, OperationContext &context) const
virtual void deleteState(OperationContext &context) const
virtual bool usesMemory() const
NullOperation()
Some gcc versions warn about private constructors.
static NullOperation instance_
Unique instance of NullOperation.
virtual int numberOfInputs() const
virtual TCEString affects(unsigned int i) const
virtual Operand & operand(int id) const
virtual bool isBranch() const
virtual bool writesMemory() const
virtual OperationBehavior & behavior() const
virtual bool dependsOn(const Operation &op) const
virtual bool areValid(const InputOperandVector &inputs, const OperationContext &context) const
void loadState(const ObjectState *state)
void createState(OperationContext &context) const
TCEString description() const
bool dependsOn(const Operation &op) const
void setDagCode(int index, const TCEString &code)
bool hasSideEffects() const
Operand & operand(int id) const
TCEString emulationFunctionName() const
bool canSwap(int id1, int id2) const
Operand & output(int index) const
bool writesMemory() const
ObjectState * saveState() const
int affectedByCount() const
bool isControlFlowOperation() const
void setBranch(bool setting)
int numberOfOutputs() const
OperationDAG & dag(int index) const
void addInput(Operand *operand)
int numberOfInputs() const
void setReadsMemory(bool setting)
TCEString dagCode(int index) const
void removeDag(int index)
Operand & input(int index) const
TCEString affectedBy(unsigned int i) const
TCEString affects(unsigned int i) const
void setCall(bool setting)
bool canBeSimulated() const
void addOutput(Operand *operand)
void setBehavior(OperationBehavior &behavior)
void addDag(const TCEString &code)
void deleteState(OperationContext &context) const
TCEString dagError(int index) const
bool simulateTrigger(SimValue **, OperationContext &context) const
void setWritesMemory(bool setting)
OperationBehavior & behavior() const
void setControlFlowOperation(bool setting)
static const char * OPRN_CONTROL_FLOW
Object state name for control flow property.
virtual bool isVectorOperation() const
OperationPimpl * pimpl_
Private implementation in a separate source file.
virtual bool readsMemory() const
virtual void setBehavior(OperationBehavior &behavior)
virtual OperationDAG & dag(int index) const
static const char * OPRN_ISBRANCH
Object state name for branch property.
virtual void setWritesMemory(bool setting)
virtual TCEString name() const
virtual int affectedByCount() const
virtual TCEString dagError(int index) const
static const char * OPRN_DESCRIPTION
Object state name for description.
virtual bool dependsOn(const Operation &op) const
virtual bool usesMemory() const
virtual void setCall(bool setting)
virtual TCEString dagCode(int index) const
virtual TCEString description() const
virtual void addDag(const TCEString &code)
virtual void addOutput(Operand *operand)
virtual void setControlFlowOperation(bool setting)
virtual bool isCall() const
virtual ObjectState * saveState() const
virtual bool isBaseOffsetMemOperation() const
static const char * OPRN_IN
Object state name for input operand.
virtual void deleteState(OperationContext &context) const
virtual bool isControlFlowOperation() const
static const char * OPRN_CLOCKED
Object state name for clockedness.
virtual void addInput(Operand *operand)
virtual Operand & output(int index) const
virtual TCEString affectedBy(unsigned int i) const
Operation(const TCEString &name, OperationBehavior &behavior)
virtual OperationBehavior & behavior() const
virtual bool canTrap() const
virtual void createState(OperationContext &context) const
virtual Operand & input(int index) const
virtual int operandCount() const
static const char * OPRN_TRAP
Object state name for trap.
virtual bool hasSideEffects() const
virtual int affectsCount() const
virtual bool isBranch() const
static const char * OPRN_AFFECTED_BY
Object state name for affected by.
virtual bool simulateTrigger(SimValue **, OperationContext &context) const
virtual bool isClocked() const
virtual bool writesMemory() const
virtual int numberOfInputs() const
TCEString emulationFunctionName() const
virtual void setDagCode(int index, const TCEString &code)
static const char * OPRN_OPERATION
Object state name for operation.
virtual bool canBeSimulated() const
virtual void setBranch(bool setting)
virtual bool canSwap(int id1, int id2) const
virtual void removeDag(int index)
static const char * OPRN_TRIGGER
Object state name for trigger semantics.
virtual TCEString affects(unsigned int i) const
static const char * OPRN_ISCALL
Object state name for call property.
static const char * OPRN_SIDE_EFFECTS
Object state name for side effects.
virtual bool areValid(const InputOperandVector &inputs, const OperationContext &context) const
static const char * OPRN_READS_MEMORY
Object state name for reads memory.
static const char * OPRN_OUT
Object state name for output operand.
virtual int dagCount() const
static const char * OPRN_OUTPUTS
Object state name for outputs.
virtual int numberOfOutputs() const
static const char * OPRN_NAME
Object state name for name.
static const char * OPRN_INPUTS
Object state name for inputs.
static const char * OPRN_AFFECTS
Object state name for affects.
virtual Operand & operand(int id) const
virtual void setReadsMemory(bool setting)
virtual bool isPure() const
static const char * OPRN_WRITES_MEMORY
Object state name for writes memory.
virtual void loadState(const ObjectState *state)
OperationBehavior::InputOperandVector InputOperandVector