https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89018
--- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> --- I will be submitting a patch for negative_max in the next couple of days. I get: _8 = MAX_EXPR <a_2(D), b_3(D)>; iftmp.0_1 = -_8; After phiopt1 after my patches. The other two are harder though.