diff options
| author | Russell King <rmk@flint.arm.linux.org.uk> | 2003-04-30 12:04:09 +0100 |
|---|---|---|
| committer | Russell King <rmk@flint.arm.linux.org.uk> | 2003-04-30 12:04:09 +0100 |
| commit | 3af3fd45a7219a28f63ae0dcc22d34cc6887b8ce (patch) | |
| tree | bf042e347cee105ba4ee6809ab4091556ff548a7 | |
| parent | d1f880abc403575e9166ec673a855877352d3af3 (diff) | |
| parent | c4da9254005d9bfd0f89d584fd41ae23467033b0 (diff) | |
Merge flint.arm.linux.org.uk:/usr/src/linux-bk-2.5/linux-2.5
into flint.arm.linux.org.uk:/usr/src/linux-bk-2.5/linux-2.5-rmk
| -rw-r--r-- | arch/arm/kernel/asm-offsets.c | 24 | ||||
| -rw-r--r-- | arch/arm/kernel/calls.S | 4 | ||||
| -rw-r--r-- | arch/arm/mm/consistent.c | 2 | ||||
| -rw-r--r-- | include/asm-arm/bugs.h | 2 |
4 files changed, 19 insertions, 13 deletions
diff --git a/arch/arm/kernel/asm-offsets.c b/arch/arm/kernel/asm-offsets.c index 9506ae5f60dd..785fed8a2384 100644 --- a/arch/arm/kernel/asm-offsets.c +++ b/arch/arm/kernel/asm-offsets.c @@ -1,5 +1,5 @@ /* - * Copyright (C) 1995-2001 Russell King + * Copyright (C) 1995-2003 Russell King * 2001-2002 Keith Owens * * Generate definitions needed by assembly language modules. @@ -24,12 +24,21 @@ #if defined(__APCS_26__) #error Sorry, your compiler targets APCS-26 but this kernel requires APCS-32 #endif -#if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 95) -#error Sorry, your compiler is known to miscompile kernels. Only use gcc 2.95.3 and later. -#endif -#if __GNUC__ == 2 && __GNUC_MINOR__ == 95 -/* shame we can't detect the .1 or .2 releases */ -#warning GCC 2.95.2 and earlier miscompiles kernels. +/* + * GCC 2.95.1, 2.95.2: ignores register clobber list in asm(). + * GCC 3.0, 3.1: general bad code generation. + * GCC 3.2.0: incorrect function argument offset calculation. + * GCC 3.2.x: miscompiles NEW_AUX_ENT in fs/binfmt_elf.c + * (http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view&pr=8896) + */ +#if __GNUC__ < 2 || \ + (__GNUC__ == 2 && __GNUC_MINOR__ < 95) || \ + (__GNUC__ == 2 && __GNUC_MINOR__ == 95 && __GNUC_PATCHLEVEL__ != 0 && \ + __GNUC_PATCHLEVEL__ < 3) || \ + (__GNUC__ == 3 && __GNUC_MINOR__ < 2) || \ + (__GNUC__ == 3 && __GNUC_MINOR__ == 2 && __GNUC_PATCHLEVEL__ < 1) +#error Your compiler is too buggy; it is known to miscompile kernels. +#error Known good compilers: 2.95.3, 2.95.4, 2.96, 3.2.2+PR8896 #endif /* Use marker if you need to separate the values later */ @@ -62,7 +71,6 @@ int main(void) DEFINE(LPTE_EXEC, L_PTE_EXEC); DEFINE(LPTE_DIRTY, L_PTE_DIRTY); BLANK(); - BLANK(); DEFINE(PAGE_SZ, PAGE_SIZE); BLANK(); DEFINE(SYS_ERROR0, 0x9f0000); diff --git a/arch/arm/kernel/calls.S b/arch/arm/kernel/calls.S index 58e4c2d4b239..2c13b70f775a 100644 --- a/arch/arm/kernel/calls.S +++ b/arch/arm/kernel/calls.S @@ -1,7 +1,7 @@ /* - * linux/arch/arm/lib/calls.h + * linux/arch/arm/kernel/calls.S * - * Copyright (C) 1995-1998 Russell King + * Copyright (C) 1995-2003 Russell King * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 as diff --git a/arch/arm/mm/consistent.c b/arch/arm/mm/consistent.c index 265c8fbe868e..9905eadd83f1 100644 --- a/arch/arm/mm/consistent.c +++ b/arch/arm/mm/consistent.c @@ -330,7 +330,7 @@ static int __init consistent_init(void) core_initcall(consistent_init); /* - * make an area consistent for devices. + * Make an area consistent for devices. */ void consistent_sync(void *vaddr, size_t size, int direction) { diff --git a/include/asm-arm/bugs.h b/include/asm-arm/bugs.h index 14a4e05eee8c..adae0482000d 100644 --- a/include/asm-arm/bugs.h +++ b/include/asm-arm/bugs.h @@ -10,8 +10,6 @@ #ifndef __ASM_BUGS_H #define __ASM_BUGS_H -#include <asm/proc-fns.h> - #define check_bugs() do { } while (0) #endif |
