diff options
author | Matthias Urlichs <smurf@smurf.noris.de> | 2005-06-23 03:10:05 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@ppc970.osdl.org> | 2005-06-23 12:45:30 -0400 |
commit | 0030cbf06c669b65e124414af51b5010fc53b760 (patch) | |
tree | b7e57d9c8131590a7cbdd2c20dc82954697c485b | |
parent | 71a2224d7d1cefc23a1ac80bba421cc069cc3257 (diff) |
[PATCH] Turn off sibling call optimization w/ frame pointers
Frame pointers are supposed to enable debuggers to reliably tell where a
call comes from. That is defeated by GCC's sibling call optimization (aka
tail recursion elimination).
This patch turns this optimization off when compiling with frame pointers.
Signed-Off-By: Matthias Urlichs <smurf@smurf.noris.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r-- | Makefile | 2 |
1 files changed, 1 insertions, 1 deletions
@@ -518,7 +518,7 @@ CFLAGS += $(call add-align,CONFIG_CC_ALIGN_LOOPS,-loops) | |||
518 | CFLAGS += $(call add-align,CONFIG_CC_ALIGN_JUMPS,-jumps) | 518 | CFLAGS += $(call add-align,CONFIG_CC_ALIGN_JUMPS,-jumps) |
519 | 519 | ||
520 | ifdef CONFIG_FRAME_POINTER | 520 | ifdef CONFIG_FRAME_POINTER |
521 | CFLAGS += -fno-omit-frame-pointer | 521 | CFLAGS += -fno-omit-frame-pointer $(call cc-option,-fno-optimize-sibling-calls,) |
522 | else | 522 | else |
523 | CFLAGS += -fomit-frame-pointer | 523 | CFLAGS += -fomit-frame-pointer |
524 | endif | 524 | endif |