]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
gcse.c (hash_scan_set): If the next nonnote insn is in a different basic block insert...
authorRichard Guenther <rguenther@suse.de>
Thu, 11 Oct 2007 09:46:04 +0000 (09:46 +0000)
committerRichard Biener <rguenth@gcc.gnu.org>
Thu, 11 Oct 2007 09:46:04 +0000 (09:46 +0000)
2007-10-11  Richard Guenther  <rguenther@suse.de>

* gcse.c (hash_scan_set): If the next nonnote insn is in
a different basic block insert the set.

From-SVN: r129230

gcc/ChangeLog
gcc/gcse.c

index e737cb70229ed052b56c05d8229a57bd337fc77e..730949bb81b0ec92c2530ac35bc8bf38e43ba15f 100644 (file)
@@ -1,3 +1,8 @@
+2007-10-11  Richard Guenther  <rguenther@suse.de>
+
+       * gcse.c (hash_scan_set): If the next nonnote insn is in
+       a different basic block insert the set.
+
 2007-10-11  Richard Guenther  <rguenther@suse.de>
 
        PR middle-end/33724
index 6f308c22e7155d379ac6c8f58d79197b98c9d512..79aa8afd31dd7656bf5cfcc9a2072a4bc9e7efec 100644 (file)
@@ -1761,6 +1761,7 @@ hash_scan_set (rtx pat, rtx insn, struct hash_table *table)
                  oprs_available_p searches from INSN on.  */
               && (insn == BB_END (BLOCK_FOR_INSN (insn))
                   || (tmp = next_nonnote_insn (insn)) == NULL_RTX
+                  || BLOCK_FOR_INSN (tmp) != BLOCK_FOR_INSN (insn)
                   || oprs_available_p (pat, tmp)))
        insert_set_in_table (pat, insn, table);
     }