[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [RFC 19/38] tcg: add tcg_gen_smp_rmb()
From: |
Emilio G. Cota |
Subject: |
[Qemu-devel] [RFC 19/38] tcg: add tcg_gen_smp_rmb() |
Date: |
Sun, 23 Aug 2015 20:23:48 -0400 |
Signed-off-by: Emilio G. Cota <address@hidden>
---
tcg/tcg-op.h | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/tcg/tcg-op.h b/tcg/tcg-op.h
index 52482c0..3ec9f13 100644
--- a/tcg/tcg-op.h
+++ b/tcg/tcg-op.h
@@ -716,6 +716,16 @@ static inline void tcg_gen_fence_full(void)
tcg_gen_op0(&tcg_ctx, INDEX_op_fence_full);
}
+#if defined(__i386__) || defined(__x86_64__) || defined(__s390x__)
+static inline void tcg_gen_smp_rmb(void)
+{ }
+#else
+static inline void tcg_gen_smp_rmb(void)
+{
+ tcg_gen_fence_load();
+}
+#endif
+
/* QEMU specific operations. */
#ifndef TARGET_LONG_BITS
--
1.9.1
- [Qemu-devel] [RFC 30/38] translate-all: add tb_lock assertions, (continued)
- [Qemu-devel] [RFC 36/38] cputlb: use tcg_sched_work for tlb_flush_page_all, Emilio G. Cota, 2015/08/23
- [Qemu-devel] [RFC 35/38] cputlb: use cpu_tcg_sched_work for tlb_flush_all, Emilio G. Cota, 2015/08/23
- [Qemu-devel] [RFC 34/38] translate-all: use tcg_sched_work for tb_flush, Emilio G. Cota, 2015/08/23
- [Qemu-devel] [RFC 19/38] tcg: add tcg_gen_smp_rmb(),
Emilio G. Cota <=
- [Qemu-devel] [RFC 22/38] cpu: update interrupt_request atomically, Emilio G. Cota, 2015/08/23
[Qemu-devel] [RFC 31/38] cpu: protect l1_map with tb_lock in full-system mode, Emilio G. Cota, 2015/08/23
[Qemu-devel] [RFC 27/38] cpu-exec: convert tb_invalidated_flag into a per-TB flag, Emilio G. Cota, 2015/08/23
[Qemu-devel] [RFC 33/38] cpu: introduce cpu_tcg_sched_work to run work while other CPUs sleep, Emilio G. Cota, 2015/08/23