Encoding instructions in packets


I am pretty inexperienced with the MC layer and am looking at encoding
instructions for a machine with an unusual encoding scheme. Each group
of three instructions is encoded in a 64-bit packet along with a handful
of extra control bits. These are not VLIW packets but simply the way
individual instructions are encoded. Packets may straddle basic block
boundaries and control may exit or enter a packet at any of its
instructions. In other words, it is purely an encoding scheme.

To throw an even bigger wrench into things, each instruction is not a
byte-multiple number of bits and the three instructions aren't encoded
in order. The first and thirds instructions are contiguous but the
third instruction is inserted in the middle of the second instruction
such that it splits it. So it looks something like this: