Recently I got to land a patch which touches a cool optimization, that I had to really make sure I understood deeply. As a result, I wrote a huge commit message. I’d like to expand that message a touch here and turn it into a nice blog post.| SpiderMonkey JavaScript/WebAssembly Engine
In my previous post “Chrome Browser Exploitation, Part 1: Introduction to V8 and JavaScript Internals”, we took our first deep dive into the world of browser exploitation by covering a few complex topics that were necessary for fundamental knowledge. We mainly covered topics on how JavaScript and V8 worked under the hood by exploring what objects, maps and shapes were, how these objects were structured in memory, and we also covered some basic memory optimizations such as pointer tagging ...| Jack Hacks
Frequently updated reading list for core concepts required to exploit WebKit and JSC| zon8.re
This article describes how V8 chooses optimal in-memory representations for various JavaScript values, and how that impacts the shape machinery — all of which helps explain a recent V8 performance cliff in React core.| v8.dev
The JavaScript Internationalization API is growing, and its V8 implementation is getting faster!| www.recompiled.dev
This article explains how a deoptimisation can occur as a side effect in Javascript, especially in v8.| www.recompiled.dev
This article describes some key fundamentals that are common to all JavaScript engines — and not just V8, the engine the authors (Benedikt and Mathias) work on. As a JavaScript developer, having a deeper understanding of how JavaScript engines work helps you reason about the performance characteristics of your code.| mathiasbynens.be
Personal website of Benedikt Meurer, JavaScript Engine Hacker and Programming Language Enthusiast.| benediktmeurer.de