diff options
author | Joel Hutton <joel.hutton@arm.com> | 2021-02-11 14:59:26 +0000 |
---|---|---|
committer | Joel Hutton <joel.hutton@arm.com> | 2021-02-11 15:04:59 +0000 |
commit | 4af29981ab57ad7ef4467e371e4145cce9c16eaa (patch) | |
tree | a462a2e43e923cb3cab8caa4694f51e53dff6519 /gcc/opts.c | |
parent | ff6903288d96aa1d28ae4912b1270985475f3ba8 (diff) | |
download | gcc-4af29981ab57ad7ef4467e371e4145cce9c16eaa.zip gcc-4af29981ab57ad7ef4467e371e4145cce9c16eaa.tar.gz gcc-4af29981ab57ad7ef4467e371e4145cce9c16eaa.tar.bz2 |
[aarch64][vect] Support V8QI->V8HI WIDEN_ patterns
In the case where 8 out of every 16 elements are widened using a
widening pattern and the next 8 are skipped, the patterns are not
recognized. This is because they are normally used in a pair, such as
VEC_WIDEN_MINUS_HI/LO, to achieve a v16qi->v16hi conversion for example.
This patch adds support for V8QI->V8HI patterns.
gcc/ChangeLog:
PR tree-optimization/98772
* optabs-tree.c (supportable_half_widening_operation): New function
to check for supportable V8QI->V8HI widening patterns.
* optabs-tree.h (supportable_half_widening_operation): New function.
* tree-vect-stmts.c (vect_create_half_widening_stmts): New function
to create promotion stmts for V8QI->V8HI widening patterns.
(vectorizable_conversion): Add case for V8QI->V8HI.
gcc/testsuite/ChangeLog:
PR tree-optimization/98772
* gcc.target/aarch64/pr98772.c: New test.
Diffstat (limited to 'gcc/opts.c')
0 files changed, 0 insertions, 0 deletions