https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79958

Jeffrey A. Law <law at redhat dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |law at redhat dot com

--- Comment #3 from Jeffrey A. Law <law at redhat dot com> ---
Even if we were to follow both paths, only one path has the necessary clobbers
that would allow DSE to optimize away the assignment.

One could make an argument that a call to __builtin_abort should be generating
the necessary clobbers, or that they should be implicit.

If we were to fix the clobbers so that they existed on both paths, then ISTM
that we have to prove that the store is dead on all paths from the store.  If
it is only dead on some paths then it ought to be a candidate for sinking. 
This might argue that DSE and sinking should be sharing more infrastructure.

Anyway, seems like GCC 9 or later work.

Reply via email to