svn commit: r248119 - in head/sys/arm: arm include
Roman Divacky
rdivacky at freebsd.org
Sun Mar 10 10:13:06 UTC 2013
Should clang define __FreeBSD_ARCH_armv6__ ? Any other define thats missing
and should be defined?
Roman
On Sat, Mar 09, 2013 at 11:55:24PM +0000, Andrew Turner wrote:
> Author: andrew
> Date: Sat Mar 9 23:55:23 2013
> New Revision: 248119
> URL: http://svnweb.freebsd.org/changeset/base/248119
>
> Log:
> __FreeBSD_ARCH_armv6__ is undefined on clang. We can use __ARM_ARCH in
> it's place. This makes 'uname -p' correctly output 'armv6' on a kernel
> built with clang.
>
> Modified:
> head/sys/arm/arm/disassem.c
> head/sys/arm/include/param.h
>
> Modified: head/sys/arm/arm/disassem.c
> ==============================================================================
> --- head/sys/arm/arm/disassem.c Sat Mar 9 23:05:19 2013 (r248118)
> +++ head/sys/arm/arm/disassem.c Sat Mar 9 23:55:23 2013 (r248119)
> @@ -130,7 +130,7 @@ static const struct arm32_insn arm32_i[]
> { 0x0c500000, 0x04100000, "ldr", "daW" },
> { 0x0c500000, 0x04400000, "strb", "daW" },
> { 0x0c500000, 0x04500000, "ldrb", "daW" },
> -#ifdef __FreeBSD_ARCH_armv6__
> +#if defined(__FreeBSD_ARCH_armv6__) || (defined(__ARM_ARCH) && __ARM_ARCH >= 6)
> { 0xffffffff, 0xf57ff01f, "clrex", "c" },
> { 0x0ff00ff0, 0x01800f90, "strex", "dmo" },
> { 0x0ff00fff, 0x01900f9f, "ldrex", "do" },
>
> Modified: head/sys/arm/include/param.h
> ==============================================================================
> --- head/sys/arm/include/param.h Sat Mar 9 23:05:19 2013 (r248118)
> +++ head/sys/arm/include/param.h Sat Mar 9 23:55:23 2013 (r248119)
> @@ -56,7 +56,7 @@
> #define MACHINE "arm"
> #endif
> #ifndef MACHINE_ARCH
> -#ifdef __FreeBSD_ARCH_armv6__
> +#if defined(__FreeBSD_ARCH_armv6__) || (defined(__ARM_ARCH) && __ARM_ARCH >= 6)
> #ifdef __ARMEB__
> #define MACHINE_ARCH "armv6eb"
> #else
More information about the svn-src-all
mailing list