Thanks for posting this, this looks really interesting.
one note: >This blog post tries to show how some re-orderings (that may be done in as part of optimizing a Java program for performance) that intuitively seem illegal are, in fact, illegal, by deriving that illegality from directly the JMM spec.
Should the first 'illegal' read legal?