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

--- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
There could be some issues with the removal of the forwarder block messing up
the count still.
One thing I had noticed is removing the forwarder block vs doing bb merge, the
counts got messed up.

Which is why I added this:
```
  /* If this bb has a single predecessor and that predecssor
     has a single successor, this bb will be merged with the
     predecessor so ignore it for removing of the forwarder block. */
  if (single_pred_p (bb)
      && single_succ_p (single_pred_edge (bb)->src))
    return false;
```

Let try to remove that and maybe fix up the count there. Maybe that will fix
this case.

Reply via email to