diff options
author | liuhongt <hongtao.liu@intel.com> | 2021-06-16 17:34:43 +0800 |
---|---|---|
committer | liuhongt <hongtao.liu@intel.com> | 2021-06-22 10:40:11 +0800 |
commit | e08a125b208e717f99caa991052537305ca75b6a (patch) | |
tree | ec363835ab057252d5648807ab2180610442a92a /gcc/modulo-sched.c | |
parent | f51618f301664d02cc41205f1386c0c9b9a29a54 (diff) | |
download | gcc-e08a125b208e717f99caa991052537305ca75b6a.zip gcc-e08a125b208e717f99caa991052537305ca75b6a.tar.gz gcc-e08a125b208e717f99caa991052537305ca75b6a.tar.bz2 |
Add vect_recog_popcount_pattern to handle mismatch between the vectorized popcount IFN and scalar popcount builtin.
The patch remove those pro- and demotions when backend support direct
optab.
For i386: it enables vectorization for vpopcntb/vpopcntw and optimized
for vpopcntq.
gcc/ChangeLog:
PR tree-optimization/97770
* tree-vect-patterns.c (vect_recog_popcount_pattern):
New.
(vect_recog_func vect_vect_recog_func_ptrs): Add new pattern.
gcc/testsuite/ChangeLog:
PR tree-optimization/97770
* gcc.target/i386/avx512bitalg-pr97770-1.c: Remove xfail.
* gcc.target/i386/avx512vpopcntdq-pr97770-1.c: Remove xfail.
Diffstat (limited to 'gcc/modulo-sched.c')
0 files changed, 0 insertions, 0 deletions