at.dms.kjc
Class SLIREmptyVisitor

java.lang.Object
  extended by at.dms.kjc.KjcEmptyVisitor
      extended by at.dms.kjc.SLIREmptyVisitor
All Implemented Interfaces:
Constants, KjcVisitor, SLIRVisitor
Direct Known Subclasses:
CheckForMethodCalls, CloningVisitor, CodeEstimate, DetectConst, FindTapeOps, FindVarDecls, HasSideEffects, ModState, PeekPopInHelper, PeekPopPushInHelper, PeekPopPushInHelper, PPAnalyze, ToCCommon, UseDefInfo, VariablesDefUse, VariablesUsed, VarsAssigned

public class SLIREmptyVisitor
extends KjcEmptyVisitor
implements Constants, SLIRVisitor

This visitor is for visiting statement-level constructs in the streamit IR. It visits both high-level constructs like SIRInitStatement that never appear in the LIR, as well as low-level constructs like LIRSetPeek that never appear in the high IR.


Field Summary
 
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
 
Fields inherited from interface at.dms.classfile.Constants
ACC_ABSTRACT, ACC_FINAL, ACC_INLINE, ACC_INTERFACE, ACC_NATIVE, ACC_PRIVATE, ACC_PROTECTED, ACC_PUBLIC, ACC_STATIC, ACC_STRICT, ACC_SUPER, ACC_SYNCHRONIZED, ACC_TRANSIENT, ACC_VOLATILE, ATT_CODE, ATT_CONSTANTVALUE, ATT_DEPRECATED, ATT_EXCEPTIONS, ATT_GENERIC, ATT_INNERCLASSES, ATT_LINENUMBERTABLE, ATT_LOCALVARIABLETABLE, ATT_SOURCEFILE, ATT_SYNTHETIC, CST_CLASS, CST_DOUBLE, CST_FIELD, CST_FLOAT, CST_INTEGER, CST_INTERFACEMETHOD, CST_LONG, CST_METHOD, CST_NAMEANDTYPE, CST_STRING, CST_UTF8, ENV_DEBUG_MODE, ENV_USE_CACHE, JAVA_MAGIC, JAVA_MAJOR, JAVA_MINOR, MAX_CODE_PER_METHOD, opc_aaload, opc_aastore, opc_aconst_null, opc_aload, opc_aload_0, opc_aload_1, opc_aload_2, opc_aload_3, opc_anewarray, opc_areturn, opc_arraylength, opc_astore, opc_astore_0, opc_astore_1, opc_astore_2, opc_astore_3, opc_athrow, opc_baload, opc_bastore, opc_bipush, opc_caload, opc_castore, opc_checkcast, opc_d2f, opc_d2i, opc_d2l, opc_dadd, opc_daload, opc_dastore, opc_dcmpg, opc_dcmpl, opc_dconst_0, opc_dconst_1, opc_ddiv, opc_dload, opc_dload_0, opc_dload_1, opc_dload_2, opc_dload_3, opc_dmul, opc_dneg, opc_drem, opc_dreturn, opc_dstore, opc_dstore_0, opc_dstore_1, opc_dstore_2, opc_dstore_3, opc_dsub, opc_dup, opc_dup_x1, opc_dup_x2, opc_dup2, opc_dup2_x1, opc_dup2_x2, opc_f2d, opc_f2i, opc_f2l, opc_fadd, opc_faload, opc_fastore, opc_fcmpg, opc_fcmpl, opc_fconst_0, opc_fconst_1, opc_fconst_2, opc_fdiv, opc_fload, opc_fload_0, opc_fload_1, opc_fload_2, opc_fload_3, opc_fmul, opc_fneg, opc_frem, opc_freturn, opc_fstore, opc_fstore_0, opc_fstore_1, opc_fstore_2, opc_fstore_3, opc_fsub, opc_getfield, opc_getstatic, opc_goto, opc_goto_w, opc_i2b, opc_i2c, opc_i2d, opc_i2f, opc_i2l, opc_i2s, opc_iadd, opc_iaload, opc_iand, opc_iastore, opc_iconst_0, opc_iconst_1, opc_iconst_2, opc_iconst_3, opc_iconst_4, opc_iconst_5, opc_iconst_m1, opc_idiv, opc_if_acmpeq, opc_if_acmpne, opc_if_icmpeq, opc_if_icmpge, opc_if_icmpgt, opc_if_icmple, opc_if_icmplt, opc_if_icmpne, opc_ifeq, opc_ifge, opc_ifgt, opc_ifle, opc_iflt, opc_ifne, opc_ifnonnull, opc_ifnull, opc_iinc, opc_iload, opc_iload_0, opc_iload_1, opc_iload_2, opc_iload_3, opc_imul, opc_ineg, opc_instanceof, opc_invokeinterface, opc_invokespecial, opc_invokestatic, opc_invokevirtual, opc_ior, opc_irem, opc_ireturn, opc_ishl, opc_ishr, opc_istore, opc_istore_0, opc_istore_1, opc_istore_2, opc_istore_3, opc_isub, opc_iushr, opc_ixor, opc_jsr, opc_jsr_w, opc_l2d, opc_l2f, opc_l2i, opc_ladd, opc_laload, opc_land, opc_lastore, opc_lcmp, opc_lconst_0, opc_lconst_1, opc_ldc, opc_ldc_w, opc_ldc2_w, opc_ldiv, opc_lload, opc_lload_0, opc_lload_1, opc_lload_2, opc_lload_3, opc_lmul, opc_lneg, opc_lookupswitch, opc_lor, opc_lrem, opc_lreturn, opc_lshl, opc_lshr, opc_lstore, opc_lstore_0, opc_lstore_1, opc_lstore_2, opc_lstore_3, opc_lsub, opc_lushr, opc_lxor, opc_monitorenter, opc_monitorexit, opc_multianewarray, opc_new, opc_newarray, opc_nop, opc_pop, opc_pop2, opc_putfield, opc_putstatic, opc_ret, opc_return, opc_saload, opc_sastore, opc_sipush, opc_swap, opc_tableswitch, opc_wide, opc_xxxunusedxxx, POO_ASCII_CONSTANT, POO_CLASS_CONSTANT, POO_DOUBLE_CONSTANT, POO_FLOAT_CONSTANT, POO_INTEGER_CONSTANT, POO_LONG_CONSTANT, POO_NAT_CONSTANT, POO_REF_CONSTANT, POO_STRING_CONSTANT, TYP_ADDRESS, TYP_DOUBLE, TYP_FLOAT, TYP_INT, TYP_LONG, TYP_REFERENCE, TYP_VOID
 
