diff options
author | Peter Bergner <bergner@linux.ibm.com> | 2021-06-10 13:54:12 -0500 |
---|---|---|
committer | Uros Bizjak <ubizjak@gmail.com> | 2021-06-10 23:55:24 +0200 |
commit | a325bdd195ee96f826b208c3afb9bed2ec077e12 (patch) | |
tree | 670cc674c19e2ee2dce4997fac7bb19472b25bd3 /gcc/coverage.c | |
parent | ee52bf609bac45b3c251858a69071262f46ee89c (diff) | |
download | gcc-a325bdd195ee96f826b208c3afb9bed2ec077e12.zip gcc-a325bdd195ee96f826b208c3afb9bed2ec077e12.tar.gz gcc-a325bdd195ee96f826b208c3afb9bed2ec077e12.tar.bz2 |
i386: Add V8QI and other 64bit vector permutations [PR89021]
In addition to V8QI permutations, several other missing permutations are
added for 64bit vector modes for TARGET_SSSE3 and TARGET_SSE4_1 targets.
2021-06-10 Uroš Bizjak <ubizjak@gmail.com>
gcc/
PR target/89021
* config/i386/i386-expand.c (ix86_split_mmx_punpck):
Handle V2SF mode. Emit SHUFPS to fixup unpack-high for V2SF mode.
(expand_vec_perm_blend): Handle 64bit modes for TARGET_SSE4_1.
(expand_vec_perm_pshufb): Handle 64bit modes for TARGET_SSSE3.
(expand_vec_perm_pblendv): Handle 64bit modes for TARGET_SSE4_1.
(expand_vec_perm_interleave2): Handle 64bit modes.
(expand_vec_perm_even_odd_pack): Handle V8QI mode.
(expand_vec_perm_even_odd_1): Ditto.
(ix86_vectorize_vec_perm_const): Ditto.
* config/i386/i386.md (UNSPEC_PSHUFB): Move from ...
* config/i386/sse.md: ... here.
* config/i386/mmx.md (*vec_interleave_lowv2sf):
New insn_and_split pattern.
(*vec_interleave_highv2sf): Ditto.
(mmx_pshufbv8qi3): New insn pattern.
(*mmx_pblendw): Ditto.
Diffstat (limited to 'gcc/coverage.c')
0 files changed, 0 insertions, 0 deletions