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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |aldyh at gcc dot gnu.org

--- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> ---
SCEV info is wrecked by copyprop in this case which does

 u1 (int hu, int nd)
 {
   int ex.0_1;
@@ -36,10 +41,9 @@
   <bb 11> [local count: 64191087]:

   <bb 6> [local count: 118111600]:
-  # hu_10 = PHI <hu_5(11), hu_5(12)>

   <bb 7> [local count: 1073741824]:
-  # hu_4 = PHI <hu_10(6), hu_9(5)>
+  # hu_4 = PHI <hu_5(6), hu_9(5)>
   _2 = (long int) hu_4;
   _3 = (void (*<T321>) (int, int)) _2;
   if (_3 < u1)

caused by Aldys refactoring which lost a "changed" setting by too much
C++-ification.  Also looks like propagating into PHI args is now done twice?!

Testing patch.

Reply via email to