The Exupery 0.14 release is in final testing now. The major improvement is to register allocator performance. The register allocator should also produce slightly better code due to the changes. There's also now support for cascades, the last major missing language feature.
The main gain in this release is register allocation is much faster on large methods. Now it takes about 50% of the compilation time for all methods, it used to take almost all the time for large methods. This means compilation time is now roughly linear with method size.
The major improvements for 0.14 were done by mid April. The release has been delayed due to upgrading to 3.10. Exupery's testing uncovered two bugs in 3.10 and four tests were failing due to changes in the base image.
Two tests have been deleted as they were trying to compile methods that have been removed. Those methods were involved in bugs found by the stress test. There should be unit tests that cover any changes to the compiler required to fix them.
Two tests were failing because of cascades. Cascades have been added so they pass again. The other option was to either delete the tests or release with failing tests on 3.10.
All that's left to do before releasing is run the stress test again and do some Seaside development with Exupery running. Both were done successfully before upgrading to the latest squeak-dev 3.10 images.
Bryce
exupery@lists.squeakfoundation.org