Skip to content

Instantly share code, notes, and snippets.

@travisdowns
Last active March 19, 2019 17:12
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save travisdowns/9f650b9a6bd91163501dd9f2109dfd08 to your computer and use it in GitHub Desktop.
Save travisdowns/9f650b9a6bd91163501dd9f2109dfd08 to your computer and use it in GitHub Desktop.
An example of an allowed outcome not explained solely by StoreLoad reordering (i.e., could not occur on
a system with a total store order and only StoreLoad reordering).
all memory initially zero
thread 1:
mov [x], 1
mov a, [x]
mov b, [y]
thread 2:
mox [y], 1
mov c, [y]
mov d, [x]
allowed: a == 1 && b == 0 && c == 1 && d == 0
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment