24 “Ztso” Standard Extension for Total Store Ordering, v0.1
This chapter defines the “Ztso” extension for the RISC-V Total Store Ordering (RVTSO) memory consistency model. RVTSO is defined as a delta from RVWMO, which is defined in Chapter [sec:rvwmo].
RVTSO makes the following adjustments to RVWMO:
All load operations behave as if they have an acquire-RCpc annotation
All store operations behave as if they have a release-RCpc annotation.
All AMOs behave as if they have both acquire-RCsc and release-RCsc annotations.
In spite of the fact that Ztso adds no new instructions to the ISA, code written assuming RVTSO will not run correctly on implementations not supporting Ztso. Binaries compiled to run only under Ztso should indicate as such via a flag in the binary, so that platforms which do not implement Ztso can simply refuse to run them.