aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorKrste Asanovic <krste@eecs.berkeley.edu>2018-11-03 20:13:28 -0700
committerKrste Asanovic <krste@eecs.berkeley.edu>2018-11-03 20:13:28 -0700
commita93bf5ddd06d5ff0e9c14c2a38a73c310ca9e3b9 (patch)
tree111881771030348520e95aca8f8f34ac6724edb9 /src
parentc5d84d2ba2a718d172871fff17457719548ae2fe (diff)
downloadriscv-isa-manual-a93bf5ddd06d5ff0e9c14c2a38a73c310ca9e3b9.zip
riscv-isa-manual-a93bf5ddd06d5ff0e9c14c2a38a73c310ca9e3b9.tar.gz
riscv-isa-manual-a93bf5ddd06d5ff0e9c14c2a38a73c310ca9e3b9.tar.bz2
Moved fence.tso out of base ISA chapter and into separate chapter.
Diffstat (limited to 'src')
-rw-r--r--src/riscv-spec.tex1
-rw-r--r--src/rv32.tex18
2 files changed, 2 insertions, 17 deletions
diff --git a/src/riscv-spec.tex b/src/riscv-spec.tex
index 80cd067..c855ccc 100644
--- a/src/riscv-spec.tex
+++ b/src/riscv-spec.tex
@@ -82,6 +82,7 @@ Andrew Waterman and Krste Asanovi\'{c}, RISC-V Foundation, May 2017.
\input{d}
\input{q}
\input{rvwmo}
+\input{zifencetso}
\input{l}
\input{c}
\input{b}
diff --git a/src/rv32.tex b/src/rv32.tex
index 60707dd..6470cb6 100644
--- a/src/rv32.tex
+++ b/src/rv32.tex
@@ -1153,9 +1153,6 @@ FENCE.
\hline
0000 & \em none & Normal Fence \\
\hline
-\multirow{2}{*}{1000} & \multirow{2}{*}{TSO} & With FENCE RW,RW: exclude write-to-read ordering \\
- & & Otherwise: \em Reserved for future use. \\
-\hline
\multicolumn{2}{|c|}{\em other} & \em Reserved for future use. \\
\hline
\end{tabular}
@@ -1167,20 +1164,7 @@ FENCE.
The fence mode field {\em fm} defines the semantics of the FENCE. A
FENCE with {\em fm}=0000 orders all memory operations in its
-predecessor set before all memory operations in its successor set. A
-FENCE.TSO instruction orders all load operations in its predecessor
-set before all memory operations in its successor set, and all store
-operations in its predecessor set before all store operations in its
-successor set. This leaves non-AMO store operations in the
-FENCE.TSO's predecessor set unordered with non-AMO loads in its
-successor set.
-
-\begin{commentary}
- The FENCE.TSO encoding was added as an optional extension to the
- original base FENCE instruction encoding. The base definition
- requires that implementations ignore any set bits and treat the
- FENCE as global, and so this is a backwards-compatible extension.
-\end{commentary}
+predecessor set before all memory operations in its successor set.
The unused fields in the FENCE instructions---{\em rs1} and {\em rd}---are
reserved for finer-grain fences in future extensions. For forward