Constructor Summary
SLIREmptyVisitor()
           
 
Method Summary
 void visitCreatePortalExpression(SIRCreatePortal self)
           
 void visitDynamicToken(SIRDynamicToken self)
          Visits a dynamic token.
 void visitFileReader(LIRFileReader self)
          Visits a file reader.
 void visitFileWriter(LIRFileWriter self)
          Visits a file writer.
 void visitFunctionPointer(LIRFunctionPointer self, String name)
          Visits a function pointer.
 void visitIdentity(LIRIdentity self)
          Visits an identity creator.
 void visitInitStatement(SIRInitStatement self, SIRStream target)
          Visits an init statement.
 void visitInlineAssembly(InlineAssembly self, String[] asm, String[] input, String[] clobber)
          Visits InlineAssembly
 void visitInterfaceTable(SIRInterfaceTable self)
          Visits an interface table.
 void visitLatency(SIRLatency self)
          Visits a latency.
 void visitLatencyMax(SIRLatencyMax self)
          Visits a max latency.
 void visitLatencyRange(SIRLatencyRange self)
          Visits a latency range.
 void visitLatencySet(SIRLatencySet self)
          Visits a latency set.
 void visitMainFunction(LIRMainFunction self, String typeName, LIRFunctionPointer init, List<JStatement> initStatements)
          Visits a main function contents.
 void visitMarker(SIRMarker self)
          Visit SIRMarker.
 void visitMessageStatement(SIRMessageStatement self, JExpression portal, String iname, String ident, JExpression[] args, SIRLatency latency)
          Visits a message statement.
 void visitNode(LIRNode self)
          Visits an LIR node.
 void visitPeekExpression(SIRPeekExpression self, CType tapeType, JExpression arg)
          Visits a peek expression.
 void visitPopExpression(SIRPopExpression self, CType tapeType)
          Visits a pop expression.
 void visitPortal(SIRPortal self)
          Visits a message-receiving portal.
 void visitPrintStatement(SIRPrintStatement self, JExpression arg)
          Visits a print statement.
 void visitPushExpression(SIRPushExpression self, CType tapeType, JExpression arg)
          Visits a push expression.
 void visitRangeExpression(SIRRangeExpression self)
          Visits a range expression.
 void visitRegisterReceiver(LIRRegisterReceiver self, JExpression streamContext, SIRPortal portal, String childName, SIRInterfaceTable itable)
          Visits an LIR register-receiver statement.
 void visitRegReceiverStatement(SIRRegReceiverStatement self, JExpression portal, SIRStream receiver, JMethodDeclaration[] methods)
          Visits a register-receiver statement.
 void visitRegSenderStatement(SIRRegSenderStatement self, String portal, SIRLatency latency)
          Visits a register-sender statement.
 void visitSetBodyOfFeedback(LIRSetBodyOfFeedback self, JExpression streamContext, JExpression childContext, CType inputType, CType outputType, int inputSize, int outputSize)
          Visits a set body of feedback loop.
 void visitSetChild(LIRSetChild self, JExpression streamContext, String childType, String childName)
          Visits a child registration node.
 void visitSetDecode(LIRSetDecode self, JExpression streamContext, LIRFunctionPointer fp)
          Visits a decoder registration node.
 void visitSetDelay(LIRSetDelay self, JExpression data, JExpression streamContext, int delay, CType type, LIRFunctionPointer fp)
          Visits a feedback loop delay node.
 void visitSetEncode(LIRSetEncode self, JExpression streamContext, LIRFunctionPointer fp)
          Visits an encoder registration node.
 void visitSetJoiner(LIRSetJoiner self, JExpression streamContext, SIRJoinType type, int ways, int[] weights)
          Visits a joiner-setting node.
 void visitSetLoopOfFeedback(LIRSetLoopOfFeedback self, JExpression streamContext, JExpression childContext, CType inputType, CType outputType, int inputSize, int outputSize)
          Visits a set loop of feedback loop.
 void visitSetParallelStream(LIRSetParallelStream self, JExpression streamContext, JExpression childContext, int position, CType inputType, CType outputType, int inputSize, int outputSize)
          Visits a set a parallel stream.
 void visitSetPeek(LIRSetPeek self, JExpression streamContext, int peek)
          Visits a peek-rate-setting node.
 void visitSetPop(LIRSetPop self, JExpression streamContext, int pop)
          Visits a pop-rate-setting node.
 void visitSetPush(LIRSetPush self, JExpression streamContext, int push)
          Visits a push-rate-setting node.
 void visitSetSplitter(LIRSetSplitter self, JExpression streamContext, SIRSplitType type, int ways, int[] weights)
          Visits a splitter-setting node.
 void visitSetStreamType(LIRSetStreamType self, JExpression streamContext, LIRStreamType streamType)
          Visits a stream-type-setting node.
 void visitSetTape(LIRSetTape self, JExpression streamContext, JExpression srcStruct, JExpression dstStruct, CType type, int size)
          Visits a tape registerer.
 void visitSetWork(LIRSetWork self, JExpression streamContext, LIRFunctionPointer fn)
          Visits a work-function-setting node.
 void visitVectorLiteral(JVectorLiteral self, JLiteral scalar)
          Visits a vector literal
 void visitWorkEntry(LIRWorkEntry self)
          Visits a work function entry.
 void visitWorkExit(LIRWorkExit self)
          Visits a work function exit.
 
