https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86582
Tom de Vries <vries at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution|--- |DUPLICATE --- Comment #2 from Tom de Vries <vries at gcc dot gnu.org> --- If we change the f1 argument to 5, or we comment out the volatile asm in main, the problem is fixed, but for the test-case as is, we can't do anything more. At Os or O1, the problem doesn't occur, because a is optimized away after tree-dse eliminates the dead store (tree-dse also runs at Og, but doesn't manage to get rid of the dead store because ealias is not run for Og), and the body of the function f1 is very simple and doesn't overwrite the value of the argument i, so there's no need to reference back to the initial value of argument i in main. Contrary to what I thought initially, there's nothing vla specific here, this is a plain duplicate of PR78685. *** This bug has been marked as a duplicate of bug 78685 ***