|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectat.dms.kjc.cluster.TapeBase
at.dms.kjc.cluster.TapeDynrate
public class TapeDynrate
Dynamic-rate tapes linking nodes.
The tape is only one part of the story: the tape creates push, pop, etc routines
but to pass arrays over tapes we need to change some types so the calls to push,
pop, ets mat need to be wrapped in a cast or in a memcpy().
The translation functionality should be part of the tape class, but (alas) is
actually in the code emitters FlatIRToCluster
and ClusterCode
.
Field Summary |
---|
Fields inherited from class at.dms.kjc.cluster.TapeBase |
---|
dst, peek_name, pop_name, push_name, src, type, typeString |
Constructor Summary | |
---|---|
TapeDynrate(int source,
int dest,
CType type)
|
Method Summary | |
---|---|
String |
assignPeekToVar(String varName,
String offset)
Assign the result of peeking. |
String |
assignPopToVar(String varName)
Statement, but no ";" to pop an item into a variable. |
String |
dataDeclaration()
Data declaration: in .c file if needed else noop. |
String |
dataDeclarationH()
Data declaration: in .h file if needed else noop. |
String |
downstreamCleanup()
Any cleanup needed before exit for downstream end of tape. |
String |
downstreamDeclaration()
Data declaration: for code doing downstream processing. |
String |
downstreamDeclarationExtern()
Data declaration: following "extern" if needed else noop. |
String |
getTypeCastName()
returns the type to cast to, which is only relevant for arrays. |
String |
peekPrefix()
prefix to peek expression |
String |
peekSuffix()
suffix to peek expression |
String |
popExpr()
expression to pop an item: to end of statement. |
String |
popExprCleanup()
if expression to pop an item requires statements to clean up then this is cleanup. |
String |
popExprNoCleanup()
expression to pop an item, really an expression. |
String |
popNStmt(int N)
prefix to pop N items discarding them. |
String |
pushbackCleanup()
|
String |
pushbackInit(int NumberToPush)
|
String |
pushbackPrefix()
|
String |
pushbackSuffix()
|
String |
pushPrefix()
prefix before data expression to push. |
String |
pushSuffix()
suffix after data expression to push. |
String |
topOfWorkIteration()
Code used at top of work iteration. |
String |
upstreamCleanup()
Any cleanup needed before exit for upstream end of tape. |
String |
upstreamDeclaration()
Data declaration: for code doing upstream processing. |
String |
upstreamDeclarationExtern()
Data declaration: following "extern" if needed else noop. |
Methods inherited from class at.dms.kjc.cluster.TapeBase |
---|
getDest, getPeekName, getPopName, getPushName, getSource, getType, newTape, popManyItems, pushManyItems |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface at.dms.kjc.cluster.Tape |
---|
getDest, getPeekName, getPopName, getPushName, getSource, getType, popManyItems, pushManyItems |
Constructor Detail |
---|
public TapeDynrate(int source, int dest, CType type)
Method Detail |
---|
public String dataDeclarationH()
Tape
dataDeclarationH
in interface Tape
dataDeclarationH
in class TapeBase
public String dataDeclaration()
Tape
dataDeclaration
in interface Tape
dataDeclaration
in class TapeBase
public String downstreamDeclarationExtern()
Tape
downstreamDeclarationExtern
in interface Tape
downstreamDeclarationExtern
in class TapeBase
public String downstreamDeclaration()
Tape
downstreamDeclaration
in interface Tape
downstreamDeclaration
in class TapeBase
public String upstreamDeclarationExtern()
Tape
upstreamDeclarationExtern
in interface Tape
upstreamDeclarationExtern
in class TapeBase
public String upstreamDeclaration()
Tape
upstreamDeclaration
in interface Tape
upstreamDeclaration
in class TapeBase
public String topOfWorkIteration()
Tape
topOfWorkIteration
in interface Tape
topOfWorkIteration
in class TapeBase
public String upstreamCleanup()
Tape
upstreamCleanup
in interface Tape
upstreamCleanup
in class TapeBase
public String downstreamCleanup()
Tape
downstreamCleanup
in interface Tape
downstreamCleanup
in class TapeBase
public String pushPrefix()
Tape
pushPrefix
in interface Tape
pushPrefix
in class TapeBase
public String pushSuffix()
Tape
pushSuffix
in interface Tape
pushSuffix
in class TapeBase
public String popExpr()
Tape
popExpr
in interface Tape
popExpr
in class TapeBase
public String popExprNoCleanup()
Tape
popExprNoCleanup
in interface Tape
popExprNoCleanup
in class TapeBase
public String popExprCleanup()
Tape
popExprCleanup
in interface Tape
popExprCleanup
in class TapeBase
public String popNStmt(int N)
Tape
popNStmt
in interface Tape
popNStmt
in class TapeBase
public String peekPrefix()
Tape
peekPrefix
in interface Tape
peekPrefix
in class TapeBase
public String peekSuffix()
Tape
peekSuffix
in interface Tape
peekSuffix
in class TapeBase
public String pushbackInit(int NumberToPush)
pushbackInit
in interface Tape
pushbackInit
in class TapeBase
public String pushbackPrefix()
pushbackPrefix
in interface Tape
pushbackPrefix
in class TapeBase
public String pushbackSuffix()
pushbackSuffix
in interface Tape
pushbackSuffix
in class TapeBase
public String pushbackCleanup()
pushbackCleanup
in interface Tape
pushbackCleanup
in class TapeBase
public String assignPopToVar(String varName)
Tape
assignPopToVar
in interface Tape
assignPopToVar
in class TapeBase
public String assignPeekToVar(String varName, String offset)
Tape
assignPeekToVar
in interface Tape
assignPeekToVar
in class TapeBase
public String getTypeCastName()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |