|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectat.dms.kjc.KjcEmptyVisitor
at.dms.kjc.SLIREmptyVisitor
at.dms.kjc.common.ToCCommon
at.dms.kjc.common.ToC
at.dms.kjc.raw.FlatIRToC
public class FlatIRToC
This class dumps the tile code for each filter into a file based on the tile number assigned
Field Summary | |
---|---|
static String |
ARGHELPER_COUNTER
|
boolean |
debug
|
static String |
MAINMETHOD_ARGC
|
static String |
MAINMETHOD_ARGV
|
static String |
MAINMETHOD_COUNTER
|
Fields inherited from class at.dms.kjc.common.ToC |
---|
isInit, method |
Fields inherited from class at.dms.kjc.common.ToCCommon |
---|
alternatePrintsForTiming, hasBoolType, lastLeft, p, printPostfixMap, printPrefixMap |
Fields inherited from interface at.dms.kjc.Constants |
---|
CMP_VERSION, JAV_CLASS, JAV_CLONE, JAV_CLONEABLE, JAV_CONSTRUCTOR, JAV_ERROR, JAV_EXCEPTION, JAV_INIT, JAV_LENGTH, JAV_NAME_SEPARATOR, JAV_OBJECT, JAV_OUTER_THIS, JAV_RUNTIME, JAV_RUNTIME_EXCEPTION, JAV_STATIC_INIT, JAV_STRING, JAV_STRINGBUFFER, JAV_THIS, JAV_THROWABLE, OPE_BAND, OPE_BNOT, OPE_BOR, OPE_BSR, OPE_BXOR, OPE_EQ, OPE_GE, OPE_GT, OPE_LE, OPE_LNOT, OPE_LT, OPE_MINUS, OPE_NE, OPE_PERCENT, OPE_PLUS, OPE_POSTDEC, OPE_POSTINC, OPE_PREDEC, OPE_PREINC, OPE_SIMPLE, OPE_SL, OPE_SLASH, OPE_SR, OPE_STAR, TID_ARRAY, TID_BIT, TID_BOOLEAN, TID_BYTE, TID_CHAR, TID_CLASS, TID_DOUBLE, TID_FLOAT, TID_INT, TID_LONG, TID_SHORT, TID_VECTOR, TID_VOID, VECTOR_EMPTY |
Constructor Summary | |
---|---|
FlatIRToC()
|
|
FlatIRToC(CodegenPrintWriter p)
|
|
FlatIRToC(SIRFilter f)
|
Method Summary | |
---|---|
static void |
generateCode(FlatNode node)
|
void |
postVisitFeedbackLoop(SIRFeedbackLoop self,
SIRFeedbackLoopIter iter)
|
void |
postVisitPipeline(SIRPipeline self,
SIRPipelineIter iter)
POST-VISITS |
void |
postVisitSplitJoin(SIRSplitJoin self,
SIRSplitJoinIter iter)
|
void |
preVisitFeedbackLoop(SIRFeedbackLoop self,
SIRFeedbackLoopIter iter)
|
void |
preVisitPipeline(SIRPipeline self,
SIRPipelineIter iter)
PRE-VISITS |
void |
preVisitSplitJoin(SIRSplitJoin self,
SIRSplitJoinIter iter)
|
void |
pushClass(SIRPushExpression self,
CType tapeType,
JExpression val)
|
void |
visitAssignmentExpression(JAssignmentExpression self,
JExpression left,
JExpression right)
prints an assignment expression |
void |
visitDynamicToken(SIRDynamicToken self)
Visits a dynamic token. |
void |
visitEmptyStatement(JEmptyStatement self)
prints a empty statement |
void |
visitFilter(SIRFilter self,
SIRFilterIter iter)
PLAIN-VISITS |
void |
visitForStatement(JForStatement self,
JStatement init,
JExpression cond,
JStatement incr,
JStatement body)
prints a for statement |
void |
visitMethodCallExpression(JMethodCallExpression self,
JExpression prefix,
String ident,
JExpression[] args)
prints a method call expression |
void |
visitMethodDeclaration(JMethodDeclaration self,
int modifiers,
CType returnType,
String ident,
JFormalParameter[] parameters,
CClassType[] exceptions,
JBlock body)
prints a method declaration |
void |
visitPeekExpression(SIRPeekExpression self,
CType tapeType,
JExpression num)
Visits a peek expression. |
void |
visitPhasedFilter(SIRPhasedFilter self,
SIRPhasedFilterIter iter)
|
void |
visitPopExpression(SIRPopExpression self,
CType tapeType)
Visits a pop expression. |
void |
visitPrintStatement(SIRPrintStatement self,
JExpression exp)
Process a Print statment, table driven to allow several backends Deals with the problem of string concatenation in Java not translating to our output languages C or C++ |
void |
visitPushExpression(SIRPushExpression self,
CType tapeType,
JExpression val)
Visits a push expression. |
void |
visitRangeExpression(SIRRangeExpression self)
Visits a range expression. |
void |
visitRegReceiverStatement(SIRRegReceiverStatement self,
JExpression portal,
SIRStream receiver,
JMethodDeclaration[] methods)
Visits a register-receiver statement. |
void |
visitRegSenderStatement(SIRRegSenderStatement self,
String fn,
SIRLatency latency)
Visits a register-sender statement. |
void |
visitVariableDefinition(JVariableDefinition self,
int modifiers,
CType type,
String ident,
JExpression expr)
prints a variable declaration statement |
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.common.CodeGenerator |
---|
getPrinter |
Field Detail |
---|
public boolean debug
public static String MAINMETHOD_ARGC
public static String MAINMETHOD_ARGV
public static String MAINMETHOD_COUNTER
public static String ARGHELPER_COUNTER
Constructor Detail |
---|
public FlatIRToC()
public FlatIRToC(CodegenPrintWriter p)
public FlatIRToC(SIRFilter f)
Method Detail |
---|
public static void generateCode(FlatNode node)
public void visitFilter(SIRFilter self, SIRFilterIter iter)
StreamVisitor
visitFilter
in interface StreamVisitor
public void visitPhasedFilter(SIRPhasedFilter self, SIRPhasedFilterIter iter)
visitPhasedFilter
in interface StreamVisitor
public void visitForStatement(JForStatement self, JStatement init, JExpression cond, JStatement incr, JStatement body)
visitForStatement
in interface KjcVisitor
visitForStatement
in class ToCCommon
public void visitEmptyStatement(JEmptyStatement self)
visitEmptyStatement
in interface KjcVisitor
visitEmptyStatement
in class ToCCommon
public void visitMethodDeclaration(JMethodDeclaration self, int modifiers, CType returnType, String ident, JFormalParameter[] parameters, CClassType[] exceptions, JBlock body)
visitMethodDeclaration
in interface KjcVisitor
visitMethodDeclaration
in class KjcEmptyVisitor
public void visitVariableDefinition(JVariableDefinition self, int modifiers, CType type, String ident, JExpression expr)
visitVariableDefinition
in interface KjcVisitor
visitVariableDefinition
in class KjcEmptyVisitor
public void visitAssignmentExpression(JAssignmentExpression self, JExpression left, JExpression right)
visitAssignmentExpression
in interface KjcVisitor
visitAssignmentExpression
in class KjcEmptyVisitor
public void visitMethodCallExpression(JMethodCallExpression self, JExpression prefix, String ident, JExpression[] args)
visitMethodCallExpression
in interface KjcVisitor
visitMethodCallExpression
in class KjcEmptyVisitor
public void visitDynamicToken(SIRDynamicToken self)
SLIREmptyVisitor
visitDynamicToken
in interface SLIRVisitor
visitDynamicToken
in class SLIREmptyVisitor
public void visitRangeExpression(SIRRangeExpression self)
SLIREmptyVisitor
visitRangeExpression
in interface SLIRVisitor
visitRangeExpression
in class SLIREmptyVisitor
public void visitPeekExpression(SIRPeekExpression self, CType tapeType, JExpression num)
SLIREmptyVisitor
visitPeekExpression
in interface SLIRVisitor
visitPeekExpression
in class SLIREmptyVisitor
public void visitPopExpression(SIRPopExpression self, CType tapeType)
SLIREmptyVisitor
visitPopExpression
in interface SLIRVisitor
visitPopExpression
in class SLIREmptyVisitor
public void visitPrintStatement(SIRPrintStatement self, JExpression exp)
ToCCommon
visitPrintStatement
in interface SLIRVisitor
visitPrintStatement
in class ToCCommon
public void pushClass(SIRPushExpression self, CType tapeType, JExpression val)
public void visitPushExpression(SIRPushExpression self, CType tapeType, JExpression val)
SLIREmptyVisitor
visitPushExpression
in interface SLIRVisitor
visitPushExpression
in class SLIREmptyVisitor
public void visitRegReceiverStatement(SIRRegReceiverStatement self, JExpression portal, SIRStream receiver, JMethodDeclaration[] methods)
SLIREmptyVisitor
visitRegReceiverStatement
in interface SLIRVisitor
visitRegReceiverStatement
in class SLIREmptyVisitor
public void visitRegSenderStatement(SIRRegSenderStatement self, String fn, SIRLatency latency)
SLIREmptyVisitor
visitRegSenderStatement
in interface SLIRVisitor
visitRegSenderStatement
in class SLIREmptyVisitor
public void preVisitPipeline(SIRPipeline self, SIRPipelineIter iter)
StreamVisitor
preVisitPipeline
in interface StreamVisitor
public void preVisitSplitJoin(SIRSplitJoin self, SIRSplitJoinIter iter)
preVisitSplitJoin
in interface StreamVisitor
public void preVisitFeedbackLoop(SIRFeedbackLoop self, SIRFeedbackLoopIter iter)
preVisitFeedbackLoop
in interface StreamVisitor
public void postVisitPipeline(SIRPipeline self, SIRPipelineIter iter)
postVisitPipeline
in interface StreamVisitor
public void postVisitSplitJoin(SIRSplitJoin self, SIRSplitJoinIter iter)
postVisitSplitJoin
in interface StreamVisitor
public void postVisitFeedbackLoop(SIRFeedbackLoop self, SIRFeedbackLoopIter iter)
postVisitFeedbackLoop
in interface StreamVisitor
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |