<div dir="ltr">I forgot to add that we already reported something like that to the gcc developers who fixed it, but the fix is gated behind some obscure command line option: "<span style="color:rgb(0,0,0);font-family:monospace;font-size:medium">--param allow-store-data-race=0</span>"​.<div>
(The issue was found by an automated tool described in our previous paper <a href="http://www.di.ens.fr/~zappa/readings/pldi13.pdf">http://www.di.ens.fr/~zappa/readings/pldi13.pdf</a>).</div><div>Could you retry compiling your code with that parameter ? If the hoisting/sinking disappears then it is definitely unsound in the way I described, and should not be done by LLVM.</div>
<div><br></div><div>Thanks,</div><div>Robin</div></div>