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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |wrong-debug
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2019-02-26
            Version|unknown                     |9.0
     Ever confirmed|0                           |1
           Severity|enhancement                 |normal

--- Comment #3 from Richard Biener <rguenth at gcc dot gnu.org> ---
stmt removal should generate a # DEBUG i = NULL note but eventually removal
inside a CFG cycle is awkward enough that this doesn't work reliably.  In
fact we seem to get an extra = 0 note, likely from the attempt to generate
a i => i_5 one.

--- t.i.036t.dse1       2019-02-26 09:46:03.325257454 +0100
+++ t.i.037t.cddce1     2019-02-26 09:46:03.329257503 +0100
...
@@ -24,22 +52,10 @@
   if (a.1_3 <= 9)
     goto <bb 3>; [INV]
   else
-    goto <bb 6>; [INV]
-
-  <bb 5> :
-  # DEBUG BEGIN_STMT
-  i_11 = i_5 + 1;
-  # DEBUG i => i_11
-
-  <bb 6> :
-  # i_5 = PHI <i_11(5), 0(4)>
-  # DEBUG i => i_5
-  if (i_5 != 6)
     goto <bb 5>; [INV]
-  else
-    goto <bb 7>; [INV]

-  <bb 7> :
+  <bb 5> :
+  # DEBUG i => 0
   # DEBUG BEGIN_STMT
   optimize_me_not ();
   return 0;

Reply via email to