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

--- Comment #2 from Yuri Rumyantsev <ysrumyan at gmail dot com> ---
My patch is responsible for ICE - I did not assume that before if-convert phase
cfg may contain redundant degenerative conditional branches:

    <bb 4>:
...
    _14 = d[pretmp_51];
    if (_14 != 0)
      goto <bb 6>;
    else
      goto <bb 5>;

  }
  bb_5 (preds = {bb_4 }, succs = {bb_6 })
  {
    <bb 5>:

  }
  bb_6 (preds = {bb_5 bb_4 }, succs = {bb_10 bb_7 })

I deleted wrong assert and slightly changed code to set up predicate for join
bb conditionally. With this fix test is compiled successfully.

The patch was sent to GCC community for review.

Reply via email to