https://gcc.gnu.org/bugzilla/show_bug.cgi?id=116747
--- Comment #16 from Richard Biener <rguenth at gcc dot gnu.org> --- Btw, the "missing" write-after-write dependence is because the ref is outside of array bounds so the alias oracle computes a max_size for the access of zero and thus no aliasing. I guess thats OK (while unexpected but UB). Note sinking doesn't really need to compute all-all dependences but computing dependences with the refs we sink through would be enough, also noting that we do (should) not re-order ref pairs we sink and thus dependences between the ref pair refs should be OK. So much to improve in this code ;)