Methods inherited from class at.dms.kjc.KjcEmptyVisitor
visitArgs, visitArrayAccessExpression, visitArrayInitializer, visitArrayLengthExpression, visitAssignmentExpression, visitBinaryExpression, visitBitwiseComplementExpression, visitBitwiseExpression, visitBlockStatement, visitBooleanLiteral, visitBreakStatement, visitByteLiteral, visitCastExpression, visitCatchClause, visitCharLiteral, visitClassBody, visitClassDeclaration, visitClassExpression, visitClassImport, visitComment, visitComments, visitCompilationUnit, visitCompoundAssignmentExpression, visitCompoundStatement, visitCompoundStatement, visitConditionalExpression, visitConstructorCall, visitConstructorDeclaration, visitContinueStatement, visitDoStatement, visitDoubleLiteral, visitEmittedTextExpression, visitEmptyStatement, visitEqualityExpression, visitExpressionListStatement, visitExpressionStatement, visitFieldDeclaration, visitFieldExpression, visitFloatLiteral, visitFormalParameters, visitForStatement, visitIfStatement, visitInnerClassDeclaration, visitInstanceofExpression, visitInterfaceDeclaration, visitIntLiteral, visitJavadoc, visitLabeledStatement, visitLocalVariableExpression, visitLogicalComplementExpression, visitLongLiteral, visitMethodCallExpression, visitMethodDeclaration, visitNameExpression, visitNewArrayExpression, visitNullLiteral, visitPackageImport, visitPackageName, visitParenthesedExpression, visitPostfixExpression, visitPrefixExpression, visitQualifiedAnonymousCreation, visitQualifiedInstanceCreation, visitRelationalExpression, visitReturnStatement, visitShiftExpression, visitShortLiteral, visitStringLiteral, visitSuperExpression, visitSwitchGroup, visitSwitchLabel, visitSwitchStatement, visitSynchronizedStatement, visitThisExpression, visitThrowStatement, visitTryCatchStatement, visitTryFinallyStatement, visitTypeDeclarationStatement, visitTypeNameExpression, visitUnaryMinusExpression, visitUnaryPlusExpression, visitUnaryPromoteExpression, visitUnqualifiedAnonymousCreation, visitUnqualifiedInstanceCreation, visitVariableDeclarationStatement, visitVariableDefinition, visitWhileStatement
 
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.KjcVisitor
visitArrayAccessExpression, visitArrayInitializer, visitArrayLengthExpression, visitAssignmentExpression, visitBinaryExpression, visitBitwiseComplementExpression, visitBitwiseExpression, visitBlockStatement, visitBooleanLiteral, visitBreakStatement, visitByteLiteral, visitCastExpression, visitCatchClause, visitCharLiteral, visitClassBody, visitClassDeclaration, visitClassExpression, visitClassImport, visitComment, visitComments, visitCompilationUnit, visitCompoundAssignmentExpression, visitCompoundStatement, visitConditionalExpression, visitConstructorCall, visitConstructorDeclaration, visitContinueStatement, visitDoStatement, visitDoubleLiteral, visitEmittedTextExpression, visitEmptyStatement, visitEqualityExpression, visitExpressionListStatement, visitExpressionStatement, visitFieldDeclaration, visitFieldExpression, visitFloatLiteral, visitFormalParameters, visitForStatement, visitIfStatement, visitInnerClassDeclaration, visitInstanceofExpression, visitInterfaceDeclaration, visitIntLiteral, visitJavadoc, visitLabeledStatement, visitLocalVariableExpression, visitLogicalComplementExpression, visitLongLiteral, visitMethodCallExpression, visitMethodDeclaration, visitNameExpression, visitNewArrayExpression, visitNullLiteral, visitPackageImport, visitPackageName, visitParenthesedExpression, visitPostfixExpression, visitPrefixExpression, visitQualifiedAnonymousCreation, visitQualifiedInstanceCreation, visitRelationalExpression, visitReturnStatement, visitShiftExpression, visitShortLiteral, visitStringLiteral, visitSuperExpression, visitSwitchGroup, visitSwitchLabel, visitSwitchStatement, visitSynchronizedStatement, visitThisExpression, visitThrowStatement, visitTryCatchStatement, visitTryFinallyStatement, visitTypeDeclarationStatement, visitTypeNameExpression, visitUnaryMinusExpression, visitUnaryPlusExpression, visitUnaryPromoteExpression, visitUnqualifiedAnonymousCreation, visitUnqualifiedInstanceCreation, visitVariableDeclarationStatement, visitVariableDefinition, visitWhileStatement
 

