Skip to content

Lexicon Entry

-O2

-O2 is a common compiler flag used in GCC and Clang that enables most optimizations that do not involve a space-speed tradeoff, providing a strong balance between compilation time and execution speed.

Related Knowledge & Cross-References

Guide

The Ultimate Guide to Compiler Optimization Passes: Boosting Performance with -O2

You’ve been there. You write a complex calculation in C, compile it, and it feels a bit sluggish. You open your `Makefile`, add `-O2` to your `CFLAGS`, recompile, and suddenly your program is executing three times faster. But what actually is the compiler doing under the hood? Is it magic? Is it just removing debug…