public final class DepGraphEdge extends SpaceEffGraphEdge
| Modifier and Type | Field and Description |
|---|---|
private RegisterOperand |
_destOperand
The destination operand (of a REG_TRUE dependence)
|
| Constructor and Description |
|---|
DepGraphEdge(DepGraphNode sourceNode,
DepGraphNode destNode,
int depKind) |
DepGraphEdge(RegisterOperand destOp,
DepGraphNode sourceNode,
DepGraphNode destNode,
int depKind)
Constructor for dependence graph edge of a REG_TRUE dependence
from sourceNode to destNode due to destOp
|
| Modifier and Type | Method and Description |
|---|---|
(package private) void |
addDepType(int type)
Augment the type of the dependence edge.
|
(package private) int |
depKind()
Get the type of the dependence edge.
|
(package private) RegisterOperand |
destOperand()
Get the destination operand.
|
static DepGraphEdge |
findInputEdge(DepGraphNode n,
Operand op)
Return the input edge for a given node that corresponds to a given operand.
|
String |
fromNodeString()
Returns the string representation of the start node (used for printing).
|
String |
getTypeString()
Get the string representation of edge type (used for printing).
|
boolean |
isControl()
Does this edge represent a control dependence?
|
boolean |
isExceptionE()
Does this edge represent an exception-exception dependence?
|
boolean |
isExceptionML()
Does this edge represent an exception-load dependence?
|
boolean |
isExceptionMS()
Does this edge represent an exception-store dependence?
|
boolean |
isExceptionR()
Does this edge represent an exception-register live dependence?
|
boolean |
isGuardAnti()
Does this edge represent a guard anti-dependence?
|
boolean |
isGuardOutput()
Does this edge represent a guard output dependence?
|
boolean |
isGuardTrue()
Does this edge represent a guard true dependence?
|
boolean |
isMemAnti()
Does this edge represent a memory anti-dependence?
|
boolean |
isMemOutput()
Does this edge represent a memory output dependence?
|
boolean |
isMemReadsKill()
Does this edge represent a memory reads-kill dependence?
|
boolean |
isMemTrue()
Does this edge represent a memory true dependence?
|
boolean |
isRegAnti()
Does this edge represent a register anti-dependence?
|
static boolean |
isRegAnti(SpaceEffGraphEdge edge)
Does a given edge represent a register anti-dependence?
|
boolean |
isRegMayDef()
Does this edge represent a register may def?
|
boolean |
isRegOutput()
Does this edge represent a register output dependence?
|
static boolean |
isRegOutput(SpaceEffGraphEdge edge)
Does a given edge represent a register output dependence?
|
boolean |
isRegTrue()
Does this edge represent a register true dependence?
|
static boolean |
isRegTrue(SpaceEffGraphEdge edge)
Does a given edge represent a register true dependence?
|
String |
toNodeString()
Returns the string representation of the end node (used for printing).
|
String |
toString()
Returns the string representation of the edge.
|
backEdge, clearBackEdge, clearDominatorEdge, clearVisited, dominatorEdge, from, fromNode, getInfo, getNextIn, getNextOut, setBackEdge, setDominatorEdge, setInfo, setVisited, to, toNode, visitedprivate final RegisterOperand _destOperand
DepGraphEdge(DepGraphNode sourceNode, DepGraphNode destNode, int depKind)
sourceNode - source dependence graph nodedestNode - destination dependence graph nodedepKind - the type of the dependence edgeDepGraphEdge(RegisterOperand destOp, DepGraphNode sourceNode, DepGraphNode destNode, int depKind)
destOp - destination operandsourceNode - source dependence graph nodedestNode - destination dependence graph nodedepKind - the type of the dependence edgepublic boolean isRegTrue()
true if yes, false otherwisepublic boolean isRegAnti()
true if yes, false otherwisepublic boolean isRegOutput()
true if yes, false otherwisepublic boolean isRegMayDef()
true if yes, false otherwisepublic boolean isMemTrue()
true if yes, false otherwisepublic boolean isMemAnti()
true if yes, false otherwisepublic boolean isMemOutput()
true if yes, false otherwisepublic boolean isMemReadsKill()
true if yes, false otherwisepublic boolean isControl()
true if yes, false otherwisepublic boolean isExceptionE()
true if yes, false otherwisepublic boolean isExceptionMS()
true if yes, false otherwisepublic boolean isExceptionML()
true if yes, false otherwisepublic boolean isExceptionR()
true if yes, false otherwisepublic boolean isGuardTrue()
true if yes, false otherwisepublic boolean isGuardAnti()
true if yes, false otherwisepublic boolean isGuardOutput()
true if yes, false otherwisepublic static boolean isRegTrue(SpaceEffGraphEdge edge)
edge - the edge to testtrue if yes, false otherwisepublic static boolean isRegAnti(SpaceEffGraphEdge edge)
edge - the edge to testtrue if yes, false otherwisepublic static boolean isRegOutput(SpaceEffGraphEdge edge)
edge - the edge to testtrue if yes, false otherwisevoid addDepType(int type)
type - the additional type for the edgeint depKind()
RegisterOperand destOperand()
public String getTypeString()
getTypeString in class SpaceEffGraphEdgepublic String toNodeString()
toNodeString in class SpaceEffGraphEdgeSpaceEffGraphEdge.toNodeString()public String fromNodeString()
fromNodeString in class SpaceEffGraphEdgeSpaceEffGraphEdge.fromNodeString()public static DepGraphEdge findInputEdge(DepGraphNode n, Operand op)
n - destination nodeop - destination operandnull if not found