I've been reading quite a few question on SO regarding code execution guarantees in optimised code, so I'm trying to compile a list of reasons as to what allows/stops the compiler from reordering code sequence.I've been reading quite a few question on SO re