aff99fd06afeb5d7fd5aecc92a4b383ef097b7b8
[fleet.git] / src / edu / berkeley / fleet / dataflow / PunctuatorNode.java
1 package edu.berkeley.fleet.dataflow;
2 import java.util.*;
3 import edu.berkeley.fleet.loops.*;
4 import edu.berkeley.fleet.api.*;
5
6 public class PunctuatorNode extends Node {
7     private final long    punc;
8     private final Ship    ship  = dfg.pool.allocateShip("Counter");
9     public  final OutPort out   = new DockOutPort("out", ship.getDock("out"));
10     public  final InPort  val   = new DockInPort("in1",  ship.getDock("in1"));
11     public  final InPort  op    = new DockInPort("inOp", ship.getDock("inOp"), 0, new BitVector[] {
12             ship.getDock("inOp").getConstant("PASS_C2_V1"),
13             ship.getDock("inOp").getConstant("PASS_C2_V2") } );
14     public  final InPort  count;
15     public PunctuatorNode(DataFlowGraph dfg, long punc) {
16         super(dfg);
17         this.punc = punc;
18         this.count = new DockInPort("in2",  ship.getDock("in2"), 0, new BitVector[] { null, bv(1), bv(punc) });
19     }
20 }