Constructor Detail

SLIREmptyVisitor

public SLIREmptyVisitor()
Method Detail

visitInitStatement

public void visitInitStatement(SIRInitStatement self,
                               SIRStream target)
Visits an init statement.

Specified by:
visitInitStatement in interface SLIRVisitor

visitInterfaceTable

public void visitInterfaceTable(SIRInterfaceTable self)
Visits an interface table.

Specified by:
visitInterfaceTable in interface SLIRVisitor

visitLatency

public void visitLatency(SIRLatency self)
Visits a latency.

Specified by:
visitLatency in interface SLIRVisitor

visitLatencyMax

public void visitLatencyMax(SIRLatencyMax self)
Visits a max latency.

Specified by:
visitLatencyMax in interface SLIRVisitor

visitLatencyRange

public void visitLatencyRange(SIRLatencyRange self)
Visits a latency range.

Specified by:
visitLatencyRange in interface SLIRVisitor

visitLatencySet

public void visitLatencySet(SIRLatencySet self)
Visits a latency set.

Specified by:
visitLatencySet in interface SLIRVisitor

visitCreatePortalExpression

public void visitCreatePortalExpression(SIRCreatePortal self)
Specified by:
visitCreatePortalExpression in interface SLIRVisitor

visitMessageStatement

public void visitMessageStatement(SIRMessageStatement self,
                                  JExpression portal,
                                  String iname,
                                  String ident,
                                  JExpression[] args,
                                  SIRLatency latency)
