On Mon, Sep 15, 2025 at 3:33 PM Haochen Jiang <[email protected]> wrote:
>
> 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?
Ok.
>
> 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
>


-- 
BR,
Hongtao

Reply via email to