diff options
author | Adrian Bunk <bunk@stusta.de> | 2006-12-06 20:14:12 -0500 |
---|---|---|
committer | Andi Kleen <andi@basil.nowhere.org> | 2006-12-06 20:14:12 -0500 |
commit | a1a70c25bed75ed36ed48bbe18b9029428d2452d (patch) | |
tree | 0ab9fcebc25f9f71be61f91bfca96aa1e0585a0d /arch | |
parent | 73ad8355d7db6a3cdcf313d4a4586a8f81b19c2f (diff) |
[PATCH] i386: always enable regparm
-mregparm=3 has been enabled by default for some time on i386, and AFAIK
there aren't any problems with it left.
This patch removes the REGPARM config option and sets -mregparm=3
unconditionally.
Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Andi Kleen <ak@suse.de>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/i386/Kconfig | 14 | ||||
-rw-r--r-- | arch/i386/Makefile | 4 |
2 files changed, 1 insertions, 17 deletions
diff --git a/arch/i386/Kconfig b/arch/i386/Kconfig index bb1fa061c6cf..b6b2df40ca78 100644 --- a/arch/i386/Kconfig +++ b/arch/i386/Kconfig | |||
@@ -721,20 +721,6 @@ config BOOT_IOREMAP | |||
721 | depends on (((X86_SUMMIT || X86_GENERICARCH) && NUMA) || (X86 && EFI)) | 721 | depends on (((X86_SUMMIT || X86_GENERICARCH) && NUMA) || (X86 && EFI)) |
722 | default y | 722 | default y |
723 | 723 | ||
724 | config REGPARM | ||
725 | bool "Use register arguments" | ||
726 | default y | ||
727 | help | ||
728 | Compile the kernel with -mregparm=3. This instructs gcc to use | ||
729 | a more efficient function call ABI which passes the first three | ||
730 | arguments of a function call via registers, which results in denser | ||
731 | and faster code. | ||
732 | |||
733 | If this option is disabled, then the default ABI of passing | ||
734 | arguments via the stack is used. | ||
735 | |||
736 | If unsure, say Y. | ||
737 | |||
738 | config SECCOMP | 724 | config SECCOMP |
739 | bool "Enable seccomp to safely compute untrusted bytecode" | 725 | bool "Enable seccomp to safely compute untrusted bytecode" |
740 | depends on PROC_FS | 726 | depends on PROC_FS |
diff --git a/arch/i386/Makefile b/arch/i386/Makefile index d1aca52bf690..f7ac1aea1d8a 100644 --- a/arch/i386/Makefile +++ b/arch/i386/Makefile | |||
@@ -31,7 +31,7 @@ LDFLAGS_vmlinux := --emit-relocs | |||
31 | endif | 31 | endif |
32 | CHECKFLAGS += -D__i386__ | 32 | CHECKFLAGS += -D__i386__ |
33 | 33 | ||
34 | CFLAGS += -pipe -msoft-float | 34 | CFLAGS += -pipe -msoft-float -mregparm=3 |
35 | 35 | ||
36 | # prevent gcc from keeping the stack 16 byte aligned | 36 | # prevent gcc from keeping the stack 16 byte aligned |
37 | CFLAGS += $(call cc-option,-mpreferred-stack-boundary=2) | 37 | CFLAGS += $(call cc-option,-mpreferred-stack-boundary=2) |
@@ -39,8 +39,6 @@ CFLAGS += $(call cc-option,-mpreferred-stack-boundary=2) | |||
39 | # CPU-specific tuning. Anything which can be shared with UML should go here. | 39 | # CPU-specific tuning. Anything which can be shared with UML should go here. |
40 | include $(srctree)/arch/i386/Makefile.cpu | 40 | include $(srctree)/arch/i386/Makefile.cpu |
41 | 41 | ||
42 | cflags-$(CONFIG_REGPARM) += -mregparm=3 | ||
43 | |||
44 | # temporary until string.h is fixed | 42 | # temporary until string.h is fixed |
45 | cflags-y += -ffreestanding | 43 | cflags-y += -ffreestanding |
46 | 44 | ||