mrkeyoor.com_
Thu 05 Nov 09:03 UTC
Open Source3 min read

Ladybird enables its JavaScript JIT, cutting benchmark instruction counts

Ladybird reports 53.5% fewer main-thread instructions in selected JavaScript workloads with its JIT enabled. That measures CPU work, not page-load speed.

Ladybird has enabled its optimizing JavaScript just-in-time compiler by default in builds that include it. The open-source browser's October 31 progress report describes the change for Linux and macOS on x86-64 and AArch64. For developers following the browser, the useful evidence is a comparison of the same build with compilation switched off and on, rather than a general promise of faster browsing.

The enabling change, merged October 11, reports 53.5% fewer main-thread instructions across selected JavaScript programs derived from Speedometer workloads. MrKeyoor has not built the browser or repeated these measurements. The figures below are the project's results.

Less CPU work needs a careful label

The pull request's comparison totals 390.31 billion instructions with the JIT off and 181.64 billion with it on. Results vary by program: the Svelte workload falls 39.2%, while the Lezer parsing workload falls 69.8%.

Those percentages measure instructions executed on the main thread. They don't establish equivalent reductions in elapsed time, energy use or complete page-load time. The author also reports that compilation on a background thread adds instructions equivalent to about 13% of the main thread's count. That extra work matters when interpreting the headline reduction: the table doesn't count all CPU activity in one total.

The interpreter remains a check on the compiler

According to the newsletter, LibJS records runtime types and object shapes, then uses those observations to optimize frequently executed code into machine code. During development, a fuzzer compared execution in the JIT with execution in the interpreter to find disagreements.

The default-on change says test-web, test-js and test262 returned the same results with the JIT enabled and disabled. It also documents LIBJS_JIT=off as the runtime switch for disabling compilation. Builds made with ENABLE_JS_JIT=OFF are unaffected. These checks provide a way to compare behavior, without establishing that every website will behave correctly.

Ladybird's October update still places its first alpha later in 2026. The next useful evidence will be repeatable timing and compatibility results on real browsing workloads as that release approaches. The current comparison supports a narrower conclusion: the compiler reduced main-thread instruction counts substantially in the programs the developers measured.

We reviewed this

  1. ladybird — our honest review

Sources

  1. This Month in Ladybird - October 2026
  2. LibJS: Turn the JIT on by default, pull request 12613