Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: added reordering matrix

...

Wiki Markup
"Finally, note that the actual execution order of instructions and memory accesses can be in any order as long as the actions of the thread appear to that thread as if program order were followed, and provided all values read are allowed for by the memory model. This allows the programmer to fully understand the semantics of the programs they write, and it allows compiler writers and virtual machine implementors to perform complex optimizations that a simpler memory model would not permit." \[[JPL 06|AA. Java References#JPL 06]\]. 

Wiki Markup
The possible reorderings between {{volatile}} and nonvolatile variables are summarized in the matrix shown below. The load and store operations correspond to read and write operations that use the variable. \[[Lea 08|AA. Java References#Lea 08]\]

Image Added

Noncompliant Code Example

...