summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorAndi Kleen <ak@linux.intel.com>2012-03-28 20:51:18 +0200
committerH. Peter Anvin <hpa@zytor.com>2012-03-30 19:15:21 +0200
commit1873e870fd63ee4b87dbe0125ca373e420fb4987 (patch)
tree2c4d4244c653e374a1d0040e581be60f614f23a7 /lib
parentx86: spinlock.h: Remove REG_PTR_MODE (diff)
downloadlinux-1873e870fd63ee4b87dbe0125ca373e420fb4987.tar.xz
linux-1873e870fd63ee4b87dbe0125ca373e420fb4987.zip
debug: Add CONFIG_READABLE_ASM
Add a config option to disable various gcc compiler optimizations that make assembler listings much harder to read. This is everything that reorders code significantly or creates partial functions. This is mainly to keep kernel hackers sane. Signed-off-by: Andi Kleen <ak@linux.intel.com> Link: http://lkml.kernel.org/r/1332960678-11879-2-git-send-email-andi@firstfloor.org Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Diffstat (limited to 'lib')
-rw-r--r--lib/Kconfig.debug9
1 files changed, 9 insertions, 0 deletions
diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
index 6777153f18f3..4d3cbbbe4516 100644
--- a/lib/Kconfig.debug
+++ b/lib/Kconfig.debug
@@ -70,6 +70,15 @@ config STRIP_ASM_SYMS
that look like '.Lxxx') so they don't pollute the output of
get_wchan() and suchlike.
+config READABLE_ASM
+ bool "Generate readable assembler code"
+ depends on DEBUG_KERNEL
+ help
+ Disable some compiler optimizations that tend to generate human unreadable
+ assembler output. This may make the kernel slightly slower, but it helps
+ to keep kernel developers who have to stare a lot at assembler listings
+ sane.
+
config UNUSED_SYMBOLS
bool "Enable unused/obsolete exported symbols"
default y if X86