git: 1e3927b93b57 - stable/13 - Only define sanitizer wrappers for atomic fences once.

From: Mark Johnston <markj_at_FreeBSD.org>
Date: Mon, 14 Nov 2022 19:42:10 UTC
The branch stable/13 has been updated by markj:

URL: https://cgit.FreeBSD.org/src/commit/?id=1e3927b93b575d648fe69858782794f4a717bacd

commit 1e3927b93b575d648fe69858782794f4a717bacd
Author:     John Baldwin <jhb@FreeBSD.org>
AuthorDate: 2021-09-15 16:03:17 +0000
Commit:     Mark Johnston <markj@FreeBSD.org>
CommitDate: 2022-11-14 19:24:15 +0000

    Only define sanitizer wrappers for atomic fences once.
    
    Previously, this was defining duplicate definitions for each type.
    
    This fixes a redundat definition warning from GCC.
    
    Reviewed by:    markj
    Differential Revision:  https://reviews.freebsd.org/D31965
    
    (cherry picked from commit 45cb7671133efa52b63f301e8439a71259abe478)
---
 sys/sys/atomic_san.h | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/sys/sys/atomic_san.h b/sys/sys/atomic_san.h
index 30bd01c97cf2..b0790962d8bd 100644
--- a/sys/sys/atomic_san.h
+++ b/sys/sys/atomic_san.h
@@ -76,13 +76,16 @@
 	int sp##_atomic_##op##_##name(volatile type *, u_int);		\
 	int sp##_atomic_##op##_acq_##name(volatile type *, u_int)
 
-#define	ATOMIC_SAN_THREAD_FENCE(sp)					\
+#define	_ATOMIC_SAN_THREAD_FENCE(sp)					\
 	void sp##_atomic_thread_fence_acq(void);			\
 	void sp##_atomic_thread_fence_rel(void);			\
 	void sp##_atomic_thread_fence_acq_rel(void);			\
 	void sp##_atomic_thread_fence_seq_cst(void);			\
 	void sp##_atomic_interrupt_fence(void)
 
+#define	ATOMIC_SAN_THREAD_FENCE(sp)					\
+	_ATOMIC_SAN_THREAD_FENCE(sp)
+
 #define	_ATOMIC_SAN_FUNCS(sp, name, type)				\
 	ATOMIC_SAN_FUNC_1(sp, add, name, type);				\
 	ATOMIC_SAN_FUNC_1(sp, clear, name, type);			\
@@ -96,8 +99,7 @@
 	ATOMIC_SAN_STORE(sp, name, type);				\
 	ATOMIC_SAN_READ(sp, swap, name, type);				\
 	ATOMIC_SAN_TEST(sp, testandclear, name, type);			\
-	ATOMIC_SAN_TEST(sp, testandset, name, type);			\
-	ATOMIC_SAN_THREAD_FENCE(sp);
+	ATOMIC_SAN_TEST(sp, testandset, name, type)
 
 #define	ATOMIC_SAN_FUNCS(name, type)					\
 	_ATOMIC_SAN_FUNCS(SAN_INTERCEPTOR_PREFIX, name, type)
@@ -111,6 +113,7 @@ ATOMIC_SAN_FUNCS(8, uint8_t);
 ATOMIC_SAN_FUNCS(16, uint16_t);
 ATOMIC_SAN_FUNCS(32, uint32_t);
 ATOMIC_SAN_FUNCS(64, uint64_t);
+ATOMIC_SAN_THREAD_FENCE(SAN_INTERCEPTOR_PREFIX);
 
 #ifndef SAN_RUNTIME