Okay, I just added a big chunk of code to imcc.  The code does two main
things:

- changes imcc syntax to disallow newlines within ops.  You can
  still have all the newlines you want between ops and after labels, but
  this:

    if $P1
        goto label

  will no longer work.  Since no one appeared to be emitting imcc code
  like this, it shouldn't be missed.

- Makes some significant changes to register allocation and spilling.
  For the details, you'll have to ask Leo.

The upshot is that none of the tests behave worse, and some behave better.
If anyone besides languages/{cola,perl6} is using imcc, please let me
know.

/s

Reply via email to