LmCast :: Stay tuned in

Advent of Compiler Optimisations 2025

Recorded: Dec. 3, 2025, 3:04 a.m.

Original Summarized

Introducing the Advent of Compiler Optimisations 2025 — Matt Godbolt’s blog

Matt Godbolt's blog

Menu

Tags

AI
Amusing Stuff
AoCO2025
Blog
Coding
Compiler Explorer
Emulation
Games
Microarchitecture
New Zealand Trip
Personal
Python
Rants
Rust
WeeBox Project

Archive

AI
Amusing Stuff
AoCO2025
Blog
Coding
Compiler Explorer
Emulation
Games
Microarchitecture
New Zealand Trip
Personal
Python
Rants
Rust
WeeBox Project

About

About me
Contact me

Introducing the Advent of Compiler Optimisations 2025
Today I’m announcing a project that’s been in the making for around a year. As my time off draws to a close, I’ve been working on an “Advent of” type project, to be released one a day from the 1st of December until the 25th.
This December will be the Advent of Compiler Optimisations: I’ll release one blog post and video each day, each detailing a fun and interesting C or C++ optimisation that your compiler can do. I’ll go into the details of when it applies, how to interpret the assembly, and perhaps as importantly, when it doesn’t apply.
I’ll be covering some very low-level, architecture-specific tricks as well as larger, more high-level optimisations. While I mostly cover x86-64, I do touch on 64-bit and 32-bit ARM as well.
You can follow along by watching the AoCO2025 tag on this blog, subscribing to me on YouTube, or following the YouTube playlist.

It’s been a colossal amount of work, but a lot of fun too. I hope you enjoy learning how amazing compilers are as much as I do!
See you on the first of December!

Permalink

Filed under:

Coding
AoCO2025

Posted at 13:40:00 CST on 13th November 2025.

About Matt Godbolt

Matt Godbolt is a C++ developer living in Chicago.
He works for Hudson River Trading on super fun but secret things.
He is one half of the Two's Complement podcast.
Follow him on Mastodon
or Bluesky.

Copyright 2007-2025 Matt Godbolt.
Unless otherwise stated, all content is licensed under the
Creative Commons Attribution-Noncommercial 3.0 Unported License.
This blog is powered by the MalcBlogSystem by Malcolm Rowe.
Note: This is my personal website. The views expressed on
these pages are mine alone and almost certainly not those of my employer.

Matt Godbolt is initiating a comprehensive, daily exploration of compiler optimizations during the period from December 1st to December 25th, 2025, a project dubbed “Advent of Compiler Optimisations: 2025.” This endeavor will manifest as both blog posts and accompanying video content, meticulously detailing a diverse range of C and C++ optimizations achievable through modern compilers. The core of the project centers around elucidating the mechanics of these optimizations, offering insights into precisely when they are applicable, providing detailed interpretations of the generated assembly code, and crucially, identifying scenarios where these optimizations are ineffective or would even be detrimental.

The scope of the investigation is deliberately broad, encompassing a spectrum of techniques ranging from highly specialized, architecture-dependent microarchitectural tricks to more substantial, high-level optimizations. While Godbolt primarily focuses on the x86-64 architecture, the project extends its analysis to include 64-bit and 32-bit ARM systems, acknowledging the varying complexities and opportunities presented by these platforms. The intention is not just to showcase the capabilities of compilers, but to foster a deeper understanding of their inner workings and the factors that govern their optimization decisions.

A central element of the project’s design is the emphasis on recognizing instances where optimizations do not apply. Godbolt’s approach goes beyond simply demonstrating successful optimizations; he intends to expose the conditions and constraints that prevent them, ensuring that readers gain a truly nuanced perspective. The project’s daily format – a combination of blog posts and video content – is intended to facilitate both textual learning and visual comprehension of the assembly-level details. The goal is to demystify the compilation process and empower developers to make informed choices about their code to maximize compiler effectiveness.

Following along with the project can be accomplished through several avenues, including monitoring the “AoCO2025” tag on the blog, subscribing to Godbolt’s YouTube channel, or by tracking the dedicated YouTube playlist. The effort behind this project, representing approximately a year of development, is underscored by Godbolt’s enthusiastic appreciation for these intricate optimization strategies.