|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectscale.common.Root
scale.score.Note
scale.score.expr.Expr
scale.score.expr.ValueExpr
public abstract class ValueExpr
This class is the superclass of all value expressions.
$Id: ValueExpr.java,v 1.34 2007-10-17 13:40:01 burrill Exp $
Copyright 2008 by the
Scale Compiler Group,
Department of Computer Science
University of Massachusetts,
Amherst MA. 01003, USA
All Rights Reserved.
A value operator is an operator with no operands. Value operators may obtain their value in one of two ways:
| Field Summary |
|---|
| Fields inherited from class scale.score.expr.Expr |
|---|
fpReorder, SE_DOMAIN, SE_NONE, SE_OVERFLOW, SE_STATE |
| Constructor Summary | |
|---|---|
ValueExpr(Type t)
|
|
| Method Summary | |
|---|---|
void |
getDeclList(java.util.AbstractCollection<Declaration> varList)
Add all declarations referenced in this expression to the Vector. |
void |
getExprList(Vector<Expr> expList)
Add all Expr instances in this expression to the Vector. |
void |
getLoadExprList(Vector<LoadExpr> expList)
Add all LoadExpr instances in this expression to the Vector. |
Expr[] |
getOperandArray()
Return an array of the operands to the expression. |
boolean |
isLoopInvariant(LoopHeaderChord loop)
Return true if this expression is loop invariant. |
int |
numOperands()
Return the number of operands to this expression. |
void |
pushOperands(Stack<Expr> wl)
Push all of the operands of this expression on the Stack. |
void |
recordRefs(Chord stmt,
References refs)
Record any variable references in this expression in the table of references. |
void |
removeRefs(Chord stmt,
References refs)
Remove any variable references in this expression from the table of references. |
void |
removeUseDef()
Remove any use - def links, may - use links, etc. |
boolean |
replaceDecl(Declaration oldDecl,
Declaration newDecl)
Replace all occurrances of a Declaration with another Declaration. |
int |
sideEffects()
Return an indication of the side effects execution of this expression may cause. |
| Methods inherited from class scale.score.Note |
|---|
executionCostEstimate, getChord, getEssentialUse, setAnnotationLevel, setReportLevel, toString, visit |
| Methods inherited from class scale.common.Root |
|---|
addAnnotation, allAnnotations, allMatchingAnnotations, getAnnotation, getDisplayName, getDisplayString, getNodeCount, getNodeID, hasAnnotation, hasEqualAnnotation, hashCode, removeAnnotation, removeAnnotations, toStringAnnotations, toStringClass, trace, trace, trace |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, notify, notifyAll, wait, wait, wait |
| Constructor Detail |
|---|
public ValueExpr(Type t)
| Method Detail |
|---|
public void getDeclList(java.util.AbstractCollection<Declaration> varList)
getDeclList in class Exprpublic void getLoadExprList(Vector<LoadExpr> expList)
getLoadExprList in class Exprpublic void getExprList(Vector<Expr> expList)
getExprList in class Exprpublic void pushOperands(Stack<Expr> wl)
pushOperands in class Expr
public boolean replaceDecl(Declaration oldDecl,
Declaration newDecl)
replaceDecl in class Exprpublic boolean isLoopInvariant(LoopHeaderChord loop)
isLoopInvariant in class Exprloop - is the looppublic void removeUseDef()
removeUseDef in class Exprpublic final Expr[] getOperandArray()
getOperandArray in class Exprpublic final int numOperands()
numOperands in class Expr
public void recordRefs(Chord stmt,
References refs)
recordRefs in class Expr
public void removeRefs(Chord stmt,
References refs)
removeRefs in class Exprpublic int sideEffects()
sideEffects in class ExprExpr.SE_NONE
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||