| java.lang.Object jode.expr.Expression jode.expr.Operator
All known Subclasses: jode.expr.NewArrayOperator, jode.expr.MonitorEnterOperator, jode.expr.ConvertOperator, jode.expr.StringAddOperator, jode.expr.FieldOperator, jode.expr.OuterLocalOperator, jode.expr.ArrayLengthOperator, jode.expr.IfThenElseOperator, jode.expr.BinaryOperator, jode.expr.SimpleOperator, jode.expr.InstanceOfOperator, jode.expr.LocalVarOperator, jode.expr.IIncOperator, jode.expr.CheckNullOperator, jode.expr.PopOperator, jode.expr.StoreInstruction, jode.expr.CompareUnaryOperator, jode.expr.MonitorExitOperator, jode.expr.ConstantArrayOperator, jode.expr.CompareBinaryOperator, jode.expr.UnaryOperator, jode.expr.CheckCastOperator, jode.expr.NoArgOperator, jode.expr.CompareToIntOperator, jode.expr.InvokeOperator, jode.expr.PrePostFixOperator, jode.expr.ArrayLoadOperator,
ADD_OP | final public static int ADD_OP(Code) | | |
AND_OP | final public static int AND_OP(Code) | | |
ASSIGN_OP | final public static int ASSIGN_OP(Code) | | |
COMPARE_OP | final public static int COMPARE_OP(Code) | | |
DEC_OP | final public static int DEC_OP(Code) | | |
EQUALS_OP | final public static int EQUALS_OP(Code) | | |
GREATEREQ_OP | final public static int GREATEREQ_OP(Code) | | |
GREATER_OP | final public static int GREATER_OP(Code) | | |
INC_OP | final public static int INC_OP(Code) | | |
LESSEQ_OP | final public static int LESSEQ_OP(Code) | | |
LESS_OP | final public static int LESS_OP(Code) | | |
LOG_AND_OP | final public static int LOG_AND_OP(Code) | | |
LOG_NOT_OP | final public static int LOG_NOT_OP(Code) | | |
LOG_OR_OP | final public static int LOG_OR_OP(Code) | | |
NEG_OP | final public static int NEG_OP(Code) | | |
NOTEQUALS_OP | final public static int NOTEQUALS_OP(Code) | | |
OPASSIGN_OP | final public static int OPASSIGN_OP(Code) | | |
SHIFT_OP | final public static int SHIFT_OP(Code) | | |
SUB_OP | final public static int SUB_OP(Code) | | |
operatorIndex | protected int operatorIndex(Code) | | |
canCombine | public int canCombine(CombineableOperator combOp)(Code) | | Checks if the given Expression (which must be a CombineableOperator)
can be combined into this expression.
Parameters: e - The store expression, must be of type void. 1, if it can, 0, if no match was found and -1, if aconflict was found. You may wish to check for >0. exception: ClassCastException - , if e.getOperator is not a CombineableOperator. |
combine | public Expression combine(CombineableOperator comb)(Code) | | Combines the given Expression (which should be a StoreInstruction)
into this expression. You must only call this if
canCombine returns the value 1.
Parameters: e - The store expression. The combined expression. exception: ClassCastException - , if e.getOperator is not a CombineableOperator. |
containsConflictingLoad | public boolean containsConflictingLoad(MatchableOperator op)(Code) | | Checks if this expression contains a conflicting load, that
matches the given CombineableOperator. The sub expressions are
not checked.
Parameters: op - The combineable operator. if this expression contains a matching load. |
containsMatchingLoad | public boolean containsMatchingLoad(CombineableOperator comb)(Code) | | Checks if this expression contains a matching load, that matches the
given Expression.
Parameters: comb - The store expression. true, iff this expression contains a matching load. exception: ClassCastException - , if e.getOperator is not a CombineableOperator. |
getFreeOperandCount | public int getFreeOperandCount()(Code) | | |
getOperatorIndex | public int getOperatorIndex()(Code) | | |
hasSideEffects | public boolean hasSideEffects(Expression expr)(Code) | | Checks if the value of the given expression can change, due to
side effects in this expression. If this returns false, the
expression can safely be moved behind the current expresion.
Parameters: expr - the expression that should not change. |
initOperands | public void initOperands(int opcount)(Code) | | |
isConstant | public boolean isConstant()(Code) | | |
isFreeOperator | public boolean isFreeOperator()(Code) | | Tells if this is an operator, that doesn't have any
subExpression, yet.
|
isFreeOperator | public boolean isFreeOperator(int opcount)(Code) | | Tells if this is an operator, that doesn't have any
subExpression, yet, and that expects opcount operands
|
makeDeclaration | public void makeDeclaration(Set done)(Code) | | |
setOperatorIndex | public void setOperatorIndex(int op)(Code) | | |
|
|