From 936150c05957ff6ab99047f70695417aff1cfb29 Mon Sep 17 00:00:00 2001
From: Andrew Waterman <andrew@sifive.com>
Date: Wed, 7 Feb 2018 20:12:45 -0800
Subject: Add commentary about LR/SC forward-progress guarantee

---
 src/a.tex | 5 +++++
 1 file changed, 5 insertions(+)

(limited to 'src/a.tex')

diff --git a/src/a.tex b/src/a.tex
index c0e466b..e4eb185 100644
--- a/src/a.tex
+++ b/src/a.tex
@@ -202,6 +202,11 @@ that can be spent in the sequence.  Floating-point operations and
 integer multiply/divide were disallowed to simplify the operating
 system's emulation of these instructions on implementations lacking
 appropriate hardware support.
+
+Although software is not forbidden from using LR/SC sequences that do not meet
+the forward-progress constraints, portable software must detect the case that
+the sequence repeatedly fails, then fall back to an alternate code sequence
+that does not run afoul of the forward-progress constraints.
 \end{commentary}
 
 An implementation can reserve an arbitrary subset of the memory space
-- 
cgit v1.1

