summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorandrew <andrew@FreeBSD.org>2013-03-09 23:55:23 +0000
committerandrew <andrew@FreeBSD.org>2013-03-09 23:55:23 +0000
commit5e403de75ee05384c91cbd144df91148207fc551 (patch)
treed449c96d3e40ead8b4239580b5b7c7bbdb61de55
parent7323532fa2b36e007878775246560b54ff5ddeca (diff)
downloadFreeBSD-src-5e403de75ee05384c91cbd144df91148207fc551.zip
FreeBSD-src-5e403de75ee05384c91cbd144df91148207fc551.tar.gz
__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.
-rw-r--r--sys/arm/arm/disassem.c2
-rw-r--r--sys/arm/include/param.h2
2 files changed, 2 insertions, 2 deletions
diff --git a/sys/arm/arm/disassem.c b/sys/arm/arm/disassem.c
index 259c3c4..55ef0b2 100644
--- a/sys/arm/arm/disassem.c
+++ b/sys/arm/arm/disassem.c
@@ -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" },
diff --git a/sys/arm/include/param.h b/sys/arm/include/param.h
index 4a7ebbd..8c535e8 100644
--- a/sys/arm/include/param.h
+++ b/sys/arm/include/param.h
@@ -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
OpenPOWER on IntegriCloud