[Bug tree-optimization/102579] Failure to optimize out allocation if volatile read to a local is present in the middle

2021-10-04 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102579 --- Comment #4 from Richard Biener --- Ah, so the idea is that we want to avoid re-ordering volatile accesses even if they do not alias. Note the global var case is handled because we're going the mark_all_reaching_defs_necessary way here but t

[Bug tree-optimization/102579] Failure to optimize out allocation if volatile read to a local is present in the middle

2021-10-04 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102579 --- Comment #3 from Richard Biener --- Well, the issue is simply that we don't remove the volatile load and the call to 'new' is thought to possibly be a definition of 'd' via stmt_may_clobber_ref_p_1 which is because there's a volatile_p check