Author: mjg
Date: Tue Dec  6 14:08:49 2016
New Revision: 309619
URL: https://svnweb.freebsd.org/changeset/base/309619

Log:
  ifndef atomic_cas_* in cddl code in preparation for native implementations
  
  This is a temporary change to not require all architectures to import at once.
  
  Discussed with:       jhb

Modified:
  head/sys/cddl/compat/opensolaris/sys/atomic.h

Modified: head/sys/cddl/compat/opensolaris/sys/atomic.h
==============================================================================
--- head/sys/cddl/compat/opensolaris/sys/atomic.h       Tue Dec  6 13:55:19 
2016        (r309618)
+++ head/sys/cddl/compat/opensolaris/sys/atomic.h       Tue Dec  6 14:08:49 
2016        (r309619)
@@ -41,11 +41,15 @@ extern void atomic_add_64(volatile uint6
 extern void atomic_dec_64(volatile uint64_t *target);
 #endif
 #ifndef __sparc64__
+#ifndef atomic_cas_32
 extern uint32_t atomic_cas_32(volatile uint32_t *target, uint32_t cmp,
     uint32_t newval);
+#endif
+#ifndef atomic_cas_64
 extern uint64_t atomic_cas_64(volatile uint64_t *target, uint64_t cmp,
     uint64_t newval);
 #endif
+#endif
 extern uint64_t atomic_add_64_nv(volatile uint64_t *target, int64_t delta);
 extern uint8_t atomic_or_8_nv(volatile uint8_t *target, uint8_t value);
 extern void membar_producer(void);
@@ -123,6 +127,7 @@ atomic_dec_64_nv(volatile uint64_t *targ
        return (atomic_add_64_nv(target, -1));
 }
 
+#ifndef atomic_cas_ptr
 #if !defined(COMPAT_32BIT) && defined(__LP64__)
 static __inline void *
 atomic_cas_ptr(volatile void *target, void *cmp,  void *newval)
@@ -138,5 +143,6 @@ atomic_cas_ptr(volatile void *target, vo
            (uint32_t)cmp, (uint32_t)newval));
 }
 #endif /* !defined(COMPAT_32BIT) && defined(__LP64__) */
+#endif
 
 #endif /* !_OPENSOLARIS_SYS_ATOMIC_H_ */
_______________________________________________
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to