Compute the length of eol at compile time rather than run time.
Declaring constant GC shape data (gc_shape_t, offset_data_t, offset lists) as const.
This allows it to live in the text segment rather than the r/w data segment.
The ipow lookup table is constant.
The array offset sum table is also constant.
In fact, sometimes the lookup tables aren't needed at all.
Lifted the ipow and gas lookups into the mini-AST used for
index calculations, so that they can be constant-folded if
the lookup index is known at compile time. Then only emit the
tables if they are referenced by an expression.
Whoops, fix bug if subtracting a negative index
(which doesn't seem like it could ever happen, but still.)
Keep track of how many entries we need in the ipow table
and emit at least that many (and probably no extras).
Merge pull request #43 from wiml/constify

Constify