aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Waterman <andrew@sifive.com>2019-09-28 16:52:31 +0200
committerAndrew Waterman <andrew@sifive.com>2020-10-17 14:43:15 -0700
commiteeaed2ccd292ea8668b5c1db4d5ce54e7432cfba (patch)
tree693cf962d7e067a84fa54cf1dbcf2fb69b626db1
parentea9410a6a5ea2b7cabfbef1ed0bf3507bb784c36 (diff)
downloadriscv-isa-manual-eeaed2ccd292ea8668b5c1db4d5ce54e7432cfba.zip
riscv-isa-manual-eeaed2ccd292ea8668b5c1db4d5ce54e7432cfba.tar.gz
riscv-isa-manual-eeaed2ccd292ea8668b5c1db4d5ce54e7432cfba.tar.bz2
Add note about PAUSE and LR/SC forward progress
-rw-r--r--src/zihintpause.tex3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/zihintpause.tex b/src/zihintpause.tex
index 82b62a7..047a04e 100644
--- a/src/zihintpause.tex
+++ b/src/zihintpause.tex
@@ -29,6 +29,9 @@ memory transactions have completed.
Because the successor set is null, however, PAUSE does not {\em mandate} any
particular memory ordering---hence, it truly is a HINT.
+Like other FENCE instructions, PAUSE cannot be used within LR/SC sequences
+without voiding the forward-progress guarantee.
+
The choice of a predecessor set of W is arbitrary, since the successor set is
null.
Other HINTs similar to PAUSE might be encoded with other predecessor sets.