On Tue, Dec 14, 2021 at 10:46:39AM +0000, Joel Hutton wrote: > > + if (ot_plus == unknown_optab > > + || ot_minus == unknown_optab > > + || optab_handler (ot_minus, TYPE_MODE (step_vectype)) == > > CODE_FOR_nothing > > + || optab_handler (ot_plus, TYPE_MODE (step_vectype)) == > > + CODE_FOR_nothing) > > return false; > > > > Won't optab_handler just return CODE_FOR_nothing for unknown_optab? > > I was taking the check used in directly_supported_p > > return (optab != unknown_optab$ > && optab_handler (optab, TYPE_MODE (type)) != CODE_FOR_nothing);$ > > > Anyway, I think best would be to write it as: > > if (!target_supports_op_p (step_vectype, PLUS_EXPR, optab_default) > > || !target_supports_op_p (step_vectype, MINUS_EXPR, optab_default)) > > return false; > Looks good to me. > > Patch attached. > > Tests running on gcc-11 on aarch64. > > Ok for 11 once tests come back?
Yes, thanks. Jakub