The following commit has been merged in the linux branch: commit 6603a4fd5195a004dec5f9568e38ff76bae630c1 Author: Claudio Scordino claudio@evidence.eu.com Date: Fri Oct 30 12:06:05 2009 +0100
ARM: 5776/1: Check compiler version and EABI support when adding ARM unwind support.
ARM unwind is known to compile only with EABI and not-buggy compilers. The problem is not the unwinding information but the -fno-frame-pointer option added as a result of !CONFIG_FRAME_POINTER. Now we check the compiler and raise a #warning in case of wrong compiler.
Signed-off-by: Claudio Scordino claudio@evidence.eu.com Signed-off-by: Russell King rmk+kernel@arm.linux.org.uk
diff --git a/arch/arm/kernel/unwind.c b/arch/arm/kernel/unwind.c index 39baf11..786ac2b 100644 --- a/arch/arm/kernel/unwind.c +++ b/arch/arm/kernel/unwind.c @@ -26,6 +26,15 @@ * http://infocenter.arm.com/help/topic/com.arm.doc.subset.swdev.abi/index.html */
+#if !defined (__ARM_EABI__) +#warning Your compiler does not have EABI support. +#warning ARM unwind is known to compile only with EABI compilers. +#warning Change compiler or disable ARM_UNWIND option. +#elif (__GNUC__ == 4 && __GNUC_MINOR__ <= 2) +#warning Your compiler is too buggy; it is known to not compile ARM unwind support. +#warning Change compiler or disable ARM_UNWIND option. +#endif + #include <linux/kernel.h> #include <linux/init.h> #include <linux/module.h>