Visits a message statement.

Specified by:
visitMessageStatement in interface SLIRVisitor

visitRangeExpression

public void visitRangeExpression(SIRRangeExpression self)
Visits a range expression.

Specified by:
visitRangeExpression in interface SLIRVisitor

visitDynamicToken

public void visitDynamicToken(SIRDynamicToken self)
Visits a dynamic token.

Specified by:
visitDynamicToken in interface SLIRVisitor

visitPeekExpression

public void visitPeekExpression(SIRPeekExpression self,
                                CType tapeType,
                                JExpression arg)
Visits a peek expression.

Specified by:
visitPeekExpression in interface SLIRVisitor

visitPopExpression

public void visitPopExpression(SIRPopExpression self,
                               CType tapeType)
Visits a pop expression.

Specified by:
visitPopExpression in interface SLIRVisitor

visitPortal

public void visitPortal(SIRPortal self)
Visits a message-receiving portal.

Specified by:
visitPortal in interface SLIRVisitor

visitPrintStatement

public void visitPrintStatement(SIRPrintStatement self,
                                JExpression arg)
Visits a print statement.

Specified by:
visitPrintStatement in interface SLIRVisitor

visitPushExpression

public void visitPushExpression(SIRPushExpression self,
                                CType tapeType,
                                JExpression arg)
Visits a push expression.

Specified by:
visitPushExpression in interface SLIRVisitor

visitRegReceiverStatement

public void visitRegReceiverStatement(SIRRegReceiverStatement self,
                                      JExpression portal,
                                      SIRStream receiver,
                                      JMethodDeclaration[] methods)
Visits a register-receiver statement.

Specified by:
visitRegReceiverStatement in interface SLIRVisitor

visitRegSenderStatement

public void visitRegSenderStatement(SIRRegSenderStatement self,
                                    String portal,
                                    SIRLatency latency)
Visits a register-sender statement.

Specified by:
visitRegSenderStatement in interface SLIRVisitor

visitMarker

public void visitMarker(SIRMarker self)
Visit SIRMarker.

Specified by:
visitMarker in interface SLIRVisitor

visitFunctionPointer

public void visitFunctionPointer(LIRFunctionPointer self,
                                 String name)
Visits a function pointer.

Specified by:
visitFunctionPointer in interface SLIRVisitor

visitNode

public void visitNode(LIRNode self)
Visits an LIR node.

Specified by:
visitNode in interface SLIRVisitor

visitRegisterReceiver

public void visitRegisterReceiver(LIRRegisterReceiver self,
                                  JExpression streamContext,
                                  SIRPortal portal,
                                  String childName,
                                  SIRInterfaceTable itable)
Visits an LIR register-receiver statement.

Specified by:
visitRegisterReceiver in interface SLIRVisitor

visitSetChild

public void visitSetChild(LIRSetChild self,
                          JExpression streamContext,
                          String childType,
                          String childName)
Visits a child registration node.

Specified by:
visitSetChild in interface SLIRVisitor

visitSetDecode

public void visitSetDecode(LIRSetDecode self,
                           JExpression streamContext,
                           LIRFunctionPointer fp)
Visits a decoder registration node.

Specified by:
visitSetDecode in interface SLIRVisitor

visitSetDelay

public void visitSetDelay(LIRSetDelay self,
                          JExpression data,
                          JExpression streamContext,
                          int delay,
                          CType type,
                          LIRFunctionPointer fp)
Visits a feedback loop delay node.

Specified by:
visitSetDelay in interface SLIRVisitor

visitFileReader

public void visitFileReader(LIRFileReader self)
Visits a file reader.

Specified by:
visitFileReader in interface SLIRVisitor

visitFileWriter

public void visitFileWriter(LIRFileWriter self)
Visits a file writer.

Specified by:
visitFileWriter in interface SLIRVisitor

visitIdentity

public void visitIdentity(LIRIdentity self)
Visits an identity creator.

