Module Name: src
Committed By: skrll
Date: Tue Oct 13 21:22:12 UTC 2020
Modified Files:
src/common/lib/libc/arch/aarch64/atomic: membar_ops.S
Log Message:
Use the correct barriers - all of membar_{sync,producer,consumer} have
less scope than before.
LGTM from riastradh
To generate a diff of this commit:
cvs rdiff -u -r1.1 -r1.2 src/common/lib/libc/arch/aarch64/atomic/membar_ops.S
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/common/lib/libc/arch/aarch64/atomic/membar_ops.S
diff -u src/common/lib/libc/arch/aarch64/atomic/membar_ops.S:1.1 src/common/lib/libc/arch/aarch64/atomic/membar_ops.S:1.2
--- src/common/lib/libc/arch/aarch64/atomic/membar_ops.S:1.1 Sun Aug 10 05:47:35 2014
+++ src/common/lib/libc/arch/aarch64/atomic/membar_ops.S Tue Oct 13 21:22:12 2020
@@ -1,4 +1,4 @@
-/* $NetBSD: membar_ops.S,v 1.1 2014/08/10 05:47:35 matt Exp $ */
+/* $NetBSD: membar_ops.S,v 1.2 2020/10/13 21:22:12 skrll Exp $ */
/*-
* Copyright (c) 2014 The NetBSD Foundation, Inc.
@@ -32,24 +32,28 @@
#include "atomic_op_asm.h"
ENTRY_NP(_membar_producer)
- dsb sy
+ dmb ishst
ret
END(_membar_producer)
ATOMIC_OP_ALIAS(membar_producer,_membar_producer)
ATOMIC_OP_ALIAS(membar_write,_membar_producer)
STRONG_ALIAS(_membar_write,_membar_producer)
+ENTRY_NP(_membar_consumer)
+ dmb ishld
+ ret
+END(_membar_producer)
+ATOMIC_OP_ALIAS(membar_consumer,_membar_consumer)
+ATOMIC_OP_ALIAS(membar_read,_membar_consumer)
+STRONG_ALIAS(_membar_read,_membar_consumer)
+
ENTRY_NP(_membar_sync)
- dmb sy
+ dmb ish
ret
END(_membar_sync)
ATOMIC_OP_ALIAS(membar_sync,_membar_sync)
ATOMIC_OP_ALIAS(membar_enter,_membar_sync)
ATOMIC_OP_ALIAS(membar_exit,_membar_sync)
-ATOMIC_OP_ALIAS(membar_consumer,_membar_sync)
-ATOMIC_OP_ALIAS(membar_read,_membar_sync)
STRONG_ALIAS(__sync_synchronize,_membar_sync)
STRONG_ALIAS(_membar_enter,_membar_sync)
STRONG_ALIAS(_membar_exit,_membar_sync)
-STRONG_ALIAS(_membar_consumer,_membar_sync)
-STRONG_ALIAS(_membar_read,_membar_sync)