summaryrefslogtreecommitdiffstats
path: root/sys
diff options
context:
space:
mode:
authorjsg <jsg@openbsd.org>2017-10-26 02:48:36 +0000
committerjsg <jsg@openbsd.org>2017-10-26 02:48:36 +0000
commit7052bd10c9be7182a3d26093a156b592f1ef2f5e (patch)
treef6aab761da8a830562ea72c083a3bd89eac79657 /sys
parentRevert 2006-4-29Z23:09:45 commit that switched from rwlocks to mutexes. (diff)
downloadwireguard-openbsd-7052bd10c9be7182a3d26093a156b592f1ef2f5e.tar.xz
wireguard-openbsd-7052bd10c9be7182a3d26093a156b592f1ef2f5e.zip
Use .arch_extension sec and virt to use smc and hvc instructions when
using the clang 5.0.0 integrated assembler with -march=armv7a. ok visa@ initial diff from and ok kettenis@
Diffstat (limited to 'sys')
-rw-r--r--sys/arch/armv7/armv7/armv7_start.S8
1 files changed, 7 insertions, 1 deletions
diff --git a/sys/arch/armv7/armv7/armv7_start.S b/sys/arch/armv7/armv7/armv7_start.S
index aa027b3094f..db7292f7c65 100644
--- a/sys/arch/armv7/armv7/armv7_start.S
+++ b/sys/arch/armv7/armv7/armv7_start.S
@@ -1,4 +1,4 @@
-/* $OpenBSD: armv7_start.S,v 1.14 2017/06/14 13:12:49 patrick Exp $ */
+/* $OpenBSD: armv7_start.S,v 1.15 2017/10/26 02:48:36 jsg Exp $ */
/* $NetBSD: lubbock_start.S,v 1.1 2003/06/18 10:51:15 bsh Exp $ */
/*
@@ -38,7 +38,13 @@
#undef DOMAIN_CLIENT /* XXX */
#include "assym.h"
+#ifdef __clang__
+.arch_extension sec
+.arch_extension virt
+#define HVC hvc #0
+#else
#define HVC .word 0xe1400070 @ hvc
+#endif
.text