svn commit: r337434 - head/sys/compat/linuxkpi/common/include/asm

Marius Strobl marius at FreeBSD.org
Tue Aug 7 18:59:03 UTC 2018


Author: marius
Date: Tue Aug  7 18:59:02 2018
New Revision: 337434
URL: https://svnweb.freebsd.org/changeset/base/337434

Log:
  Update the list of architectures having atomic_fcmpset_{8,16,64}(9) and
  atomic_swap_{64,int}(9) respectively as of r337433.

Modified:
  head/sys/compat/linuxkpi/common/include/asm/atomic.h
  head/sys/compat/linuxkpi/common/include/asm/atomic64.h

Modified: head/sys/compat/linuxkpi/common/include/asm/atomic.h
==============================================================================
--- head/sys/compat/linuxkpi/common/include/asm/atomic.h	Tue Aug  7 18:56:51 2018	(r337433)
+++ head/sys/compat/linuxkpi/common/include/asm/atomic.h	Tue Aug  7 18:59:02 2018	(r337434)
@@ -129,9 +129,7 @@ atomic_clear_mask(unsigned int mask, atomic_t *v)
 static inline int
 atomic_xchg(atomic_t *v, int i)
 {
-#if defined(__i386__) || defined(__amd64__) || \
-    defined(__arm__) || defined(__aarch64__) || \
-    defined(__powerpc__)
+#if !defined(__mips__)
 	return (atomic_swap_int(&v->counter, i));
 #else
 	int ret;
@@ -159,7 +157,7 @@ atomic_cmpxchg(atomic_t *v, int old, int new)
 	return (ret);
 }
 
-#if defined(__i386__) || defined(__amd64__)
+#if defined(__amd64__) || defined(__arm64__) || defined(__i386__)
 #define	LINUXKPI_ATOMIC_8(...) __VA_ARGS__
 #define	LINUXKPI_ATOMIC_16(...) __VA_ARGS__
 #else
@@ -167,8 +165,9 @@ atomic_cmpxchg(atomic_t *v, int old, int new)
 #define	LINUXKPI_ATOMIC_16(...)
 #endif
 
-#if defined(__amd64__) || (defined(__ARM_ARCH) && (__ARM_ARCH >= 6)) ||	\
-    defined(__aarch64__) || defined(__powerpc64__) || defined(__riscv)
+#if !(defined(i386) || (defined(__mips__) && !(defined(__mips_n32) ||	\
+    defined(__mips_n64))) || (defined(__powerpc__) &&			\
+    !defined(__powerpc64__)))
 #define	LINUXKPI_ATOMIC_64(...) __VA_ARGS__
 #else
 #define	LINUXKPI_ATOMIC_64(...)

Modified: head/sys/compat/linuxkpi/common/include/asm/atomic64.h
==============================================================================
--- head/sys/compat/linuxkpi/common/include/asm/atomic64.h	Tue Aug  7 18:56:51 2018	(r337433)
+++ head/sys/compat/linuxkpi/common/include/asm/atomic64.h	Tue Aug  7 18:59:02 2018	(r337434)
@@ -107,9 +107,8 @@ atomic64_add_unless(atomic64_t *v, int64_t a, int64_t 
 static inline int64_t
 atomic64_xchg(atomic64_t *v, int64_t i)
 {
-#if defined(__i386__) || defined(__amd64__) || \
-    defined(__arm__) || defined(__aarch64__) || \
-    defined(__powerpc64__)
+#if !((defined(__mips__) && !(defined(__mips_n32) || defined(__mips_n64))) || \
+    (defined(__powerpc__) && !defined(__powerpc64__)))
 	return (atomic_swap_64(&v->counter, i));
 #else
 	int64_t ret;


More information about the svn-src-head mailing list