Why xor eax, eax?

Pop Goes the Population Count?

ARM's Barrel Shifter Tricks

Multiplying our way out of division

Unswitching loops for fun and profit

You can't fool the optimizer

Addressing the adding situation

AoCO 2025: Division

Advent of Compiler Optimisations 2025

Unrolling Loops

How Compiler Explorer Works in 2025

Compiler Explorer Cost Transparency

Compiler Explorer and the promise of URLs that last forever

AI coding: parallels with the Semiconductor Revolution

Happy 10th Birthday Compiler Explorer

C++ and passing by value

How it works: Compiler Explorer

The Ivy Bridge and Haswell BTB

Traits and trait objects

The runtime performance of Rust for a simple path tracer

Two commutes with Rust

An objected-oriented BASIC on ARM (2007)

Elite's crazy tokenized string routine

Forcing code out of line in GCC and C++11

Debugging 8-bit demos on an emulator

Emulating a 6502 with cycle-perfect timing

Emulating a BBC Microcomputer in Javascript