]> git.ipfire.org Git - thirdparty/gcc.git/commit
aarch64: Move and generalise vect_all_same
authorRichard Sandiford <richard.sandiford@arm.com>
Mon, 27 Nov 2023 14:44:02 +0000 (14:44 +0000)
committerRichard Sandiford <richard.sandiford@arm.com>
Mon, 27 Nov 2023 14:44:02 +0000 (14:44 +0000)
commit31e9074977bb7de83fa5d28d286323987d5d87f2
tree01416ccbed7f3f35dafd883c897417378fe3ee4d
parentf7884f7673444b8a2c10ea0981d480f2e82dd16a
aarch64: Move and generalise vect_all_same

The fix for PR106329 needs a way of testing for a ptrue of a particular
element size.  We already had such a function for svlast, so this patch
moves it to common code and generalises it to work with all kinds of
vectors.

gcc/
* config/aarch64/aarch64-sve-builtins.h (vector_cst_all_same): Declare.
* config/aarch64/aarch64-sve-builtins.cc (vector_cst_all_same): New
function, a generalized replacement of...
* config/aarch64/aarch64-sve-builtins-base.cc
(svlast_impl::vect_all_same): ...this.
(svlast_impl::fold): Update accordingly.
gcc/config/aarch64/aarch64-sve-builtins-base.cc
gcc/config/aarch64/aarch64-sve-builtins.cc
gcc/config/aarch64/aarch64-sve-builtins.h