/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copied from the kernel sources to tools/arch/riscv: * * Copyright (C) 2012 ARM Ltd. * Copyright (C) 2013 Regents of the University of California * Copyright (C) 2017 SiFive
*/
/* These barriers need to enforce ordering on both devices and memory. */ #define mb() RISCV_FENCE(iorw, iorw) #define rmb() RISCV_FENCE(ir, ir) #define wmb() RISCV_FENCE(ow, ow)
/* These barriers do not need to enforce ordering on devices, just memory. */ #define smp_mb() RISCV_FENCE(rw, rw) #define smp_rmb() RISCV_FENCE(r, r) #define smp_wmb() RISCV_FENCE(w, w)
#define smp_store_release(p, v) \ do { \
RISCV_FENCE(rw, w); \
WRITE_ONCE(*p, v); \
} while (0)
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.