July 30, 2014
4:18 p.m.
On Wed, 30 Jul 2014 09:03:38 -0500, Xin Tong said:
Ive heard that one can not build the entire Linux kernel with -O0 option. why is that ? being a compiler developer, i can not think of reasons why that is the case.
The short answer: -O0 completely suppresses function inlining, and there are several places where the kernel depends on inlining for correct operation (most notably with things like __builtin_return_address() and friends for introspecting the stack, but there's a few other corner cases I can't remember at the moment...)