The register allocator pops from the unhandled-intervals and unhandled-sync-points heaps. If two live intervals share the same start slot, then they can be popped in either order leading to differently generated code. So instead use one heap (unhandled-min-heap) and both the start and end slot as the heap key to resolve tie-breakers |
||
---|---|---|
.. | ||
state-docs.factor | ||
state-tests.factor | ||
state.factor |