[cpp-threads] Brief example SPARC RMO Implementation for C/C++ Memory Model
Alexander Terekhov
alexander.terekhov at gmail.com
Sat Dec 27 18:53:44 GMT 2008
(cmpxchg aside for a moment)
Load Relaxed: ld
Load Consume: ld
Load Acquire: ld, membar #LoadLoad|#LoadStore
Load Seq_Cst: membar #StoreLoad|#LoadLoad,ld,membar #LoadLoad|#LoadStore
Store Relaxed: st
Store Release: membar #StoreStore|#LoadStore,st
Store Seq Cst: membar #StoreStore|#LoadStore,st,membar #StoreStore|#StoreLoad
Consume Fence: <ignore>
Acquire Fence: membar #LoadLoad|#LoadStore
Release Fence: membar #StoreStore|#LoadStore
Acq_Rel Fence: membar #LoadLoad|#LoadStore|#StoreStore
Seq_Cst Fence: membar #LoadLoad|#LoadStore|#StoreStore|#StoreLoad
Any objections and/or questions?
TIA.
regards,
alexander.
More information about the cpp-threads
mailing list