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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |ptomsich at gcc dot gnu.org
           Keywords|                            |wrong-code
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2026-03-04
     Ever confirmed|0                           |1

--- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> ---
sbitmaps need to be zeroed before use (or explicitly initialized for each bit).
process_store_forwarding clearly accesses forwarded_bytes before doing so.

Like the following?

diff --git a/gcc/avoid-store-forwarding.cc b/gcc/avoid-store-forwarding.cc
index f9c43a2ec46..a41955477d6 100644
--- a/gcc/avoid-store-forwarding.cc
+++ b/gcc/avoid-store-forwarding.cc
@@ -177,6 +177,7 @@ process_store_forwarding (vec<store_fwd_info> &stores,
rtx_insn *load_insn,
      by later stores.  */

   auto_sbitmap forwarded_bytes (load_size);
+  bitmap_clear (forwarded_bytes);
   unsigned int i;
   store_fwd_info* it;
   auto_vec<store_fwd_info> redundant_stores;

Reply via email to