https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112406
--- Comment #7 from Robin Dapp <rdapp at gcc dot gnu.org> --- Ah, thanks, I can reproduce this on the cfarm/gcc185. We don't expand: vect__ifc__141.81_358 = .COND_ADD (vect_cst__356, vect_GetImageChannelMoments_M00_0_lsm.74_338, { 1.0e+0, ... }, vect_GetImageChannelMoments_M00_0_lsm.74_338); because we cannot legitimize the first operand ([1]): (reg:VNx16QI 247 [ vect_cst__356 ]) while operand[0] is VNx2DFmode (reg:VNx2DF 248 [ vect__ifc__141.81 ]). We only check for the lhs type in ifcvt via vectorized_internal_fn_supported_p. Maybe we need something like ifcvt_can_predicate as well?