RISC-V fence.tso FENCE Encoding Details
FENCE encoding spellingfence.tso is a TSO memory-ordering spelling encoded as the FENCE TSO/fm=1000, pred=rw, succ=rw form. It expresses TSO-style ordering and is not merely the ordinary textual form fence rw,rw.
What This Encoding Spelling Expresses
Provides the standard FENCE encoding for TSO-style ordering, making a more specific memory-ordering intent portable compared with a plain fence rw,rw.
Official Semantics Checklist
Availability And Extension Conditions
- FENCE instruction encoding space
- RVWMO memory-model semantics
- Uses the FENCE TSO encoding with fm=1000, pred=rw, succ=rw
- Not an extra fence-tso opcode; it is the standard assembly spelling of a FENCE form.
How To Read The Expansion
What You May See In objdump / Disassembly
Official References And Reading Order
This page treats fence.tso as the standard assembly spelling of a FENCE encoding: read the encoding fields first, then use the Unprivileged ISA FENCE/FENCE.TSO and RVWMO sections for ordering semantics.
When To Think Of It First
Pitfalls / Common Confusions
FAQ
Is fence-tso a real RISC-V instruction?
fence.tso is the TSO encoding spelling of the FENCE instruction, not an extra fence-tso hardware opcode. The expansion/encoding fields on this page explain how real FENCE semantics execute it.
What is the main trap when using fence-tso?
fence.tso is an assembly spelling of a real FENCE encoding, not a textual synonym for ordinary fence rw,rw