Messages in this thread | | | Subject | Building Kernel with -O0 | From | "Keith A. Prickett" <> | Date | Thu, 04 Sep 2008 10:50:53 -0700 |
| |
I was looking at some changes to the 2.6.26.y kernel in "compiler-gcc.h" and had some questions. ( http://git.kernel.org/?p=linux/kernel/git/stable/linux-2.6.26.y.git;a=commitdiff;h=ae3a0064e6d69068b1c9fd075095da062430bda9 )
I was attempting to cross-compile Linux for a Marvell core with Optimizations turned off and ran across an error due to the __attribute__((always_inline)) attribute.
It looks like the default behavior used to always have this feature on, but Ingo committed some changes that allows this behavior to be turned off (With the correct Kconfig file changes).
I'm VERY new to Linux but was wondering if there was a way (config option) to turn this inline attribute off in previous versions of the kernel besides these new macros. It seems building with optimization level 0 should be a natural thing for kernel driver developers to do for debugging purposes.
In summary: I want to compile with optimizations off and the compile is failing now when I try this. How can this be resolved?
For reference: - Stable Kernel 2.6.26 - I'm using arm-marvell-eabi-gcc 4.1.1 - Compiling for ARM architecture - Neither CONFIG_ARCH_SUPPORTS_OPTIMIZED_INLINING nor CONFIG_OPTIMIZE_INLINING are on (or even options in the ARM architecture) - The error I receive is: "sorry, unimplemented: inlining failed in call to '<inline function>': function body not available"
Thanks in advance, -- Keith Prickett
| |