diff options
Diffstat (limited to 'arch/x86/Makefile_32.cpu')
| -rw-r--r-- | arch/x86/Makefile_32.cpu | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/arch/x86/Makefile_32.cpu b/arch/x86/Makefile_32.cpu index 1255d953c65d..f2ee1abb1df9 100644 --- a/arch/x86/Makefile_32.cpu +++ b/arch/x86/Makefile_32.cpu | |||
| @@ -51,7 +51,18 @@ cflags-$(CONFIG_X86_GENERIC) += $(call tune,generic,$(call tune,i686)) | |||
| 51 | # prologue (push %ebp, mov %esp, %ebp) which breaks the function graph | 51 | # prologue (push %ebp, mov %esp, %ebp) which breaks the function graph |
| 52 | # tracer assumptions. For i686, generic, core2 this is set by the | 52 | # tracer assumptions. For i686, generic, core2 this is set by the |
| 53 | # compiler anyway | 53 | # compiler anyway |
| 54 | cflags-$(CONFIG_FUNCTION_GRAPH_TRACER) += $(call cc-option,-maccumulate-outgoing-args) | 54 | ifeq ($(CONFIG_FUNCTION_GRAPH_TRACER), y) |
| 55 | ADD_ACCUMULATE_OUTGOING_ARGS := y | ||
| 56 | endif | ||
| 57 | |||
| 58 | # Work around to a bug with asm goto with first implementations of it | ||
| 59 | # in gcc causing gcc to mess up the push and pop of the stack in some | ||
| 60 | # uses of asm goto. | ||
| 61 | ifeq ($(CONFIG_JUMP_LABEL), y) | ||
| 62 | ADD_ACCUMULATE_OUTGOING_ARGS := y | ||
| 63 | endif | ||
| 64 | |||
| 65 | cflags-$(ADD_ACCUMULATE_OUTGOING_ARGS) += $(call cc-option,-maccumulate-outgoing-args) | ||
| 55 | 66 | ||
| 56 | # Bug fix for binutils: this option is required in order to keep | 67 | # Bug fix for binutils: this option is required in order to keep |
| 57 | # binutils from generating NOPL instructions against our will. | 68 | # binutils from generating NOPL instructions against our will. |
