Browser hacking: Lets JIT the Kraken JS benchmark! (partially) @awesomekling
Browser hacking: Lets JIT the Kraken JS benchmark! (partially)  @awesomekling
Uploaded October 2023 | Updated September 2026, 2 weeks ago
Let's churn out JIT code until something runs! :^)

Follow me on X: https://x.com/awesomekling
Sponsor me on GitHub: github.com/sponsors/awesomekling
Support me on Patreon: patreon.com/awesomekling
Donate via PayPal: paypal.me/awesomekling

Discord: discord.gg/serenityos
Merch: store.serenityos.org

SerenityOS is a new operating system that we're building from scratch. serenityos.org
Ladybird is a cross-platform web browser, also part of the SerenityOS project. :^)

00:00 Intro / Task of the day
02:05 Compiling each function only once
08:05 Printing JIT success
10:00 Looking at what instructions to implement
10:35 ToNumeric
14:05 ResolveThisBinding
19:08 GetByValue
27:08 Decrement
29:16 GetGlobal
35:59 PutById
47:14 Discovering a register collision
48:20 Preserving callee-saved registers
50:57 Back to the register collision
53:03 PutById, continued
55:37 NewObject
58:30 Did we improve performance?
1:01:45 Call
1:19:09 Not (and other unary instructions)
1:23:45 Checking coverage on other tests so far
1:25:41 Reflections / Outro
Browser hacking: Lets JIT the Kraken JS benchmark! (partially)OS hacking: Weaning some syscalls off of the big process lockFIXME Roulette: Old hacks in reentrant passwd functionsLadybird browser update (October 2023)SerenityOS Office Hours / Q&A (2022-12-23)SerenityOS Office Hours / Q&A (2022-07-15)Ladybird browser update (May 2023)Lets write some Jakt: Toy HTML DOM and CSS selector evaluationSerenityOS Office Hours / Lite Version (2022-09-30)Browser hacking: Lets work on not sucking at Octane/zlib.jsBrowser hacking: Making a dumb loop go fast in the JIT!OS hacking: A recently open files section for app menus
Andreas Kling |

Browser hacking: Let's JIT the Kraken JS benchmark! (partially)

SHARE TO X SHARE TO REDDIT SHARE TO FACEBOOK WALLPAPER