add more ship files
[fleet.git] / ships / Shift.ship
1 ship: Shift
2
3 == Ports ===========================================================
4 data in:  val
5 data in:  shamt
6 data out: out
7
8 == Constants ========================================================
9 == TeX ==============================================================
10 == Fleeterpreter ====================================================
11     public void service() {
12         if (box_val.dataReadyForShip() && box_shamt.dataReadyForShip()) {
13             int val = box_val.removeDataForShip();
14             int shamt = box_shamt.removeDataForShip();
15             if (shamt < 0) val = val >> (-1 * shamt);
16             else           val = val << shamt;
17             box_out.addDataFromShip(val);
18         }
19     }
20
21 == ArchSim ==============================================================
22 == FPGA ==============================================================
23
24 == Contributors =========================================================
25 Adam Megacz <megacz@cs.berkeley.edu>