This vocab contains words for managing live intervals. The main word is compute-live-intervals which goes through the cfg and returns a sequence of live-interval-state instances which encodes all liveness information for it.

Liveness classes and constructors:
<live-interval> ( vreg -- live-interval )

live-interval-state

vreg-use


Recording liveness info:
compute-live-intervals* ( insn -- )

record-def ( vreg n spill-slot? -- )

record-use ( vreg n spill-slot? -- )

record-temp ( vreg n -- )


Sync point handling:
cfg>sync-points ( cfg -- sync-points )

clobber-insn

hairy-clobber-insn

insn>sync-point ( insn -- sync-point/f )


Dynamic variables:
from

live-intervals

to