1 package edu.berkeley.fleet.loops;
2 import edu.berkeley.fleet.api.*;
7 * A CodeBag represents the instructions of a Context along with
8 * (compile-time) knowledge of where it resides. Consequently, it is
9 * meaningful to say "give me the sequence of instructions which will
10 * invoke this CodeBag".
12 public class CodeBag {
15 * SF works works @diff ok for non size ships
16 * Dispatch Method Crossings @inbox? docks? tail call? limit consumed
17 * ------------------------------------------------------------------------------------------
19 * Inline 0 Y N N Small None
21 * Inline literals 1 N Y Y Tiny None
24 * Send CBD to 2+ N Y Y None None (mem ship)
27 * Send token to 3+ Y Y Y None One Output Dock
28 * assistant outbox first
30 * Release from FIFO 2 Y Y Y Med 1x FIFO, but can be shared
35 * Given a Context, creates a CodeBag which will live in the
36 * Memory ship memoryShip at the address given by baseAddress.
38 public CodeBag(Context ctx, Ship memoryShip, long baseAddress) {