This is a like-for-like change at the moment, but is a prerequisite for removing mode_for_int_vector.
Tested on aarch64-linux-gnu and applied as r278120. Richard 2019-11-13 Richard Sandiford <richard.sandif...@arm.com> gcc/ * config/aarch64/aarch64-sve-builtins-functions.h (unary_count::expand): Use aarch64_sve_int_mode instead of mode_for_int_vector. Index: gcc/config/aarch64/aarch64-sve-builtins-functions.h =================================================================== --- gcc/config/aarch64/aarch64-sve-builtins-functions.h 2019-10-29 08:59:18.411479577 +0000 +++ gcc/config/aarch64/aarch64-sve-builtins-functions.h 2019-11-13 08:56:37.623467069 +0000 @@ -420,7 +420,7 @@ #define GCC_AARCH64_SVE_BUILTINS_FUNCTIO expand (function_expander &e) const OVERRIDE { /* The md patterns treat the operand as an integer. */ - machine_mode mode = mode_for_int_vector (e.vector_mode (0)).require (); + machine_mode mode = aarch64_sve_int_mode (e.vector_mode (0)); e.args.last () = gen_lowpart (mode, e.args.last ()); if (e.pred == PRED_x)