Specified by:
visitIdentity in interface SLIRVisitor

visitSetEncode

public void visitSetEncode(LIRSetEncode self,
                           JExpression streamContext,
                           LIRFunctionPointer fp)
Visits an encoder registration node.

Specified by:
visitSetEncode in interface SLIRVisitor

visitSetJoiner

public void visitSetJoiner(LIRSetJoiner self,
                           JExpression streamContext,
                           SIRJoinType type,
                           int ways,
                           int[] weights)
Visits a joiner-setting node.

Specified by:
visitSetJoiner in interface SLIRVisitor

visitSetPeek

public void visitSetPeek(LIRSetPeek self,
                         JExpression streamContext,
                         int peek)
Visits a peek-rate-setting node.

Specified by:
visitSetPeek in interface SLIRVisitor

visitSetPop

public void visitSetPop(LIRSetPop self,
                        JExpression streamContext,
                        int pop)
Visits a pop-rate-setting node.

Specified by:
visitSetPop in interface SLIRVisitor

visitSetPush

public void visitSetPush(LIRSetPush self,
                         JExpression streamContext,
                         int push)
Visits a push-rate-setting node.

Specified by:
visitSetPush in interface SLIRVisitor

visitSetSplitter

public void visitSetSplitter(LIRSetSplitter self,
                             JExpression streamContext,
                             SIRSplitType type,
                             int ways,
                             int[] weights)
Visits a splitter-setting node.

Specified by:
visitSetSplitter in interface SLIRVisitor

visitSetStreamType

public void visitSetStreamType(LIRSetStreamType self,
                               JExpression streamContext,
                               LIRStreamType streamType)
Visits a stream-type-setting node.

Specified by:
visitSetStreamType in interface SLIRVisitor

visitSetWork

public void visitSetWork(LIRSetWork self,
                         JExpression streamContext,
                         LIRFunctionPointer fn)
Visits a work-function-setting node.

Specified by:
visitSetWork in interface SLIRVisitor

visitSetTape

public void visitSetTape(LIRSetTape self,
                         JExpression streamContext,
                         JExpression srcStruct,
                         JExpression dstStruct,
                         CType type,
                         int size)
Visits a tape registerer.

Specified by:
visitSetTape in interface SLIRVisitor

visitMainFunction

public void visitMainFunction(LIRMainFunction self,
                              String typeName,
                              LIRFunctionPointer init,
                              List<JStatement> initStatements)
Visits a main function contents.

Specified by:
visitMainFunction in interface SLIRVisitor

visitSetBodyOfFeedback

public void visitSetBodyOfFeedback(LIRSetBodyOfFeedback self,
                                   JExpression streamContext,
                                   JExpression childContext,
                                   CType inputType,
                                   CType outputType,
                                   int inputSize,
                                   int outputSize)
Visits a set body of feedback loop.

Specified by:
visitSetBodyOfFeedback in interface SLIRVisitor

visitSetLoopOfFeedback

public void visitSetLoopOfFeedback(LIRSetLoopOfFeedback self,
                                   JExpression streamContext,
                                   JExpression childContext,
                                   CType inputType,
                                   CType outputType,
                                   int inputSize,
                                   int outputSize)
Visits a set loop of feedback loop.

Specified by:
visitSetLoopOfFeedback in interface SLIRVisitor

visitSetParallelStream

public void visitSetParallelStream(LIRSetParallelStream self,
                                   JExpression streamContext,
                                   JExpression childContext,
                                   int position,
                                   CType inputType,
                                   CType outputType,
                                   int inputSize,
                                   int outputSize)
Visits a set a parallel stream.

Specified by:
visitSetParallelStream in interface SLIRVisitor

visitWorkEntry

public void visitWorkEntry(LIRWorkEntry self)
Visits a work function entry.

Specified by:
visitWorkEntry in interface SLIRVisitor

visitWorkExit

public void visitWorkExit(LIRWorkExit self)
Visits a work function exit.

Specified by:
visitWorkExit in interface SLIRVisitor

visitInlineAssembly

public void visitInlineAssembly(InlineAssembly self,
                                String[] asm,
                                String[] input,
                                String[] clobber)
Visits InlineAssembly


visitVectorLiteral

public void visitVectorLiteral(JVectorLiteral self,
                               JLiteral scalar)
Visits a vector literal

Specified by:
visitVectorLiteral in interface SLIRVisitor