startIn

fun startIn(    generator: L2Generator,     generatePhis: Boolean = true,     regenerator: L2Regenerator? = null)

Having completed code generation in each of its predecessors, prepare this block for its own code generation.

Examine the predecessorEdges to determine if phi operations need to be created to merge differences in the slot-to-register arrays. These will eventually turn into move instructions along the incoming edges, which will usually end up with the same register color on both ends of the move, allowing it to be eliminated.

If phi operations are added, their target registers will be written to the appropriate slotRegisters of the provided L1Translator.

Parameters

generator

The L2Generator generating instructions.

generatePhis

Whether to automatically generate phi instructions if there are multiple incoming edges with different registers associated with the same semantic values.

regenerator

The optional L2Regenerator to use.