summaryrefslogtreecommitdiffstats
path: root/sys/arm/include/sysarch.h
diff options
context:
space:
mode:
authorandrew <andrew@FreeBSD.org>2016-01-16 10:12:50 +0000
committerandrew <andrew@FreeBSD.org>2016-01-16 10:12:50 +0000
commitf52ebb9e171e7e0c24ff210b8fc53a2bb7b7c06c (patch)
treebcb68aa22c8d96ff40fff88ca915605ce7a63f5f /sys/arm/include/sysarch.h
parent5c5d8c09acd7bbc84ca42b011222ef403d0cd1a7 (diff)
downloadFreeBSD-src-f52ebb9e171e7e0c24ff210b8fc53a2bb7b7c06c.zip
FreeBSD-src-f52ebb9e171e7e0c24ff210b8fc53a2bb7b7c06c.tar.gz
Use __ARM_ARCH to decide when ARM_TP_ADDRESS needs to be set. This fixes
an issue with clang 3.8.0 where none of the __ARM_ARCH_*__ macros were defined on some ARMv6 kernel configs. Sponsored by: ABT Systems Ltd
Diffstat (limited to 'sys/arm/include/sysarch.h')
-rw-r--r--sys/arm/include/sysarch.h8
1 files changed, 3 insertions, 5 deletions
diff --git a/sys/arm/include/sysarch.h b/sys/arm/include/sysarch.h
index 71023e8..ac0a64d 100644
--- a/sys/arm/include/sysarch.h
+++ b/sys/arm/include/sysarch.h
@@ -37,7 +37,9 @@
#ifndef _ARM_SYSARCH_H_
#define _ARM_SYSARCH_H_
+#include <machine/acle-compat.h>
#include <machine/armreg.h>
+
/*
* The ARM_TP_ADDRESS points to a special purpose page, which is used as local
* store for the ARM per-thread data and Restartable Atomic Sequences support.
@@ -53,11 +55,7 @@
/* ARM_TP_ADDRESS is needed for processors that don't support
* the exclusive-access opcodes introduced with ARMv6K. */
-/* TODO: #if !defined(_HAVE_ARMv6K_INSTRUCTIONS) */
-#if !defined (__ARM_ARCH_7__) && \
- !defined (__ARM_ARCH_7A__) && \
- !defined (__ARM_ARCH_6K__) && \
- !defined (__ARM_ARCH_6ZK__)
+#if __ARM_ARCH <= 5
#define ARM_TP_ADDRESS (ARM_VECTORS_HIGH + 0x1000)
#define ARM_RAS_START (ARM_TP_ADDRESS + 4)
#define ARM_RAS_END (ARM_TP_ADDRESS + 8)
OpenPOWER on IntegriCloud