Fork me on GitHub

Improved JIT compilation

Work is currently in progress to improve the quality of code generated by the JIT compiler.

Better optimization around closures

Today's optimizer does a poor job of, and has an inability to inline, first class functions and closures. Recent work has started to collect the data needed to do better; optimizations to exploit it are still to come.

Native reference related optimizations

Optimize away unrequired native reference takes and dereferences, including over inlining boundaries.

Better JIT-compilation of big integer operations

The not-actually-big-integer case can be inlined into the generated machine code, and various indirections can be eliminated.

Escape Analysis

Implement escape analysis at bytecode specialization time.

Trace JIT

Augment our existing callframe-level JIT, which already supports inlining, with a trace JIT. The trace JIT would be used for loops, replacing the current use of OSR (perhaps OSR remains as a fallback).