]> git.ipfire.org Git - thirdparty/gcc.git/commit - gcc/config/i386/i386.h
sse.md (VIMAX_AVX2): Change V4DI to V2TI.
authorJakub Jelinek <jakub@redhat.com>
Sat, 17 Sep 2011 15:24:59 +0000 (17:24 +0200)
committerJakub Jelinek <jakub@gcc.gnu.org>
Sat, 17 Sep 2011 15:24:59 +0000 (17:24 +0200)
commit8a0436cb79ccf797d0dbc02175fce1a254a1a691
treed9a418c44bf28109309ea5968a0357568be43032
parent32469ccc49bbecadceb571310c29b975be0286a5
sse.md (VIMAX_AVX2): Change V4DI to V2TI.

* config/i386/sse.md (VIMAX_AVX2): Change V4DI to V2TI.
(sse2_avx, sseinsnmode): Add V2TI.
(REDUC_SMINMAX_MODE): New mode iterator.
(reduc_smax_v4sf, reduc_smin_v4sf, reduc_smax_v8sf,
reduc_smin_v8sf, reduc_smax_v4df, reduc_smin_v4df): Remove.
(reduc_<code>_<mode>): New smaxmin and umaxmin expanders.
(sse2_lshrv1ti3): Rename to...
(<sse2_avx2>_lshr<mode>3): ... this.  Use VIMAX_AVX2 mode
iterator.  Move before umaxmin expanders.
* config/i386/i386.h (VALID_AVX256_REG_MODE,
SSE_REG_MODE_P): Accept V2TImode.
* config/i386/i386.c (ix86_expand_reduc): Handle V32QImode,
V16HImode, V8SImode and V4DImode.

From-SVN: r178930
gcc/ChangeLog
gcc/config/i386/i386.c
gcc/config/i386/i386.h
gcc/config/i386/sse.md