https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94665
--- Comment #5 from Segher Boessenkool <segher at gcc dot gnu.org> --- Can you show the -fdump-rtl-combine-all dump where that insn is created? It is fine to generate min or max insns here; but you need to handle the case where vara is NaN: you should return that NaN then. Other than that your function is just the max of vara, varb, varc.