Page MenuHomeFreeBSD

D53232.id164833.diff
No OneTemporary

D53232.id164833.diff

diff --git a/sys/riscv/include/atomic.h b/sys/riscv/include/atomic.h
--- a/sys/riscv/include/atomic.h
+++ b/sys/riscv/include/atomic.h
@@ -37,10 +37,11 @@
#include <sys/atomic_common.h>
-#define fence() __asm __volatile("fence" ::: "memory");
-#define mb() fence()
-#define rmb() fence()
-#define wmb() fence()
+#define _fence(PRE, SUC) __asm __volatile("fence "#PRE","#SUC ::: "memory");
+#define fence() _fence(iorw, iorw)
+#define mb() _fence(rw, rw)
+#define rmb() _fence(r, r)
+#define wmb() _fence(w, w)
static __inline int atomic_cmpset_8(__volatile uint8_t *, uint8_t, uint8_t);
static __inline int atomic_fcmpset_8(__volatile uint8_t *, uint8_t *, uint8_t);

File Metadata

Mime Type
text/plain
Expires
Mon, Jun 22, 6:05 AM (4 h, 4 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
34176613
Default Alt Text
D53232.id164833.diff (677 B)

Event Timeline