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

--- Comment #1 from Marek Polacek <mpolacek at gcc dot gnu.org> ---
Started with r238754 but removing that match.pd doesn't help, so the problem is
elsewhere.

We optimize away zz1_1(D) != 0:

 __attribute__((fn spec (". w ")))
 void shape_cray (real(kind=4) & restrict zz1)
 {
   integer(kind=8) ptrzz;
-  integer(kind=8) _2;
+  integer(kind=8) _3;

   <bb 2> :
-  _2 = (integer(kind=8)) zz1_1(D);
-  if (zz1_1(D) != 0)
-    goto <bb 3>; [INV]
-  else
-    goto <bb 4>; [INV]
-
-  <bb 3> :
+  _3 = (integer(kind=8)) zz1_1(D);
   _gfortran_abort ();

-  <bb 4> :
-  return;
-
 }

Reply via email to