diff options
author | Claudiu Zissulescu <claziss@synopsys.com> | 2021-05-10 09:49:35 +0300 |
---|---|---|
committer | Claudiu Zissulescu <claziss@synopsys.com> | 2021-05-10 09:57:54 +0300 |
commit | 79a27f32df8eab0add722f75332f78fe20d94da3 (patch) | |
tree | 936182eb06c128b5851bbc371e3765926d32d62b /gcc/gcov-iov.c | |
parent | 09ae0f6c3ee0612012a67df4387d55efa19b8cad (diff) | |
download | gcc-79a27f32df8eab0add722f75332f78fe20d94da3.zip gcc-79a27f32df8eab0add722f75332f78fe20d94da3.tar.gz gcc-79a27f32df8eab0add722f75332f78fe20d94da3.tar.bz2 |
arc: Improve vector support for ARCv2.
Add vector negate, reduc_plus_scal, vec_duplicate, vector
min/max/mult/div patterns. Besides vector negate and reduction
patterns, all the others are emulated using scalar instructions. The
reason is taking advantage of the double load/store instructions as
well as enabling the autovectorizer to further analize a loop.
gcc/
2021-05-10 Claudiu Zissulescu <claziss@synopsys.com>
* config/arc/arc.md (UNSPEC_ARC_DMPYWH): Define.
* config/arc/simdext.md (VCT): Add predicates for iterator
elements.
(EMUVEC): Define.
(voptab): Likewise.
(vec_widen_<V_US>mult_hi_v4hi): Change pattern predicate.
(<voptab>v2si3): New patterns.
(neg): Likewise.
(reduc_plus_scal_v4hi): Likewise.
(reduc_plus_scal_v2si): Likewise.
(vec_duplicatev2si): Likewise.
(vec_duplicatev4hi): Likewise.
Signed-off-by: Claudiu Zissulescu <claziss@synopsys.com>
Diffstat (limited to 'gcc/gcov-iov.c')
0 files changed, 0 insertions, 0 deletions