diff options
author | jiwang <jiwang@138bc75d-0d04-0410-961f-82ee72b054a4> | 2014-11-21 16:56:21 +0000 |
---|---|---|
committer | jiwang <jiwang@138bc75d-0d04-0410-961f-82ee72b054a4> | 2014-11-21 16:56:21 +0000 |
commit | caa5509eb09ac5b5e6d26730c3907f6ab78b0929 (patch) | |
tree | ca2c3409b6bd33675545ecdcd44e19a830238f28 /gcc/config/aarch64/aarch64-simd-builtins.def | |
parent | 4e8a08d4ad626912106f6fbad06dfc2c7d367498 (diff) | |
download | gcc-caa5509eb09ac5b5e6d26730c3907f6ab78b0929.tar.gz |
[AArch64] Add vector pattern for __builtin_ctz
gcc/
* config/aarch64/iterators.md (VS): New mode iterator.
(vsi2qi): New mode attribute.
(VSI2QI): Likewise.
* config/aarch64/aarch64-simd-builtins.def: New entry for ctz.
* config/aarch64/aarch64-simd.md (ctz<mode>2): New pattern for ctz.
* config/aarch64/aarch64-builtins.c
(aarch64_builtin_vectorized_function): Support BUILT_IN_CTZ.
gcc/testsuite/
* gcc.target/aarch64/vect_ctz_1.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@217938 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/aarch64/aarch64-simd-builtins.def')
-rw-r--r-- | gcc/config/aarch64/aarch64-simd-builtins.def | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/config/aarch64/aarch64-simd-builtins.def b/gcc/config/aarch64/aarch64-simd-builtins.def index 545c7da935e..936b671163d 100644 --- a/gcc/config/aarch64/aarch64-simd-builtins.def +++ b/gcc/config/aarch64/aarch64-simd-builtins.def @@ -45,6 +45,7 @@ BUILTIN_VD_BHSI (BINOP, addp, 0) VAR1 (UNOP, addp, 0, di) BUILTIN_VDQ_BHSI (UNOP, clz, 2) + BUILTIN_VS (UNOP, ctz, 2) /* be_checked_get_lane does its own lane swapping, so not a lane index. */ BUILTIN_VALL (GETREG, be_checked_get_lane, 0) |