summaryrefslogtreecommitdiffstats
path: root/lib/libc/arm/gen/__aeabi_read_tp.S
diff options
context:
space:
mode:
Diffstat (limited to 'lib/libc/arm/gen/__aeabi_read_tp.S')
-rw-r--r--lib/libc/arm/gen/__aeabi_read_tp.S6
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/libc/arm/gen/__aeabi_read_tp.S b/lib/libc/arm/gen/__aeabi_read_tp.S
index 228acff..c3ea99d 100644
--- a/lib/libc/arm/gen/__aeabi_read_tp.S
+++ b/lib/libc/arm/gen/__aeabi_read_tp.S
@@ -31,10 +31,16 @@ __FBSDID("$FreeBSD$");
#include <machine/sysarch.h>
ENTRY(__aeabi_read_tp)
+#ifdef ARM_TP_ADDRESS
ldr r0, .Larm_tp_address
ldr r0, [r0]
+#else
+ mrc p15, 0, r0, c13, c0, 3
+#endif
RET
+#ifdef ARM_TP_ADDRESS
.Larm_tp_address:
.word ARM_TP_ADDRESS
+#endif
OpenPOWER on IntegriCloud