|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object scale.score.pred.Supertype scale.score.pred.TraceChords scale.score.analyses.PlaceIndirectOps
public abstract class PlaceIndirectOps
This is the base class for generating information, at specific nodes, which is used to represent aliases and indirect operations in SSA form.
$Id: PlaceIndirectOps.java,v 1.56 2007-10-04 19:58:21 burrill Exp $
Copyright 2008 by the
Scale Compiler Group,
Department of Computer Science
University of Massachusetts,
Amherst MA. 01003, USA
All Rights Reserved.
Field Summary | |
---|---|
protected Aliases |
aliases
Alias analysis used. |
static boolean |
classTrace
True if traces are to be performed. |
protected boolean |
trace
Set true to trace operation. |
Fields inherited from class scale.score.pred.TraceChords |
---|
rl, thisChord, wl |
Constructor Summary | |
---|---|
PlaceIndirectOps(Aliases aliases)
Construct an object to place special annotations in a Scribble graph so that we can correctly handle indirect operations and aliases. |
Method Summary | |
---|---|
protected void |
addMayUse(LoadDeclValueExpr le,
ECR ecr)
Specify that the specified variable access may reference the same location as other references. |
protected void |
addMayUse(LoadDeclValueExpr le,
VirtualVar v)
Specify that the specified variable access may reference the same location as other references. |
protected void |
addMayUse(LoadValueIndirectExpr le,
ECR ecr)
Specify that the specified variable access may reference the same location as other references. |
protected void |
addMayUse(LoadValueIndirectExpr le,
VirtualVar v)
Specify that the specified variable access may reference the same location as other references. |
protected MayDef |
createMayDefInfo(ECR ecr)
Create a may definition expression to repesent the aliasing characteristics of an expression. |
protected MayDef |
createMayDefInfo(VirtualVar v)
Create a may definition expression to repesent the aliasing characteristics of an expression. |
protected AliasVar |
getAliasVar(Declaration d)
Get the alias information from a Scribble expression node. |
protected AliasVar |
getAliasVar(Expr exp)
Get the alias variable associated with a Scribble operator. |
VirtualVar |
getVirtualVar(ECR ecr)
Return the virtual variable associated with the ECR or create a new virtual var if there isn't one already. |
void |
setTrace(boolean trace)
Set the trace flag. |
Methods inherited from class scale.score.pred.TraceChords |
---|
getChord, setChord, visitChord |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static boolean classTrace
protected boolean trace
protected Aliases aliases
Constructor Detail |
---|
public PlaceIndirectOps(Aliases aliases)
Method Detail |
---|
public void setTrace(boolean trace)
public VirtualVar getVirtualVar(ECR ecr)
ecr
- an ECR that represents a virtual variable.
protected AliasVar getAliasVar(Declaration d)
d
- the declaration node that contains the alias annotation
protected AliasVar getAliasVar(Expr exp)
For LoadDeclValueExpr and LoadDeclAddressExpr the information is located in the "extra" information. For LoadValueIndirectExpr, the information is located in the operand.
exp
- is the expression representing the operator.
protected void addMayUse(LoadDeclValueExpr le, VirtualVar v)
protected void addMayUse(LoadDeclValueExpr le, ECR ecr)
protected void addMayUse(LoadValueIndirectExpr le, VirtualVar v)
protected void addMayUse(LoadValueIndirectExpr le, ECR ecr)
protected MayDef createMayDefInfo(VirtualVar v)
v
- is the equivalence class that the may def is associated with
protected MayDef createMayDefInfo(ECR ecr)
ecr
- the equivalence class that the may def is associated with
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |