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

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |ASSIGNED
           Assignee|unassigned at gcc dot gnu.org      |rguenth at gcc dot 
gnu.org

--- Comment #4 from Richard Biener <rguenth at gcc dot gnu.org> ---
It's actually a latent issue, unrelated to bitfields?  We elide the store via

          tree lhs = gimple_get_lhs (stmt);
          ao_ref write;
          ao_ref_init (&write, lhs);

          if (dse_classify_store (&write, stmt, false, NULL, NULL, latch_vdef)
              == DSE_STORE_DEAD)
            delete_dead_or_redundant_assignment (&gsi, "dead");

but that fails to guard against volatiles.

Reply via email to