Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 8 Aug 2007 16:57:51 GMT
From:      Oleksandr Tymoshenko <gonzo@FreeBSD.org>
To:        Perforce Change Reviews <perforce@FreeBSD.org>
Subject:   PERFORCE change 124907 for review
Message-ID:  <200708081657.l78GvpkZ092009@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=124907

Change 124907 by gonzo@gonzo_jeeves on 2007/08/08 16:57:09

	o Make gcc happy by casting arguments for atomic_XXX_long ops.

Affected files ...

.. //depot/projects/mips2/src/sys/mips/include/atomic.h#5 edit

Differences ...

==== //depot/projects/mips2/src/sys/mips/include/atomic.h#5 (text+ko) ====

@@ -214,24 +214,35 @@
 #define	atomic_fetchadd_32	atomic_fetchadd_int
 
 /* Operations on longs. */
-#define	atomic_set_long			atomic_set_int
-#define	atomic_set_acq_long		atomic_set_acq_int
-#define	atomic_set_rel_long		atomic_set_rel_int
-#define	atomic_clear_long		atomic_clear_int
-#define	atomic_clear_acq_long		atomic_clear_acq_int
-#define	atomic_clear_rel_long		atomic_clear_rel_int
-#define	atomic_add_long			atomic_add_int
-#define	atomic_add_acq_long		atomic_add_acq_int
-#define	atomic_add_rel_long		atomic_add_rel_int
-#define	atomic_subtract_long		atomic_subtract_int
-#define	atomic_subtract_acq_long	atomic_subtract_acq_int
-#define	atomic_subtract_rel_long	atomic_subtract_rel_int
-#define	atomic_load_acq_long		atomic_load_acq_int
-#define	atomic_store_rel_long		atomic_store_rel_int
-#define	atomic_cmpset_long		atomic_cmpset_int
-#define	atomic_cmpset_acq_long		atomic_cmpset_acq_int
-#define	atomic_cmpset_rel_long		atomic_cmpset_rel_int
-#define	atomic_readandclear_long	atomic_readandclear_int
+#define	atomic_add_long(p, v) \
+	atomic_add_32((volatile u_int *)(p), (u_int)(v))
+#define atomic_add_acq_long		atomic_add_long
+#define atomic_add_rel_long		atomic_add_long
+#define	atomic_subtract_long(p, v) \
+	atomic_subtract_32((volatile u_int *)(p), (u_int)(v))
+#define atomic_subtract_acq_long	atomic_subtract_long
+#define atomic_subtract_rel_long	atomic_subtract_long
+#define	atomic_clear_long(p, v) \
+	atomic_clear_32((volatile u_int *)(p), (u_int)(v))
+#define atomic_clear_acq_long		atomic_clear_long
+#define atomic_clear_rel_long		atomic_clear_long
+#define	atomic_set_long(p, v) \
+	atomic_set_32((volatile u_int *)(p), (u_int)(v))
+#define atomic_set_acq_long		atomic_set_long
+#define atomic_set_rel_long		atomic_set_long
+#define	atomic_cmpset_long(dst, old, new) \
+	atomic_cmpset_32((volatile u_int *)(dst), (u_int)(old), (u_int)(new))
+#define atomic_cmpset_acq_long		atomic_cmpset_long
+#define atomic_cmpset_rel_long		atomic_cmpset_long
+#define	atomic_fetchadd_long(p, v) \
+	atomic_fetchadd_32((volatile u_int *)(p), (u_int)(v))
+#define	atomic_readandclear_long(p) \
+	atomic_readandclear_long((volatile u_int *)(p))
+#define	atomic_load_long(p) \
+	atomic_load_32((volatile u_int *)(p))
+#define atomic_load_acq_long		atomic_load_long
+#define	atomic_store_rel_long(p, v) \
+	atomic_store_rel_32((volatile u_int *)(p), (u_int)(v))
 
 /* Operations on pointers. */
 #define	atomic_set_ptr		atomic_set_long



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200708081657.l78GvpkZ092009>