------- Comment #12 from pinskia at gcc dot gnu dot org  2006-11-12 02:20 
-------
_gfortran_set_std (70, 127, 0);
D.1015 = &C.992;
D.1016 = *D.1014;
if (D.1016 == 0) goto <L0>; else goto <L1>;
D.1014 = (char *) D.1015;


The order of the BB when inlining is just bogus.
Honza, could you look into this bug?
It is correct before inling:
<bb 2>:
  D.995 = (char *) &C.992;
  D.996 = *D.995;
  if (D.996 == 0) goto <L0>; else goto <L1>;

Oh, maybe it is still the regimplification of (char*)&C.992 which is causing
this, &C.992 should be still considered an invarient.


-- 


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

Reply via email to