public inbox for gcc-cvs@sourceware.org
help / color / mirror / Atom feed
* [gcc/devel/autopar_devel] i386: Remove %q modifier from two pmov insn templates [PR95355]
@ 2020-08-22 21:38 Giuliano Belinassi
  0 siblings, 0 replies; only message in thread
From: Giuliano Belinassi @ 2020-08-22 21:38 UTC (permalink / raw)
  To: gcc-cvs

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset="us-ascii", Size: 2520 bytes --]

https://gcc.gnu.org/g:253caa3c28fb0220819c3966f405ba33481719f9

commit 253caa3c28fb0220819c3966f405ba33481719f9
Author: Uros Bizjak <ubizjak@gmail.com>
Date:   Wed May 27 21:02:51 2020 +0200

    i386: Remove %q modifier from two pmov insn templates [PR95355]
    
    2020-05-27  Uroš Bizjak  <ubizjak@gmail.com>
    
    gcc/ChangeLog:
            PR target/95355
            * config/i386/sse.md
            (<mask_codefor>avx512f_<code>v16qiv16si2<mask_name>):
            Remove %q operand modifier from insn template.
            (avx512f_<code>v8hiv8di2<mask_name>): Ditto.
    
    gcc/testsuite/ChangeLog:
            PR target/95355
            * gcc.target/i386/pr95355.c: New test.

Diff:
---
 gcc/config/i386/sse.md                  |  4 ++--
 gcc/testsuite/gcc.target/i386/pr95355.c | 20 ++++++++++++++++++++
 2 files changed, 22 insertions(+), 2 deletions(-)

diff --git a/gcc/config/i386/sse.md b/gcc/config/i386/sse.md
index fde65391d7d..1cf1b8cea3b 100644
--- a/gcc/config/i386/sse.md
+++ b/gcc/config/i386/sse.md
@@ -17559,7 +17559,7 @@
 	(any_extend:V16SI
 	  (match_operand:V16QI 1 "nonimmediate_operand" "vm")))]
   "TARGET_AVX512F"
-  "vpmov<extsuffix>bd\t{%1, %0<mask_operand2>|%0<mask_operand2>, %q1}"
+  "vpmov<extsuffix>bd\t{%1, %0<mask_operand2>|%0<mask_operand2>, %1}"
   [(set_attr "type" "ssemov")
    (set_attr "prefix" "evex")
    (set_attr "mode" "XI")])
@@ -17935,7 +17935,7 @@
 	(any_extend:V8DI
 	  (match_operand:V8HI 1 "nonimmediate_operand" "vm")))]
   "TARGET_AVX512F"
-  "vpmov<extsuffix>wq\t{%1, %0<mask_operand2>|%0<mask_operand2>, %q1}"
+  "vpmov<extsuffix>wq\t{%1, %0<mask_operand2>|%0<mask_operand2>, %1}"
   [(set_attr "type" "ssemov")
    (set_attr "prefix" "evex")
    (set_attr "mode" "XI")])
diff --git a/gcc/testsuite/gcc.target/i386/pr95355.c b/gcc/testsuite/gcc.target/i386/pr95355.c
new file mode 100644
index 00000000000..3e4faba19f2
--- /dev/null
+++ b/gcc/testsuite/gcc.target/i386/pr95355.c
@@ -0,0 +1,20 @@
+/* PR target/95355 */
+/* { dg-do assemble { target avx512dq } } */
+/* { dg-require-effective-target int128 } */
+/* { dg-require-effective-target masm_intel } */
+/* { dg-options "-O -fno-tree-dominator-opts -fno-tree-fre -ftree-slp-vectorize -fno-tree-ter -mavx512dq -masm=intel" } */
+
+typedef int __attribute__((__vector_size__(64))) U;
+typedef __int128 __attribute__((__vector_size__(32))) V;
+
+U i;
+V j;
+
+int
+foo(unsigned char l)
+{
+  V m = j % 999;
+  U n = l <= i;
+  V o = ((union { U a; V b[2]; }) n).b[0] + m;
+  return o[0];
+}


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2020-08-22 21:38 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-08-22 21:38 [gcc/devel/autopar_devel] i386: Remove %q modifier from two pmov insn templates [PR95355] Giuliano Belinassi

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).