https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103406
--- Comment #9 from Richard Biener <rguenth at gcc dot gnu.org> ---
simplify_binary_operation_1 has
/* ((-a) + b) -> (b - a) and similarly for (a + (-b)). These
transformations are safe even for IEEE. */
if (GET_CODE (op0) == NEG)
return simplify_gen_binary (MINUS, mode, op1, XEXP (op0, 0));
else if (GET_CODE (op1) == NEG)
return simplify_gen_binary (MINUS, mode, op0, XEXP (op1, 0));
