This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug rtl-optimization/38281] [4.4 Regression] ice: Segmentation fault



------- Comment #3 from pinskia at gcc dot gnu dot org  2008-11-27 01:00 -------
This patch fixes the ICE:
Index: combine.c
===================================================================
--- combine.c   (revision 142231)
+++ combine.c   (working copy)
@@ -12575,7 +12575,7 @@ distribute_notes (rtx notes, rtx from_in
                place = from_insn;
              else if (reg_referenced_p (XEXP (note, 0), PATTERN (i3)))
                place = i3;
-             else if (i2 != 0 && next_nonnote_insn (i2) == i3
+             else if (i2 != 0 && INSN_P (i2) && next_nonnote_insn (i2) == i3
                       && reg_referenced_p (XEXP (note, 0), PATTERN (i2)))
                place = i2;
              else if ((rtx_equal_p (XEXP (note, 0), elim_i2)

--- CUT ---
At -O1, g_243 > l_261 is not optimized to 0 at the tree level but the RTL level
which allows combine the ability to optimize the divide.


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|0                           |1
   Last reconfirmed|0000-00-00 00:00:00         |2008-11-27 01:00:40
               date|                            |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38281


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]