I agree with Richard's comments, but a couple more: Robin Dapp <rdapp....@gmail.com> writes: > @@ -362,6 +363,23 @@ add_mask_and_len_args (expand_operand *ops, unsigned int > opno, gcall *stmt) > > create_input_operand (&ops[opno++], mask_rtx, > TYPE_MODE (TREE_TYPE (mask))); > +
Nit: unnecessary blank line. > [...] > +/* Return true if the else value ELSE_VAL (one of MASK_LOAD_ELSE_ZERO, > + MASK_LOAD_ELSE_M1, and MASK_LOAD_ELSE_UNDEFINED) is valid fo the optab > + referred to by ICODE. The index of the else operand must be specified > + in ELSE_INDEX. */ > + > +bool > +supported_else_val_p (enum insn_code icode, unsigned else_index, int > else_val) > +{ > + if (else_val != MASK_LOAD_ELSE_ZERO && else_val != MASK_LOAD_ELSE_M1 > + && else_val != MASK_LOAD_ELSE_UNDEFINED) > + __builtin_unreachable (); gcc_unreachable (), so that it's a noisy failure when checking is enabled (and so that it works on host compilers that don't provide __builtin_unreachable). Thanks, Richard