]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
i386: Fix REDUC_SSE_SMINMAX_MODE mode conditions.
authorUros Bizjak <ubizjak@gmail.com>
Sat, 11 Apr 2020 11:25:51 +0000 (13:25 +0200)
committerUros Bizjak <ubizjak@gmail.com>
Sat, 11 Apr 2020 11:25:51 +0000 (13:25 +0200)
V4SI, V8HI and V16QI modes of redux_<code>_scal_<mode> expander
expand with SSE2 instructions (PSRLDQ and PCMPGTx) so use
TARGET_SSE2 as relevant mode iterator codition.

PR target/94494
* config/i386/sse.md (REDUC_SSE_SMINMAX_MODE): Use TARGET_SSE2
condition for V4SI, V8HI and V16QI modes.

testsuite/ChangeLog:

PR target/94494
* gcc.target/i386/pr94494.c: New test.

gcc/ChangeLog
gcc/config/i386/sse.md
gcc/testsuite/ChangeLog

index be4384eb0ef949e0631834a4855116319796ed73..43a027b37d13d231b97519af6b807821eb3fb9c5 100644 (file)
@@ -1,3 +1,9 @@
+2020-04-11  Uroš Bizjak  <ubizjak@gmail.com>
+
+       PR target/94494
+       * config/i386/sse.md (REDUC_SSE_SMINMAX_MODE): Use TARGET_SSE2
+       condition for V4SI, V8HI and V16QI modes.
+
 2020-04-10  Claudiu Zissulescu  <claziss@synopsys.com>
 
        Backport from trunk
index 618fc231c40552cfea20b428681a431db8e7099d..cbcbe3846ca3bed178f1e0ba58e2e6759758b8af 100644 (file)
 ;; Modes handled by reduc_sm{in,ax}* patterns.
 (define_mode_iterator REDUC_SSE_SMINMAX_MODE
   [(V4SF "TARGET_SSE") (V2DF "TARGET_SSE")
-   (V2DI "TARGET_SSE4_2") (V4SI "TARGET_SSE") (V8HI "TARGET_SSE")
-   (V16QI "TARGET_SSE")])
+   (V4SI "TARGET_SSE2") (V8HI "TARGET_SSE2") (V16QI "TARGET_SSE2")
+   (V2DI "TARGET_SSE4_2")])
 
 (define_expand "reduc_<code>_scal_<mode>"
   [(smaxmin:REDUC_SSE_SMINMAX_MODE
index 148fa9ebbbcfa1339917fa74f17ea8418415d45c..813ec5a0c9aad73524be431e18274e4879c16833 100644 (file)
@@ -1,3 +1,8 @@
+2020-04-11  Uroš Bizjak  <ubizjak@gmail.com>
+
+       PR target/94494
+       * gcc.target/i386/pr94494.c: New test.
+
 2020-04-07  Will Schmidt  <will_schmidt@vnet.ibm.com>
 
        Backport from mainline.