From 9b6687bbc6a3e2866fdfd8ac3c725138d4c7ecbf Mon Sep 17 00:00:00 2001
From: Andy McFadden
The “loop_until” seen in previous examples has been expanded to show the load of B into reg0. reg1 is assigned the numeric value 8, and reg2 is loaded from -the address [A+reg1] (same location that thread 1 is accessing).
+the address [A+reg1] (the same location that thread 1 is accessing).This will not behave correctly because the load from B could be observed after the load from [A+reg1]. We can fix this with a load/load barrier after @@ -640,7 +640,7 @@ the loop, but on ARM we can also just do this:
A = 41
+[A+8] = 41
store/store barrier
B = 1 // “A is ready”
loop: