]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
i386: Fix type of one_cmplv2qi2 alternatives 1,2 [PR103915]
authorUros Bizjak <ubizjak@gmail.com>
Wed, 5 Jan 2022 19:08:15 +0000 (20:08 +0100)
committerUros Bizjak <ubizjak@gmail.com>
Wed, 5 Jan 2022 19:08:15 +0000 (20:08 +0100)
2022-01-05  Uroš Bizjak  <ubizjak@gmail.com>

gcc/ChangeLog:

PR target/103915
* config/i386/mmx.md (one_cmplv2qi2): Change
alternatives 1,2 type from sselog to sselog1.

gcc/testsuite/ChangeLog:

PR target/103915
* gcc.target/i386/pr103915.c: New test.

gcc/config/i386/mmx.md
gcc/testsuite/gcc.target/i386/pr103915.c [new file with mode: 0644]

index fc8ec5e4d49914f1f5a3b766f4d0795de4d21611..96d85a54e10b7a66872609331b882cc2b4921287 100644 (file)
   ""
   "#"
   [(set_attr "isa" "*,sse2,avx512vl")
-   (set_attr "type" "negnot,sselog,sselog")
+   (set_attr "type" "negnot,sselog1,sselog1")
    (set_attr "mode" "SI,TI,TI")])
 
 (define_split
diff --git a/gcc/testsuite/gcc.target/i386/pr103915.c b/gcc/testsuite/gcc.target/i386/pr103915.c
new file mode 100644 (file)
index 0000000..34f1d63
--- /dev/null
@@ -0,0 +1,11 @@
+/* PR target/103915 */
+/* { dg-do compile } */
+/* { dg-options "-flive-range-shrinkage" } */
+
+char __attribute__((__vector_size__ (2))) data;
+
+void
+foo (void)
+{
+  data = ~data;
+}