Hi all,
After r16-3651, compare_tests script will explicitly mention those
tests have the same name. This helps us review all the tests we have.
Among them, most of them are unintentional typos (e.g., keep testing
the same vector size for scan-assembler). Fix them through this commit.
Ok for trunk?
Thx,
Haochen
gcc/testsuite/ChangeLog:
* gcc.target/i386/avx512bw-vpackssdw-1.c:
Fix xmm/ymm mask tests.
* gcc.target/i386/avx512bw-vpacksswb-1.c: Ditto.
* gcc.target/i386/avx512bw-vpackusdw-1.c: Ditto.
* gcc.target/i386/avx512bw-vpackuswb-1.c: Ditto.
* gcc.target/i386/avx512bw-vpermw-1.c: Test xmm.
* gcc.target/i386/avx512bw-vpmulhw-1.c:
Fix xmm/ymm mask tests.
* gcc.target/i386/avx512f-vec-init.c: Remove duplicate test.
* gcc.target/i386/avx512fp16-13.c: Fix test for aligned load.
* gcc.target/i386/avx512fp16-conjugation-1.c: Revise the test
to test more precisely on masks.
* gcc.target/i386/avx512fp16vl-conjugation-1.c: Ditto.
* gcc.target/i386/avx512vbmi-vpermb-1.c: Test xmm.
* gcc.target/i386/avx512vl-vcvtpd2ps-1.c: Fix scan asm.
* gcc.target/i386/avx512vl-vinsert-1.c: Fix typo.
* gcc.target/i386/avx512vl-vpmulld-1.c:
Fix xmm/ymm mask tests.
* gcc.target/i386/avx512vl-vptestmd-1.c: Ditto.
* gcc.target/i386/bitwise_mask_op-1.c: Fix typo.
* gcc.target/i386/cond_op_shift_q-1.c: Test both vpsra{,v}
and vpsll{,v}.
* gcc.target/i386/cond_op_shift_ud-1.c: Ditto.
* gcc.target/i386/cond_op_shift_uq-1.c: Ditto.
* gcc.target/i386/memcpy-pr95886.c: Fix the wrong const int.
* gcc.target/i386/part-vect-sqrtph-1.c: Remove duplicate test.
* gcc.target/i386/pr107432-7.c: Test vpmov{s,z}xbw instead of
vpmov{s,z}xbd.
* gcc.target/i386/pr88828-0.c: Fix pblendw scan asm.
---
.../gcc.target/i386/avx512bw-vpackssdw-1.c | 4 ++--
.../gcc.target/i386/avx512bw-vpacksswb-1.c | 4 ++--
.../gcc.target/i386/avx512bw-vpackusdw-1.c | 4 ++--
.../gcc.target/i386/avx512bw-vpackuswb-1.c | 4 ++--
.../gcc.target/i386/avx512bw-vpermw-1.c | 6 +++---
.../gcc.target/i386/avx512bw-vpmulhw-1.c | 6 +++---
.../gcc.target/i386/avx512f-vec-init.c | 1 -
gcc/testsuite/gcc.target/i386/avx512fp16-13.c | 7 ++++---
.../gcc.target/i386/avx512fp16-conjugation-1.c | 13 ++++---------
.../i386/avx512fp16vl-conjugation-1.c | 17 ++++++-----------
.../gcc.target/i386/avx512vbmi-vpermb-1.c | 6 +++---
.../gcc.target/i386/avx512vl-vcvtpd2ps-1.c | 8 ++++----
.../gcc.target/i386/avx512vl-vinsert-1.c | 2 +-
.../gcc.target/i386/avx512vl-vpmulld-1.c | 4 ++--
.../gcc.target/i386/avx512vl-vptestmd-1.c | 4 ++--
.../gcc.target/i386/bitwise_mask_op-1.c | 2 +-
.../gcc.target/i386/cond_op_shift_q-1.c | 4 ++--
.../gcc.target/i386/cond_op_shift_ud-1.c | 4 ++--
.../gcc.target/i386/cond_op_shift_uq-1.c | 4 ++--
gcc/testsuite/gcc.target/i386/memcpy-pr95886.c | 2 +-
.../gcc.target/i386/part-vect-sqrtph-1.c | 1 -
gcc/testsuite/gcc.target/i386/pr107432-7.c | 8 ++++----
gcc/testsuite/gcc.target/i386/pr88828-0.c | 4 +---
23 files changed, 53 insertions(+), 66 deletions(-)
diff --git a/gcc/testsuite/gcc.target/i386/avx512bw-vpackssdw-1.c
b/gcc/testsuite/gcc.target/i386/avx512bw-vpackssdw-1.c
index 70bef644d52..4bb0be1258c 100644
--- a/gcc/testsuite/gcc.target/i386/avx512bw-vpackssdw-1.c
+++ b/gcc/testsuite/gcc.target/i386/avx512bw-vpackssdw-1.c
@@ -4,8 +4,8 @@
/* { dg-final { scan-assembler-times "vpackssdw\[
\\t\]+\[^\{\n\]*%zmm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
/* { dg-final { scan-assembler-times "vpackssdw\[
\\t\]+\[^\{\n\]*%zmm\[0-9\]+\{%k\[1-7\]\}{z}(?:\n|\[ \\t\]+#)" 1 } } */
/* { dg-final { scan-assembler-times "vpackssdw\[
\\t\]+\[^\{\n\]*%ymm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vpackssdw\[
\\t\]+\[^\{\n\]*%ymm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vpackssdw\[
\\t\]+\[^\{\n\]*%xmm\[0-9\]+\{%k\[1-7\]\}{z}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vpackssdw\[
\\t\]+\[^\{\n\]*%ymm\[0-9\]+\{%k\[1-7\]\}{z}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vpackssdw\[
\\t\]+\[^\{\n\]*%xmm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
/* { dg-final { scan-assembler-times "vpackssdw\[
\\t\]+\[^\{\n\]*%xmm\[0-9\]+\{%k\[1-7\]\}{z}(?:\n|\[ \\t\]+#)" 1 } } */
diff --git a/gcc/testsuite/gcc.target/i386/avx512bw-vpacksswb-1.c
b/gcc/testsuite/gcc.target/i386/avx512bw-vpacksswb-1.c
index b867dcb1320..a59502c9493 100644
--- a/gcc/testsuite/gcc.target/i386/avx512bw-vpacksswb-1.c
+++ b/gcc/testsuite/gcc.target/i386/avx512bw-vpacksswb-1.c
@@ -4,8 +4,8 @@
/* { dg-final { scan-assembler-times "vpacksswb\[
\\t\]+\[^\{\n\]*%zmm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
/* { dg-final { scan-assembler-times "vpacksswb\[
\\t\]+\[^\{\n\]*%zmm\[0-9\]+\{%k\[1-7\]\}{z}(?:\n|\[ \\t\]+#)" 1 } } */
/* { dg-final { scan-assembler-times "vpacksswb\[
\\t\]+\[^\{\n\]*%ymm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vpacksswb\[
\\t\]+\[^\{\n\]*%ymm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vpacksswb\[
\\t\]+\[^\{\n\]*%xmm\[0-9\]+\{%k\[1-7\]\}{z}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vpacksswb\[
\\t\]+\[^\{\n\]*%ymm\[0-9\]+\{%k\[1-7\]\}{z}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vpacksswb\[
\\t\]+\[^\{\n\]*%xmm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
/* { dg-final { scan-assembler-times "vpacksswb\[
\\t\]+\[^\{\n\]*%xmm\[0-9\]+\{%k\[1-7\]\}{z}(?:\n|\[ \\t\]+#)" 1 } } */
diff --git a/gcc/testsuite/gcc.target/i386/avx512bw-vpackusdw-1.c
b/gcc/testsuite/gcc.target/i386/avx512bw-vpackusdw-1.c
index 2421b5cfff9..035ad3f2d34 100644
--- a/gcc/testsuite/gcc.target/i386/avx512bw-vpackusdw-1.c
+++ b/gcc/testsuite/gcc.target/i386/avx512bw-vpackusdw-1.c
@@ -4,8 +4,8 @@
/* { dg-final { scan-assembler-times "vpackusdw\[
\\t\]+\[^\{\n\]*%zmm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
/* { dg-final { scan-assembler-times "vpackusdw\[
\\t\]+\[^\{\n\]*%zmm\[0-9\]+\{%k\[1-7\]\}{z}(?:\n|\[ \\t\]+#)" 1 } } */
/* { dg-final { scan-assembler-times "vpackusdw\[
\\t\]+\[^\{\n\]*%ymm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vpackusdw\[
\\t\]+\[^\{\n\]*%ymm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vpackusdw\[
\\t\]+\[^\{\n\]*%xmm\[0-9\]+\{%k\[1-7\]\}{z}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vpackusdw\[
\\t\]+\[^\{\n\]*%ymm\[0-9\]+\{%k\[1-7\]\}{z}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vpackusdw\[
\\t\]+\[^\{\n\]*%xmm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
/* { dg-final { scan-assembler-times "vpackusdw\[
\\t\]+\[^\{\n\]*%xmm\[0-9\]+\{%k\[1-7\]\}{z}(?:\n|\[ \\t\]+#)" 1 } } */
diff --git a/gcc/testsuite/gcc.target/i386/avx512bw-vpackuswb-1.c
b/gcc/testsuite/gcc.target/i386/avx512bw-vpackuswb-1.c
index 122a6a084cc..d2027ca02bc 100644
--- a/gcc/testsuite/gcc.target/i386/avx512bw-vpackuswb-1.c
+++ b/gcc/testsuite/gcc.target/i386/avx512bw-vpackuswb-1.c
@@ -4,8 +4,8 @@
/* { dg-final { scan-assembler-times "vpackuswb\[
\\t\]+\[^\{\n\]*%zmm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
/* { dg-final { scan-assembler-times "vpackuswb\[
\\t\]+\[^\{\n\]*%zmm\[0-9\]+\{%k\[1-7\]\}{z}(?:\n|\[ \\t\]+#)" 1 } } */
/* { dg-final { scan-assembler-times "vpackuswb\[
\\t\]+\[^\{\n\]*%ymm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vpackuswb\[
\\t\]+\[^\{\n\]*%ymm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vpackuswb\[
\\t\]+\[^\{\n\]*%xmm\[0-9\]+\{%k\[1-7\]\}{z}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vpackuswb\[
\\t\]+\[^\{\n\]*%ymm\[0-9\]+\{%k\[1-7\]\}{z}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vpackuswb\[
\\t\]+\[^\{\n\]*%xmm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
/* { dg-final { scan-assembler-times "vpackuswb\[
\\t\]+\[^\{\n\]*%xmm\[0-9\]+\{%k\[1-7\]\}{z}(?:\n|\[ \\t\]+#)" 1 } } */
diff --git a/gcc/testsuite/gcc.target/i386/avx512bw-vpermw-1.c
b/gcc/testsuite/gcc.target/i386/avx512bw-vpermw-1.c
index 7196c9a6258..30e3f6d1b88 100644
--- a/gcc/testsuite/gcc.target/i386/avx512bw-vpermw-1.c
+++ b/gcc/testsuite/gcc.target/i386/avx512bw-vpermw-1.c
@@ -6,9 +6,9 @@
/* { dg-final { scan-assembler-times "vpermw\[
\\t\]+\[^\{\n\]*%ymm\[0-9\]+(?:\n|\[ \\t\]+#)" 1 } } */
/* { dg-final { scan-assembler-times "vpermw\[
\\t\]+\[^\{\n\]*%ymm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
/* { dg-final { scan-assembler-times "vpermw\[
\\t\]+\[^\{\n\]*%ymm\[0-9\]+\{%k\[1-7\]\}\{z\}(?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vpermw\[
\\t\]+\[^\{\n\]*%zmm\[0-9\]+(?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vpermw\[
\\t\]+\[^\{\n\]*%zmm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vpermw\[
\\t\]+\[^\{\n\]*%zmm\[0-9\]+\{%k\[1-7\]\}\{z\}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vpermw\[
\\t\]+\[^\{\n\]*%xmm\[0-9\]+(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vpermw\[
\\t\]+\[^\{\n\]*%xmm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vpermw\[
\\t\]+\[^\{\n\]*%xmm\[0-9\]+\{%k\[1-7\]\}\{z\}(?:\n|\[ \\t\]+#)" 1 } } */
#include <immintrin.h>
diff --git a/gcc/testsuite/gcc.target/i386/avx512bw-vpmulhw-1.c
b/gcc/testsuite/gcc.target/i386/avx512bw-vpmulhw-1.c
index 6ded26c9fc4..4f53e5cbab8 100644
--- a/gcc/testsuite/gcc.target/i386/avx512bw-vpmulhw-1.c
+++ b/gcc/testsuite/gcc.target/i386/avx512bw-vpmulhw-1.c
@@ -3,10 +3,10 @@
/* { dg-final { scan-assembler-times "vpmulhw\[
\\t\]+\[^\{\n\]*%zmm\[0-9\]+\[^\n\]*%zmm\[0-9\]+\[^\n\]*%zmm\[0-9\]+(?:\n|\[
\\t\]+#)" 1 } } */
/* { dg-final { scan-assembler-times "vpmulhw\[
\\t\]+\[^\{\n\]*%zmm\[0-9\]+\[^\n\]*%zmm\[0-9\]+\[^\n\]*%zmm\[0-9\]+\{%k\[1-7\]\}\{z\}(?:\n|\[
\\t\]+#)" 1 } } */
/* { dg-final { scan-assembler-times "vpmulhw\[
\\t\]+\[^\{\n\]*%zmm\[0-9\]+\[^\n\]*%zmm\[0-9\]+\[^\n\]*%zmm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[
\\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vpmulhw\[
\\t\]+\[^\{\n\]*%xmm\[0-9\]+\[^\n\]*%xmm\[0-9\]+\[^\n\]*%xmm\[0-9\]+\{%k\[1-7\]\}\{z\}(?:\n|\[
\\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vpmulhw\[
\\t\]+\[^\{\n\]*%xmm\[0-9\]+\[^\n\]*%xmm\[0-9\]+\[^\n\]*%xmm\[0-9\]+\{%k\[1-7\]\}\{z\}(?:\n|\[
\\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vpmulhw\[
\\t\]+\[^\{\n\]*%ymm\[0-9\]+\[^\n\]*%ymm\[0-9\]+\[^\n\]*%ymm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[
\\t\]+#)" 1 } } */
/* { dg-final { scan-assembler-times "vpmulhw\[
\\t\]+\[^\{\n\]*%ymm\[0-9\]+\[^\n\]*%ymm\[0-9\]+\[^\n\]*%ymm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[
\\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vpmulhw\[
\\t\]+\[^\{\n\]*%ymm\[0-9\]+\[^\n\]*%ymm\[0-9\]+\[^\n\]*%ymm\[0-9\]+\{%k\[1-7\]\}\{z\}(?:\n|\[
\\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vpmulhw\[
\\t\]+\[^\{\n\]*%xmm\[0-9\]+\[^\n\]*%xmm\[0-9\]+\[^\n\]*%xmm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[
\\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vpmulhw\[
\\t\]+\[^\{\n\]*%xmm\[0-9\]+\[^\n\]*%xmm\[0-9\]+\[^\n\]*%xmm\[0-9\]+\{%k\[1-7\]\}\{z\}(?:\n|\[
\\t\]+#)" 1 } } */
#include <immintrin.h>
diff --git a/gcc/testsuite/gcc.target/i386/avx512f-vec-init.c
b/gcc/testsuite/gcc.target/i386/avx512f-vec-init.c
index c00fa427571..6cc8261d4f7 100644
--- a/gcc/testsuite/gcc.target/i386/avx512f-vec-init.c
+++ b/gcc/testsuite/gcc.target/i386/avx512f-vec-init.c
@@ -4,7 +4,6 @@
/* { dg-final { scan-assembler-times "vpbroadcastd\[
\\t\]+\[^\{\n\]*%zmm\[0-9\]+(?:\n|\[ \\t\]+#)" 1 } } */
/* { dg-final { scan-assembler-times "vpbroadcastd\[
\\t\]+\[^\{\n\]*%ymm\[0-9\]+(?:\n|\[ \\t\]+#)" 1 } } */
/* { dg-final { scan-assembler-times "vpbroadcastq\[
\\t\]+\[^\{\n\]*%zmm\[0-9\]+(?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vpbroadcastq\[
\\t\]+\[^\{\n\]*%zmm\[0-9\]+(?:\n|\[ \\t\]+#)" 1 } } */
/* { dg-final { scan-assembler-times "vpbroadcastq\[
\\t\]+\[^\{\n\]*%ymm\[0-9\]+(?:\n|\[ \\t\]+#)" 1 } } */
/* { dg-final { scan-assembler-times "vpbroadcastb\[
\\t\]+\[^\{\n\]*%ymm\[0-9\]+(?:\n|\[ \\t\]+#)" 2 } } */
/* { dg-final { scan-assembler-times "vpbroadcastb\[
\\t\]+\[^\{\n\]*%xmm\[0-9\]+(?:\n|\[ \\t\]+#)" 1 } } */
diff --git a/gcc/testsuite/gcc.target/i386/avx512fp16-13.c
b/gcc/testsuite/gcc.target/i386/avx512fp16-13.c
index 92ac197e106..8bd0e39b056 100644
--- a/gcc/testsuite/gcc.target/i386/avx512fp16-13.c
+++ b/gcc/testsuite/gcc.target/i386/avx512fp16-13.c
@@ -36,7 +36,7 @@ load512_ph (void const *p)
return _mm512_load_ph (p);
}
-/* { dg-final { scan-assembler-times "vmovdqa64\[
\\t\]+\[^\{\n\]*%zmm\[0-9\]+\[^\n\]*\\)" 1 } } */
+/* { dg-final { scan-assembler-times "vmovdqa64\[
\\t\]*\[^,\]*,\[^\{\n\]*%zmm\[0-9\]" 1 } } */
__m256h
__attribute__ ((noinline, noclone))
@@ -45,7 +45,7 @@ load256_ph (void const *p)
return _mm256_load_ph (p);
}
-/* { dg-final { scan-assembler-times "vmovdqa\[
\\t\]+\[^\{\n\]*%ymm\[0-9\]+\[^\n\]*\\)" 1 } } */
+/* { dg-final { scan-assembler-times "vmovdqa\[
\\t\]*\[^,\]*,\[^\{\n\]*%ymm\[0-9\]" 1 } } */
__m128h
__attribute__ ((noinline, noclone))
@@ -53,7 +53,8 @@ load_ph (void const *p)
{
return _mm_load_ph (p);
}
-/* { dg-final { scan-assembler-times "vmovdqa\[
\\t\]+\[^\{\n\]*%xmm\[0-9\]+\[^\n\]*\\)" 1 } } */
+
+/* { dg-final { scan-assembler-times "vmovdqa\[
\\t\]*\[^,\]*,\[^\{\n\]*%xmm\[0-9\]" 1 } } */
__m512h
__attribute__ ((noinline, noclone))
diff --git a/gcc/testsuite/gcc.target/i386/avx512fp16-conjugation-1.c
b/gcc/testsuite/gcc.target/i386/avx512fp16-conjugation-1.c
index 1b974e77046..a1e81b0360c 100644
--- a/gcc/testsuite/gcc.target/i386/avx512fp16-conjugation-1.c
+++ b/gcc/testsuite/gcc.target/i386/avx512fp16-conjugation-1.c
@@ -1,5 +1,9 @@
/* { dg-do compile } */
/* { dg-options "-O2 -mavx512fp16" } */
+/* { dg-final { scan-assembler-times "vpxord\[^\n\]*%zmm\[0-9\]+" 3 } } */
+/* { dg-final { scan-assembler-times "kmovw\[^\n\]*%k\[1-9\]+" 2 } } */
+/* { dg-final { scan-assembler-times "vmovaps\[
\\t\]+\[^\{\n\]*%zmm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vmovaps\[
\\t\]+\[^\{\n\]*%zmm\[0-9\]+\{%k\[1-7\]\}\{z\}(?:\n|\[ \\t\]+#)" 1 } } */
#include <immintrin.h>
__m512h
@@ -9,8 +13,6 @@ test_mm512_conj_pch (__m512h __A)
return _mm512_conj_pch (__A);
}
-/* { dg-final { scan-assembler-times "vpxord\[^\n\]*%zmm\[0-9\]+" 3 } } */
-
__m512h
__attribute__ ((noinline, noclone))
test_mm512_mask_conj_pch (__m512h __W, __mmask16 __U, __m512h __A)
@@ -18,10 +20,6 @@ test_mm512_mask_conj_pch (__m512h __W, __mmask16 __U,
__m512h __A)
return _mm512_mask_conj_pch (__W, __U, __A);
}
-/* { dg-final { scan-assembler-times "vpxord\[^\n\]*%zmm\[0-9\]+" 3 } } */
-/* { dg-final { scan-assembler-times "kmovw\[^\n\]*%k\[1-9\]+" 2 } } */
-/* { dg-final { scan-assembler-times "vmovaps\[^\n]" 2 } } */
-
__m512h
__attribute__ ((noinline, noclone))
test_mm512_maskz_conj_pch (__mmask16 __U, __m512h __A)
@@ -29,6 +27,3 @@ test_mm512_maskz_conj_pch (__mmask16 __U, __m512h __A)
return _mm512_maskz_conj_pch (__U, __A);
}
-/* { dg-final { scan-assembler-times "vpxord\[^\n\]*%zmm\[0-9\]+" 3 } } */
-/* { dg-final { scan-assembler-times "kmovw\[^\n\]*%k\[1-9\]+" 2 } } */
-/* { dg-final { scan-assembler-times "vmovaps\[
\\t\]+\[^\{\n\]*%zmm\[0-9\]+\{%k\[1-7\]\}\{z\}(?:\n|\[ \\t\]+#)" 1 } } */
diff --git a/gcc/testsuite/gcc.target/i386/avx512fp16vl-conjugation-1.c
b/gcc/testsuite/gcc.target/i386/avx512fp16vl-conjugation-1.c
index 3ba664f4aec..05368052b65 100644
--- a/gcc/testsuite/gcc.target/i386/avx512fp16vl-conjugation-1.c
+++ b/gcc/testsuite/gcc.target/i386/avx512fp16vl-conjugation-1.c
@@ -1,5 +1,11 @@
/* { dg-do compile } */
/* { dg-options "-O2 -mavx512fp16 -mavx512vl -mavx512dq" } */
+/* { dg-final { scan-assembler-times "vpxor\[^\n\]*%ymm\[0-9\]+" 3 } } */
+/* { dg-final { scan-assembler-times "vmovaps\[
\\t\]+\[^\{\n\]*%ymm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vmovaps\[
\\t\]+\[^\{\n\]*%ymm\[0-9\]+\{%k\[1-7\]\}\{z\}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vpxor\[^\n\]*%xmm\[0-9\]+" 3 } } */
+/* { dg-final { scan-assembler-times "vmovaps\[
\\t\]+\[^\{\n\]*%xmm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vmovaps\[
\\t\]+\[^\{\n\]*%xmm\[0-9\]+\{%k\[1-7\]\}\{z\}(?:\n|\[ \\t\]+#)" 1 } } */
#include <immintrin.h>
__m256h
@@ -9,8 +15,6 @@ test_mm256_conj_pch (__m256h __A)
return _mm256_conj_pch (__A);
}
-/* { dg-final { scan-assembler-times "vpxor\[^\n\]*%ymm\[0-9\]+" 3 } } */
-
__m128h
__attribute__ ((noinline, noclone))
test_mm_conj_pch (__m128h __A)
@@ -18,8 +22,6 @@ test_mm_conj_pch (__m128h __A)
return _mm_conj_pch (__A);
}
-/* { dg-final { scan-assembler-times "vpxor\[^\n\]*%xmm\[0-9\]+" 3 } } */
-
__m256h
__attribute__ ((noinline, noclone))
test_mm256_mask_conj_pch (__m256h __W, __mmask8 __U, __m256h __A)
@@ -27,8 +29,6 @@ test_mm256_mask_conj_pch (__m256h __W, __mmask8 __U, __m256h
__A)
return _mm256_mask_conj_pch (__W, __U, __A);
}
-/* { dg-final { scan-assembler-times "vmovaps\[^\n\]*%ymm\[0-9\]+" 2 } } */
-
__m128h
__attribute__ ((noinline, noclone))
test_mm_mask_conj_pch (__m128h __W, __mmask8 __U, __m128h __A)
@@ -36,20 +36,15 @@ test_mm_mask_conj_pch (__m128h __W, __mmask8 __U, __m128h
__A)
return _mm_mask_conj_pch (__W, __U, __A);
}
-/* { dg-final { scan-assembler-times "vmovaps\[^\n\]*%xmm\[0-9\]+" 2 } } */
-
__m256h
__attribute__ ((noinline, noclone))
test_mm256_maskz_conj_pch (__mmask8 __U, __m256h __A)
{
return _mm256_maskz_conj_pch (__U, __A);
}
-/* { dg-final { scan-assembler-times "vmovaps\[
\\t\]+\[^\{\n\]*%ymm\[0-9\]+\{%k\[1-7\]\}\{z\}(?:\n|\[ \\t\]+#)" 1 } } */
__m128h
__attribute__ ((noinline, noclone))
test_mm_maskz_conj_pch (__mmask8 __U, __m128h __A) {
return _mm_maskz_conj_pch (__U, __A);
}
-
-/* { dg-final { scan-assembler-times "vmovaps\[
\\t\]+\[^\{\n\]*%xmm\[0-9\]+\{%k\[1-7\]\}\{z\}(?:\n|\[ \\t\]+#)" 1 } } */
diff --git a/gcc/testsuite/gcc.target/i386/avx512vbmi-vpermb-1.c
b/gcc/testsuite/gcc.target/i386/avx512vbmi-vpermb-1.c
index f701c5aa18f..837aeb88f82 100644
--- a/gcc/testsuite/gcc.target/i386/avx512vbmi-vpermb-1.c
+++ b/gcc/testsuite/gcc.target/i386/avx512vbmi-vpermb-1.c
@@ -6,9 +6,9 @@
/* { dg-final { scan-assembler-times "vpermb\[
\\t\]+\[^\n\]*%ymm\[0-9\]+\[^\{\]" 3 } } */
/* { dg-final { scan-assembler-times "vpermb\[
\\t\]+\[^\n\]*%ymm\[0-9\]+\{%k\[1-7\]\}\[^\{\]" 1 } } */
/* { dg-final { scan-assembler-times "vpermb\[
\\t\]+\[^\n\]*%ymm\[0-9\]+\{%k\[1-7\]\}\{z\}" 1 } } */
-/* { dg-final { scan-assembler-times "vpermb\[
\\t\]+\[^\n\]*%zmm\[0-9\]+\[^\{\]" 3 } } */
-/* { dg-final { scan-assembler-times "vpermb\[
\\t\]+\[^\n\]*%zmm\[0-9\]+\{%k\[1-7\]\}\[^\{\]" 1 } } */
-/* { dg-final { scan-assembler-times "vpermb\[
\\t\]+\[^\n\]*%zmm\[0-9\]+\{%k\[1-7\]\}\{z\}" 1 } } */
+/* { dg-final { scan-assembler-times "vpermb\[
\\t\]+\[^\n\]*%xmm\[0-9\]+\[^\{\]" 3 } } */
+/* { dg-final { scan-assembler-times "vpermb\[
\\t\]+\[^\n\]*%xmm\[0-9\]+\{%k\[1-7\]\}\[^\{\]" 1 } } */
+/* { dg-final { scan-assembler-times "vpermb\[
\\t\]+\[^\n\]*%xmm\[0-9\]+\{%k\[1-7\]\}\{z\}" 1 } } */
#include <immintrin.h>
diff --git a/gcc/testsuite/gcc.target/i386/avx512vl-vcvtpd2ps-1.c
b/gcc/testsuite/gcc.target/i386/avx512vl-vcvtpd2ps-1.c
index fc29f45f145..b0cd6e4f1a5 100644
--- a/gcc/testsuite/gcc.target/i386/avx512vl-vcvtpd2ps-1.c
+++ b/gcc/testsuite/gcc.target/i386/avx512vl-vcvtpd2ps-1.c
@@ -1,9 +1,9 @@
/* { dg-do compile } */
/* { dg-options "-O2 -mavx512vl" } */
-/* { dg-final { scan-assembler-times "vcvtpd2psy\[
\\t\]+\[^\{\n\]*%xmm\[0-9\]+\{%k\[1-7\]\}\{z\}(?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vcvtpd2psy\[
\\t\]+\[^\{\n\]*%xmm\[0-9\]+\{%k\[1-7\]\}\{z\}(?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vcvtpd2psx\[
\\t\]+\[^\{\n\]*%xmm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vcvtpd2psx\[
\\t\]+\[^\{\n\]*%xmm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vcvtpd2psy\[
\\t\]+\[^\{\n\]*%ymm\[0-9\]+\[^\n\r]*%xmm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[
\\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vcvtpd2psy\[
\\t\]+\[^\{\n\]*%ymm\[0-9\]+\[^\n\r]*%xmm\[0-9\]+\{%k\[1-7\]\}\{z\}(?:\n|\[
\\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vcvtpd2psx\[
\\t\]+\[^\{\n\]*%xmm\[0-9\]+\[^\n\r]*%xmm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[
\\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vcvtpd2psx\[
\\t\]+\[^\{\n\]*%xmm\[0-9\]+\[^\n\r]*%xmm\[0-9\]+\{%k\[1-7\]\}\{z\}(?:\n|\[
\\t\]+#)" 1 } } */
#include <immintrin.h>
diff --git a/gcc/testsuite/gcc.target/i386/avx512vl-vinsert-1.c
b/gcc/testsuite/gcc.target/i386/avx512vl-vinsert-1.c
index f12260a23f3..c0b57a6224b 100644
--- a/gcc/testsuite/gcc.target/i386/avx512vl-vinsert-1.c
+++ b/gcc/testsuite/gcc.target/i386/avx512vl-vinsert-1.c
@@ -95,4 +95,4 @@ f8 (V4 x, double y)
/* { dg-final { scan-assembler-not "vinserti64x2" } } */
/* { dg-final { scan-assembler-not "vinsertf64x2" } } */
/* { dg-final { scan-assembler-not "vextracti64x2" } } */
-/* { dg-final { scan-assembler-not "vextracti64x2" } } */
+/* { dg-final { scan-assembler-not "vextractf64x2" } } */
diff --git a/gcc/testsuite/gcc.target/i386/avx512vl-vpmulld-1.c
b/gcc/testsuite/gcc.target/i386/avx512vl-vpmulld-1.c
index f03907807f4..b92b7f77443 100644
--- a/gcc/testsuite/gcc.target/i386/avx512vl-vpmulld-1.c
+++ b/gcc/testsuite/gcc.target/i386/avx512vl-vpmulld-1.c
@@ -1,8 +1,8 @@
/* { dg-do compile } */
/* { dg-options "-mavx512vl -O2" } */
/* { dg-final { scan-assembler-times "vpmulld\[
\\t\]+\[^\{\n\]*%ymm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vpmulld\[
\\t\]+\[^\{\n\]*%ymm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vpmulld\[
\\t\]+\[^\{\n\]*%xmm\[0-9\]+\{%k\[1-7\]\}{z}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vpmulld\[
\\t\]+\[^\{\n\]*%ymm\[0-9\]+\{%k\[1-7\]\}{z}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vpmulld\[
\\t\]+\[^\{\n\]*%xmm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
/* { dg-final { scan-assembler-times "vpmulld\[
\\t\]+\[^\{\n\]*%xmm\[0-9\]+\{%k\[1-7\]\}{z}(?:\n|\[ \\t\]+#)" 1 } } */
#include <immintrin.h>
diff --git a/gcc/testsuite/gcc.target/i386/avx512vl-vptestmd-1.c
b/gcc/testsuite/gcc.target/i386/avx512vl-vptestmd-1.c
index 4ec618c43c7..58b9745b8fe 100644
--- a/gcc/testsuite/gcc.target/i386/avx512vl-vptestmd-1.c
+++ b/gcc/testsuite/gcc.target/i386/avx512vl-vptestmd-1.c
@@ -1,8 +1,8 @@
/* { dg-do compile } */
/* { dg-options "-mavx512vl -O2" } */
/* { dg-final { scan-assembler-times "vptestmd\[
\\t\]+\[^\{\n\]*%xmm\[0-9\]+\[^\n\]*%k\[0-7\](?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vptestmd\[
\\t\]+\[^\{\n\]*%xmm\[0-9\]+\[^\n\]*%k\[0-7\](?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vptestmd\[
\\t\]+\[^\{\n\]*%ymm\[0-9\]+\[^\n\]*%k\[0-7\]\{%*k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1
} } */
+/* { dg-final { scan-assembler-times "vptestmd\[
\\t\]+\[^\{\n\]*%xmm\[0-9\]+\[^\n\]*%k\[0-7\]\{%*k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1
} } */
+/* { dg-final { scan-assembler-times "vptestmd\[
\\t\]+\[^\{\n\]*%ymm\[0-9\]+\[^\n\]*%k\[0-7\](?:\n|\[ \\t\]+#)" 1 } } */
/* { dg-final { scan-assembler-times "vptestmd\[
\\t\]+\[^\{\n\]*%ymm\[0-9\]+\[^\n\]*%k\[0-7\]\{%*k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1
} } */
#include <immintrin.h>
diff --git a/gcc/testsuite/gcc.target/i386/bitwise_mask_op-1.c
b/gcc/testsuite/gcc.target/i386/bitwise_mask_op-1.c
index 826ed6921d4..b2c40aafee9 100644
--- a/gcc/testsuite/gcc.target/i386/bitwise_mask_op-1.c
+++ b/gcc/testsuite/gcc.target/i386/bitwise_mask_op-1.c
@@ -77,7 +77,7 @@ foo_xorb (__m512i a, __m512i b, __m512i c, __m512i d)
return _mm512_mask_add_epi64 (c, m1 ^ m2, a, d);
}
-/* { dg-final { scan-assembler-times "korw" "2" } } */
+/* { dg-final { scan-assembler-times "kxorw" "2" } } */
__m512i
foo_andq (__m512i a, __m512i b, __m512i c, __m512i d)
diff --git a/gcc/testsuite/gcc.target/i386/cond_op_shift_q-1.c
b/gcc/testsuite/gcc.target/i386/cond_op_shift_q-1.c
index 1b981b57497..19f2fabb620 100644
--- a/gcc/testsuite/gcc.target/i386/cond_op_shift_q-1.c
+++ b/gcc/testsuite/gcc.target/i386/cond_op_shift_q-1.c
@@ -2,8 +2,8 @@
/* { dg-options "-O2 -march=skylake-avx512 -fdump-tree-optimized -DTYPE=int64"
} */
/* { dg-final { scan-tree-dump-times ".COND_SHR" 2 "optimized" } } */
/* { dg-final { scan-tree-dump-times ".COND_SHL" 2 "optimized" } } */
-/* { dg-final { scan-assembler-times "vpsravq" 1 } } */
-/* { dg-final { scan-assembler-times "vpsllvq" 1 } } */
+/* { dg-final { scan-assembler-times "vpsraq" 1 } } */
+/* { dg-final { scan-assembler-times "vpsllq" 1 } } */
/* { dg-final { scan-assembler-times "vpsravq" 1 } } */
/* { dg-final { scan-assembler-times "vpsllvq" 1 } } */
diff --git a/gcc/testsuite/gcc.target/i386/cond_op_shift_ud-1.c
b/gcc/testsuite/gcc.target/i386/cond_op_shift_ud-1.c
index eea0f6720c6..6a5c943a399 100644
--- a/gcc/testsuite/gcc.target/i386/cond_op_shift_ud-1.c
+++ b/gcc/testsuite/gcc.target/i386/cond_op_shift_ud-1.c
@@ -2,8 +2,8 @@
/* { dg-options "-O2 -march=skylake-avx512 -fdump-tree-optimized
-DTYPE=uint32" } */
/* { dg-final { scan-tree-dump-times ".COND_SHR" 2 "optimized" } } */
/* { dg-final { scan-tree-dump-times ".COND_SHL" 2 "optimized" } } */
-/* { dg-final { scan-assembler-times "vpsrlvd" 1 } } */
-/* { dg-final { scan-assembler-times "vpsllvd" 1 } } */
+/* { dg-final { scan-assembler-times "vpsrld" 1 } } */
+/* { dg-final { scan-assembler-times "vpslld" 1 } } */
/* { dg-final { scan-assembler-times "vpsrlvd" 1 } } */
/* { dg-final { scan-assembler-times "vpsllvd" 1 } } */
diff --git a/gcc/testsuite/gcc.target/i386/cond_op_shift_uq-1.c
b/gcc/testsuite/gcc.target/i386/cond_op_shift_uq-1.c
index 77a03886d06..b8a3c50c380 100644
--- a/gcc/testsuite/gcc.target/i386/cond_op_shift_uq-1.c
+++ b/gcc/testsuite/gcc.target/i386/cond_op_shift_uq-1.c
@@ -4,7 +4,7 @@
/* { dg-final { scan-tree-dump-times ".COND_SHL" 2 "optimized" } } */
/* { dg-final { scan-assembler-times "vpsrlq" 1 } } */
/* { dg-final { scan-assembler-times "vpsllq" 1 } } */
-/* { dg-final { scan-assembler-times "vpsrlq" 1 } } */
-/* { dg-final { scan-assembler-times "vpsllq" 1 } } */
+/* { dg-final { scan-assembler-times "vpsrlvq" 1 } } */
+/* { dg-final { scan-assembler-times "vpsllvq" 1 } } */
#include "cond_op_shift_d-1.c"
diff --git a/gcc/testsuite/gcc.target/i386/memcpy-pr95886.c
b/gcc/testsuite/gcc.target/i386/memcpy-pr95886.c
index 0699146296a..6f39b992728 100644
--- a/gcc/testsuite/gcc.target/i386/memcpy-pr95886.c
+++ b/gcc/testsuite/gcc.target/i386/memcpy-pr95886.c
@@ -74,7 +74,7 @@ void cpy_123406789 (void *d)
__builtin_memcpy (d, a1234067890, 9);
}
-/* { dg-final { scan-rtl-dump-times "const_int 578437695685198337" 1 "expand"}
} */
+/* { dg-final { scan-rtl-dump-times "const_int 578437674277470721" 1 "expand"}
} */
const char a1234507890[10] = { 1, 2, 3, 4, 5, 0, 7, 8, 9 };
diff --git a/gcc/testsuite/gcc.target/i386/part-vect-sqrtph-1.c
b/gcc/testsuite/gcc.target/i386/part-vect-sqrtph-1.c
index b7f9e7fb9b2..a6e62d0094b 100644
--- a/gcc/testsuite/gcc.target/i386/part-vect-sqrtph-1.c
+++ b/gcc/testsuite/gcc.target/i386/part-vect-sqrtph-1.c
@@ -1,7 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-mavx512fp16 -mavx512vl -Ofast" } */
/* { dg-final { scan-assembler-times {(?n)vsqrtph[ \t].*%xmm[0-9]} 2 { target
{ ! ia32 } } } } */
-/* { dg-final { scan-assembler-times {(?n)vsqrtph[ \t].*%xmm[0-9]} 2 { target
{ ! ia32 } } } } */
void
foo16_sqrt (_Float16* a, _Float16* __restrict c)
diff --git a/gcc/testsuite/gcc.target/i386/pr107432-7.c
b/gcc/testsuite/gcc.target/i386/pr107432-7.c
index 1b33e9a9508..45c58b4bd36 100644
--- a/gcc/testsuite/gcc.target/i386/pr107432-7.c
+++ b/gcc/testsuite/gcc.target/i386/pr107432-7.c
@@ -10,10 +10,10 @@
/* { dg-final { scan-assembler-times "vpmovsxbd" 7 { target { ! ia32 } } } } */
/* { dg-final { scan-assembler-times "vpmovzxbd" 5 { target { ia32 } } } } */
/* { dg-final { scan-assembler-times "vpmovzxbd" 7 { target { ! ia32 } } } } */
-/* { dg-final { scan-assembler-times "vpmovsxbd" 5 { target { ia32 } } } } */
-/* { dg-final { scan-assembler-times "vpmovsxbd" 7 { target { ! ia32 } } } } */
-/* { dg-final { scan-assembler-times "vpmovzxbd" 5 { target { ia32 } } } } */
-/* { dg-final { scan-assembler-times "vpmovzxbd" 7 { target { ! ia32 } } } } */
+/* { dg-final { scan-assembler-times "vpmovsxbw" 4 { target { ia32 } } } } */
+/* { dg-final { scan-assembler-times "vpmovsxbw" 5 { target { ! ia32 } } } } */
+/* { dg-final { scan-assembler-times "vpmovzxbw" 4 { target { ia32 } } } } */
+/* { dg-final { scan-assembler-times "vpmovzxbw" 5 { target { ! ia32 } } } } */
#include <x86intrin.h>
diff --git a/gcc/testsuite/gcc.target/i386/pr88828-0.c
b/gcc/testsuite/gcc.target/i386/pr88828-0.c
index 441c441b51d..6fceafe6ce5 100644
--- a/gcc/testsuite/gcc.target/i386/pr88828-0.c
+++ b/gcc/testsuite/gcc.target/i386/pr88828-0.c
@@ -9,15 +9,13 @@ v4si foo (v4si x)
return (v4si){ x[0], 1, x[2], 3 };
}
-/* { dg-final { scan-assembler "pblendw" } } */
-
v4si bar (v4sf x)
{
return (v4si){ 1, x[1], x[2], 3 };
}
/* { dg-final { scan-assembler "cvttps2dq" } } */
-/* { dg-final { scan-assembler "pblendw" } } */
+/* { dg-final { scan-assembler-times "pblendw" 2 } } */
v4si baz (v4si x)
{
--
2.31.1