Signed-off-by: Jason Wessel <[email protected]>
asm_debug.patch
From: Jason Wessel <[email protected]>
Subject: [PATCH] Add ability to unoptimize module compiles and dwarf2 asm
This patch adds in the ability to unoptimize a single kernel module to
make source stepping more linear and not optimize out variables that
the developer might like to inspect. It used with adding
COPTIMIZE=-O0 to the build line.
Also when creating a debug kernel add in dwarf2 sections for the
assembled code. This makes source stepping the assembly files
possible as well as having references into the .S files in the back
trace information. The -gdwarf2 was chosen to work around any
problems with the stabs assembly sections.
Signed-off-by: Jason Wessel <[email protected]>
---
Makefile | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
Index: linux-2.6-kgdb/Makefile
===================================================================
--- linux-2.6-kgdb.orig/Makefile
+++ linux-2.6-kgdb/Makefile
@@ -483,10 +483,14 @@ endif # $(dot-config)
all: vmlinux
ifdef CONFIG_CC_OPTIMIZE_FOR_SIZE
-CFLAGS += -Os
+COPTIMIZE = -Os
else
-CFLAGS += -O2
+COPTIMIZE = -O2
endif
+# COPTIMIZE may be overridden on the make command line with
+# make ... COPTIMIZE=""
+# The resulting object may be easier to debug with KGDB
+CFLAGS += $(COPTIMIZE)
include $(srctree)/arch/$(ARCH)/Makefile
@@ -498,6 +502,7 @@ endif
ifdef CONFIG_DEBUG_INFO
CFLAGS += -g
+AFLAGS += -gdwarf2
endif
# Force gcc to behave correct even for buggy distributions
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]