Posted by: Chris Barylick
Date: Friday, March 2nd, 2012, 08:22
Category: iOS, News, Software
You can’t argue that WebKit’s been good for Apple and iOS in general.
“JSC will now will start by executing code in LLInt and will only tier up to the old JIT after the code is proven hot,” a change report on the new interpreter describes.
“LLInt is written in a modified form of our macro assembly. This new macro assembly is compiled by an offline assembler (see offlineasm), which implements many modern conveniences such as a Turing-complete CPS-based macro language and direct access to relevant C++ type information (basically offsets of fields and sizes of structs/classes).”
The new interpreter “is 2-2.5x faster than our old interpreter on SunSpider, V8, and Kraken [benchmarks],” the report states. “With triple-tiering turned on [to allow the LLInt to interpret code], we’re neutral on SunSpider, V8, and Kraken, but appear to get a double-digit improvement on real-world websites due to a huge reduction in the amount of JIT’ing.”
Stay tuned for additional details as they become available.