|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object scale.score.dependence.DataDependence scale.score.dependence.banerjee.BanerjeeTest
public class BanerjeeTest
A class which implements Banerjee's data dependence test.
$Id: BanerjeeTest.java,v 1.29 2007-05-03 18:02:43 burrill Exp $
Copyright 2008 by the
Scale Compiler Group,
Department of Computer Science
University of Massachusetts,
Amherst MA. 01003, USA
All Rights Reserved.
Currently, we have only implemented the Single Loop Index test. The Single Loop Index test is an exact algorithm that works only with subscripts that have a single loop index variable. The SLI test only produces direction information (that is, no distance information). Also, the test only works when the bounds of the loops are constants.
Note that only dependence direction information is computed. Distance values are not computed.
OmegaTest
Field Summary | |
---|---|
static boolean |
classTrace
True if traces are to be performed. |
Fields inherited from class scale.score.dependence.DataDependence |
---|
bnest, cEqDependent, cFailed, cIndependent, cLCDependent, cloop, cUnkDependent, ddinfo, iloop, inode, loopInfo, oloop, onode, precedes, result, scribble |
Constructor Summary | |
---|---|
BanerjeeTest(Scribble scribble)
Create an object for dependence testing. |
Method Summary | |
---|---|
int |
ddTest(SubscriptExpr onode,
SubscriptExpr inode,
LoopHeaderChord oloop,
LoopHeaderChord iloop,
int precedes)
Implements Banerjee's dependence test. |
Vector<long[]> |
getDependenceInfo(boolean forward)
Compute data dependences in one direction. |
void |
spatialTest(SubscriptExpr onode,
SubscriptExpr inode,
LoopHeaderChord oloop,
LoopHeaderChord iloop,
int precedes)
|
Methods inherited from class scale.score.dependence.DataDependence |
---|
getBackwardDependences, getDDInfo, getForwardDependences, initialize |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static boolean classTrace
Constructor Detail |
---|
public BanerjeeTest(Scribble scribble)
Method Detail |
---|
public int ddTest(SubscriptExpr onode, SubscriptExpr inode, LoopHeaderChord oloop, LoopHeaderChord iloop, int precedes)
ddTest
in class DataDependence
onode
- is a node accessinode
- is a node accessoloop
- is the loop containing onode
iloop
- is the loop containing inode
precedes
- specifies the execution order.
It is 1 if inode is execute before onode,
-1 if onode is executed befoe inode,
and 0 if they are "executed in parallel".
DataDependence.cIndependent
,
DataDependence.cUnkDependent
,
DataDependence.cLCDependent
,
DataDependence.cEqDependent
,
DataDependence.cFailed
public Vector<long[]> getDependenceInfo(boolean forward)
getDependenceInfo
in class DataDependence
forward
- is true if we want forward dependence information.
public void spatialTest(SubscriptExpr onode, SubscriptExpr inode, LoopHeaderChord oloop, LoopHeaderChord iloop, int precedes) throws java.lang.Exception
spatialTest
in class DataDependence
onode
- a node accessinode
- a node accessoloop
- is the loop containing onode
iloop
- is the loop containing inode
precedes
- specifies the execution order.
It is 1 if inode
is execute before onode
,
-1 if onode
is executed befoe inode
,
and 0 if they are "executed in parallel".
java.lang.Exception
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |