summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIngo Molnar <mingo@elte.hu>2008-05-01 12:06:54 +0200
committerIngo Molnar <mingo@elte.hu>2008-05-04 20:04:45 +0200
commit22eecde2f9034764a3fd095eecfa3adfb8ec9a98 (patch)
tree050e1d722010475992976312201b82e2524da5f0
parent48b83d2425d7781bb625b1c37b5f2a8963b6e23b (diff)
uml: fix gcc problem
this is what caused gcc 4.3 to throw an internal error when OPTIMIZE_INLINING was enabled ... Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
-rw-r--r--arch/um/Makefile5
1 files changed, 4 insertions, 1 deletions
diff --git a/arch/um/Makefile b/arch/um/Makefile
index dbeab15e7bb..01b97c19a8b 100644
--- a/arch/um/Makefile
+++ b/arch/um/Makefile
@@ -77,7 +77,10 @@ include $(srctree)/$(ARCH_DIR)/Makefile-os-$(OS)
KERNEL_DEFINES = $(strip -Derrno=kernel_errno -Dsigprocmask=kernel_sigprocmask \
-Dmktime=kernel_mktime $(ARCH_KERNEL_DEFINES))
KBUILD_CFLAGS += $(KERNEL_DEFINES)
-KBUILD_CFLAGS += $(call cc-option,-fno-unit-at-a-time,)
+# Disable unit-at-a-time mode on pre-gcc-4.0 compilers, it makes gcc use
+# a lot more stack due to the lack of sharing of stacklots:
+KBUILD_CFLAGS += $(shell if [ $(call cc-version) -lt 0400 ] ; then \
+ echo $(call cc-option,-fno-unit-at-a-time); fi ;)
PHONY += linux