aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/config/i386/sse.md8
-rw-r--r--libgomp/ChangeLog6
-rw-r--r--libgomp/testsuite/libgomp.c/scan-21.c12
-rw-r--r--libgomp/testsuite/libgomp.c/scan-22.c12
5 files changed, 40 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 19488291558..1ee26fcf8bf 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2019-08-28 Jakub Jelinek <jakub@redhat.com>
+
+ PR libgomp/91530
+ * config/i386/sse.md (vec_shl_<mode>, vec_shr_<mode>): Use
+ V_128 iterator instead of VI_128.
+
2019-08-28 Martin Liska <mliska@suse.cz>
PR tree-optimization/90970
diff --git a/gcc/config/i386/sse.md b/gcc/config/i386/sse.md
index 7bef93907db..621b4db21f3 100644
--- a/gcc/config/i386/sse.md
+++ b/gcc/config/i386/sse.md
@@ -12047,9 +12047,9 @@
(define_expand "vec_shl_<mode>"
[(set (match_dup 3)
(ashift:V1TI
- (match_operand:VI_128 1 "register_operand")
+ (match_operand:V_128 1 "register_operand")
(match_operand:SI 2 "const_0_to_255_mul_8_operand")))
- (set (match_operand:VI_128 0 "register_operand") (match_dup 4))]
+ (set (match_operand:V_128 0 "register_operand") (match_dup 4))]
"TARGET_SSE2"
{
operands[1] = gen_lowpart (V1TImode, operands[1]);
@@ -12060,9 +12060,9 @@
(define_expand "vec_shr_<mode>"
[(set (match_dup 3)
(lshiftrt:V1TI
- (match_operand:VI_128 1 "register_operand")
+ (match_operand:V_128 1 "register_operand")
(match_operand:SI 2 "const_0_to_255_mul_8_operand")))
- (set (match_operand:VI_128 0 "register_operand") (match_dup 4))]
+ (set (match_operand:V_128 0 "register_operand") (match_dup 4))]
"TARGET_SSE2"
{
operands[1] = gen_lowpart (V1TImode, operands[1]);
diff --git a/libgomp/ChangeLog b/libgomp/ChangeLog
index e4fa3ceb2b8..3d23b5881e8 100644
--- a/libgomp/ChangeLog
+++ b/libgomp/ChangeLog
@@ -1,3 +1,9 @@
+2019-08-28 Jakub Jelinek <jakub@redhat.com>
+
+ PR libgomp/91530
+ * testsuite/libgomp.c/scan-21.c: New test.
+ * testsuite/libgomp.c/scan-22.c: New test.
+
2019-08-27 Jakub Jelinek <jakub@redhat.com>
PR libgomp/91530
diff --git a/libgomp/testsuite/libgomp.c/scan-21.c b/libgomp/testsuite/libgomp.c/scan-21.c
new file mode 100644
index 00000000000..c57ddc27eae
--- /dev/null
+++ b/libgomp/testsuite/libgomp.c/scan-21.c
@@ -0,0 +1,12 @@
+/* { dg-require-effective-target size32plus } */
+/* { dg-require-effective-target avx_runtime } */
+/* { dg-additional-options "-O2 -fopenmp -fdump-tree-vect-details -msse2 -mno-sse3" } */
+/* { dg-final { scan-tree-dump-times "vectorized \[2-6] loops" 2 "vect" } } */
+
+#include "scan-13.c"
+/* { dg-require-effective-target size32plus } */
+/* { dg-require-effective-target avx_runtime } */
+/* { dg-additional-options "-O2 -fopenmp -fdump-tree-vect-details -msse2 -mno-sse3" } */
+/* { dg-final { scan-tree-dump-times "vectorized \[2-6] loops" 2 "vect" } } */
+
+#include "scan-13.c"
diff --git a/libgomp/testsuite/libgomp.c/scan-22.c b/libgomp/testsuite/libgomp.c/scan-22.c
new file mode 100644
index 00000000000..07672ff0a1a
--- /dev/null
+++ b/libgomp/testsuite/libgomp.c/scan-22.c
@@ -0,0 +1,12 @@
+/* { dg-require-effective-target size32plus } */
+/* { dg-require-effective-target avx_runtime } */
+/* { dg-additional-options "-O2 -fopenmp -fdump-tree-vect-details -msse2 -mno-sse3" } */
+/* { dg-final { scan-tree-dump-times "vectorized \[2-6] loops" 2 "vect" } } */
+
+#include "scan-17.c"
+/* { dg-require-effective-target size32plus } */
+/* { dg-require-effective-target avx_runtime } */
+/* { dg-additional-options "-O2 -fopenmp -fdump-tree-vect-details -msse2 -mno-sse3" } */
+/* { dg-final { scan-tree-dump-times "vectorized \[2-6] loops" 2 "vect" } } */
+
+#include "scan-17.c"