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

--- Comment #6 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
Hmm, shouldn't we convert:
  _24 = MAX_EXPR <n_in_31, n_out_32>;
  if (_24 < _tmp0_27(D))
    goto <bb 4>; [94.50%]
  else
    goto <bb 5>; [5.50%]

  <bb 4> [local count: 906139990]:
  _25 = MAX_EXPR <n_in1_33, n_out1_34>;
  if (_25 < _tmp0_27(D))
    goto <bb 3>; [94.50%]
  else
    goto <bb 5>; [5.50%]
Which is:

if (MAX_EXPR <n_in_31, n_out_32> < _tmp0_27 && MAX_EXPR <n_in1_33, n_out1_34> <
_tmp0_27) goto 3 else goto 5

Into:
if (MAX_EXPR<MAX_EXPR <n_in_31, n_out_32>, MAX_EXPR <n_in1_33, n_out1_34> > <
_tmp0_27)  goto 3 else goto 5

Also? To simplify things a little more?

Reply via email to