diff mbox

Fix some i386 testcases for -frename-registers

Message ID 56AB50D4.9000304@redhat.com
State New
Headers show

Commit Message

Bernd Schmidt Jan. 29, 2016, 11:45 a.m. UTC
This patch corrects some tests that can fail with -frename-registers. 
The problems typically are of the form "xmm[0-7]+", disallowing 
registers 8 and 9, and "xmm[0-9]". disallowing numbers higher than 9. 
Most the patch was automatically generated, but there were some other 
cases as well.

Enabling register renaming would help with PR57193, I'll propose that 
separately after a few more tests.

This was bootstrapped and tested on x86_64-linux. Ok?


Bernd
diff mbox

Patch

	* gcc.target/i386/avx512bw-vptestmb-1.c: Correct [xyz]mm register
	number scans.
	* gcc.target/i386/avx512bw-vptestmw-1.c: Likewise.
	* gcc.target/i386/avx512bw-vptestnmb-1.c: Likewise.
	* gcc.target/i386/avx512bw-vptestnmw-1.c: Likewise.
	* gcc.target/i386/avx512cd-vpbroadcastmb2q-1.c: Likewise.
	* gcc.target/i386/avx512cd-vpbroadcastmw2d-1.c: Likewise.
	* gcc.target/i386/avx512dq-vfpclasspd-1.c: Likewise.
	* gcc.target/i386/avx512dq-vfpclassps-1.c: Likewise.
	* gcc.target/i386/avx512dq-vinsertf64x2-1.c: Likewise.
	* gcc.target/i386/avx512dq-vinserti64x2-1.c: Likewise.
	* gcc.target/i386/avx512f-gather-5.c: Likewise.
	* gcc.target/i386/avx512f-vptestmd-1.c: Likewise.
	* gcc.target/i386/avx512f-vptestmq-1.c: Likewise.
	* gcc.target/i386/avx512f-vptestnmd-1.c: Likewise.
	* gcc.target/i386/avx512f-vptestnmq-1.c: Likewise.
	* gcc.target/i386/avx512f-vrndscaleps-1.c: Likewise.
	* gcc.target/i386/avx512vl-vpbroadcastmb2q-1.c: Likewise.
	* gcc.target/i386/avx512vl-vpbroadcastmw2d-1.c: Likewise.
	* gcc.target/i386/avx512vl-vptestmd-1.c: Likewise.
	* gcc.target/i386/avx512vl-vptestmq-1.c: Likewise.
	* gcc.target/i386/avx512vl-vptestnmd-1.c: Likewise.
	* gcc.target/i386/avx512vl-vptestnmq-1.c: Likewise.
	* gcc.target/i386/pr32219-2.c: Allow registers other than %eax in
	scans.
	* gcc.target/i386/pr32219-4.c: Likewise.
	* gcc.target/i386/pr32219-6.c: Likewise.
	* gcc.target/i386/pr32219-8.c: Likewise.

Index: gcc/testsuite/gcc.target/i386/avx512bw-vptestmb-1.c
===================================================================
--- gcc/testsuite/gcc.target/i386/avx512bw-vptestmb-1.c	(revision 232689)
+++ gcc/testsuite/gcc.target/i386/avx512bw-vptestmb-1.c	(working copy)
@@ -1,11 +1,11 @@ 
 /* { dg-do compile } */
 /* { dg-options "-mavx512bw -mavx512vl -O2" } */
-/* { dg-final { scan-assembler-times "vptestmb\[ \\t\]+\[^\{\n\]*%xmm\[0-7\]+\[^\n\]*k\[1-7\]\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vptestmb\[ \\t\]+\[^\{\n\]*%ymm\[0-7\]+\[^\n\]*k\[1-7\]\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vptestmb\[ \\t\]+\[^\{\n\]*%zmm\[0-7\]+\[^\n\]*k\[1-7\]\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vptestmb\[ \\t\]+\[^\{\n\]*%xmm\[0-7\]+\[^\n\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vptestmb\[ \\t\]+\[^\{\n\]*%ymm\[0-7\]+\[^\n\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vptestmb\[ \\t\]+\[^\{\n\]*%zmm\[0-7\]+\[^\n\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestmb\[ \\t\]+\[^\{\n\]*%xmm\[0-9\]+\[^\n\]*k\[1-7\]\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestmb\[ \\t\]+\[^\{\n\]*%ymm\[0-9\]+\[^\n\]*k\[1-7\]\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestmb\[ \\t\]+\[^\{\n\]*%zmm\[0-9\]+\[^\n\]*k\[1-7\]\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestmb\[ \\t\]+\[^\{\n\]*%xmm\[0-9\]+\[^\n\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestmb\[ \\t\]+\[^\{\n\]*%ymm\[0-9\]+\[^\n\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestmb\[ \\t\]+\[^\{\n\]*%zmm\[0-9\]+\[^\n\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
 
 #include <immintrin.h>
 
Index: gcc/testsuite/gcc.target/i386/avx512bw-vptestmw-1.c
===================================================================
--- gcc/testsuite/gcc.target/i386/avx512bw-vptestmw-1.c	(revision 232689)
+++ gcc/testsuite/gcc.target/i386/avx512bw-vptestmw-1.c	(working copy)
@@ -1,11 +1,11 @@ 
 /* { dg-do compile } */
 /* { dg-options "-mavx512bw -mavx512vl -O2" } */
-/* { dg-final { scan-assembler-times "vptestmw\[ \\t\]+\[^\{\n\]*%xmm\[0-7\]+\[^\n\]*k\[1-7\]\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vptestmw\[ \\t\]+\[^\{\n\]*%ymm\[0-7\]+\[^\n\]*k\[1-7\]\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vptestmw\[ \\t\]+\[^\{\n\]*%zmm\[0-7\]+\[^\n\]*k\[1-7\]\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vptestmw\[ \\t\]+\[^\{\n\]*%xmm\[0-7\]+\[^\n\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vptestmw\[ \\t\]+\[^\{\n\]*%ymm\[0-7\]+\[^\n\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vptestmw\[ \\t\]+\[^\{\n\]*%zmm\[0-7\]+\[^\n\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestmw\[ \\t\]+\[^\{\n\]*%xmm\[0-9\]+\[^\n\]*k\[1-7\]\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestmw\[ \\t\]+\[^\{\n\]*%ymm\[0-9\]+\[^\n\]*k\[1-7\]\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestmw\[ \\t\]+\[^\{\n\]*%zmm\[0-9\]+\[^\n\]*k\[1-7\]\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestmw\[ \\t\]+\[^\{\n\]*%xmm\[0-9\]+\[^\n\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestmw\[ \\t\]+\[^\{\n\]*%ymm\[0-9\]+\[^\n\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestmw\[ \\t\]+\[^\{\n\]*%zmm\[0-9\]+\[^\n\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
 
 #include <immintrin.h>
 
Index: gcc/testsuite/gcc.target/i386/avx512bw-vptestnmb-1.c
===================================================================
--- gcc/testsuite/gcc.target/i386/avx512bw-vptestnmb-1.c	(revision 232689)
+++ gcc/testsuite/gcc.target/i386/avx512bw-vptestnmb-1.c	(working copy)
@@ -1,11 +1,11 @@ 
 /* { dg-do compile } */
 /* { dg-options "-mavx512bw -mavx512vl -O2" } */
-/* { dg-final { scan-assembler-times "vptestnmb\[ \\t\]+\[^\{\n\]*%xmm\[0-7\]+\[^\n\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vptestnmb\[ \\t\]+\[^\{\n\]*%ymm\[0-7\]+\[^\n\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vptestnmb\[ \\t\]+\[^\{\n\]*%zmm\[0-7\]+\[^\n\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vptestnmb\[ \\t\]+\[^\{\n\]*%xmm\[0-7\]+\[^\n\]*k\[1-7\]\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vptestnmb\[ \\t\]+\[^\{\n\]*%ymm\[0-7\]+\[^\n\]*k\[1-7\]\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vptestnmb\[ \\t\]+\[^\{\n\]*%zmm\[0-7\]+\[^\n\]*k\[1-7\]\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestnmb\[ \\t\]+\[^\{\n\]*%xmm\[0-9\]+\[^\n\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestnmb\[ \\t\]+\[^\{\n\]*%ymm\[0-9\]+\[^\n\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestnmb\[ \\t\]+\[^\{\n\]*%zmm\[0-9\]+\[^\n\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestnmb\[ \\t\]+\[^\{\n\]*%xmm\[0-9\]+\[^\n\]*k\[1-7\]\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestnmb\[ \\t\]+\[^\{\n\]*%ymm\[0-9\]+\[^\n\]*k\[1-7\]\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestnmb\[ \\t\]+\[^\{\n\]*%zmm\[0-9\]+\[^\n\]*k\[1-7\]\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
 
 #include <immintrin.h>
 
Index: gcc/testsuite/gcc.target/i386/avx512bw-vptestnmw-1.c
===================================================================
--- gcc/testsuite/gcc.target/i386/avx512bw-vptestnmw-1.c	(revision 232689)
+++ gcc/testsuite/gcc.target/i386/avx512bw-vptestnmw-1.c	(working copy)
@@ -1,11 +1,11 @@ 
 /* { dg-do compile } */
 /* { dg-options "-mavx512bw -mavx512vl -O2" } */
-/* { dg-final { scan-assembler-times "vptestnmw\[ \\t\]+\[^\{\n\]*%xmm\[0-7\]+\[^\n\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vptestnmw\[ \\t\]+\[^\{\n\]*%ymm\[0-7\]+\[^\n\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vptestnmw\[ \\t\]+\[^\{\n\]*%zmm\[0-7\]+\[^\n\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vptestnmw\[ \\t\]+\[^\{\n\]*%xmm\[0-7\]+\[^\n\]*k\[1-7\]\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vptestnmw\[ \\t\]+\[^\{\n\]*%ymm\[0-7\]+\[^\n\]*k\[1-7\]\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vptestnmw\[ \\t\]+\[^\{\n\]*%zmm\[0-7\]+\[^\n\]*k\[1-7\]\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestnmw\[ \\t\]+\[^\{\n\]*%xmm\[0-9\]+\[^\n\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestnmw\[ \\t\]+\[^\{\n\]*%ymm\[0-9\]+\[^\n\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestnmw\[ \\t\]+\[^\{\n\]*%zmm\[0-9\]+\[^\n\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestnmw\[ \\t\]+\[^\{\n\]*%xmm\[0-9\]+\[^\n\]*k\[1-7\]\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestnmw\[ \\t\]+\[^\{\n\]*%ymm\[0-9\]+\[^\n\]*k\[1-7\]\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestnmw\[ \\t\]+\[^\{\n\]*%zmm\[0-9\]+\[^\n\]*k\[1-7\]\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
 
 #include <immintrin.h>
 
Index: gcc/testsuite/gcc.target/i386/avx512cd-vpbroadcastmb2q-1.c
===================================================================
--- gcc/testsuite/gcc.target/i386/avx512cd-vpbroadcastmb2q-1.c	(revision 232689)
+++ gcc/testsuite/gcc.target/i386/avx512cd-vpbroadcastmb2q-1.c	(working copy)
@@ -1,6 +1,6 @@ 
 /* { dg-do compile } */
 /* { dg-options "-mavx512cd -O2" } */
-/* { dg-final { scan-assembler-times "vpbroadcastmb2q\[ \\t\]+\[^\{\n\]*k\[1-7\]\[^\n\]*%zmm\[0-7\]+(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vpbroadcastmb2q\[ \\t\]+\[^\{\n\]*k\[1-7\]\[^\n\]*%zmm\[0-9\]+(?:\n|\[ \\t\]+#)" 1 } } */
 
 #include <immintrin.h>
 
Index: gcc/testsuite/gcc.target/i386/avx512cd-vpbroadcastmw2d-1.c
===================================================================
--- gcc/testsuite/gcc.target/i386/avx512cd-vpbroadcastmw2d-1.c	(revision 232689)
+++ gcc/testsuite/gcc.target/i386/avx512cd-vpbroadcastmw2d-1.c	(working copy)
@@ -1,6 +1,6 @@ 
 /* { dg-do compile } */
 /* { dg-options "-mavx512cd -O2" } */
-/* { dg-final { scan-assembler-times "vpbroadcastmw2d\[ \\t\]+\[^\{\n\]*k\[1-7\]\[^\n\]*%zmm\[0-7\]+(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vpbroadcastmw2d\[ \\t\]+\[^\{\n\]*k\[1-7\]\[^\n\]*%zmm\[0-9\]+(?:\n|\[ \\t\]+#)" 1 } } */
 
 #include <immintrin.h>
 
Index: gcc/testsuite/gcc.target/i386/avx512dq-vfpclasspd-1.c
===================================================================
--- gcc/testsuite/gcc.target/i386/avx512dq-vfpclasspd-1.c	(revision 232689)
+++ gcc/testsuite/gcc.target/i386/avx512dq-vfpclasspd-1.c	(working copy)
@@ -1,11 +1,11 @@ 
 /* { dg-do compile } */
 /* { dg-options "-mavx512dq -mavx512vl -O2" } */
-/* { dg-final { scan-assembler-times "vfpclasspd\[ \\t\]+\[^\{\n\]*%zmm\[0-7\]+\[^\n^k\]*%k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vfpclasspd\[ \\t\]+\[^\{\n\]*%ymm\[0-7\]+\[^\n^k\]*%k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vfpclasspd\[ \\t\]+\[^\{\n\]*%xmm\[0-7\]+\[^\n^k\]*%k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vfpclasspd\[ \\t\]+\[^\{\n\]*%zmm\[0-7\]+\[^\n^k\]*%k\[1-7\]\{%k\[0-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vfpclasspd\[ \\t\]+\[^\{\n\]*%ymm\[0-7\]+\[^\n^k\]*%k\[1-7\]\{%k\[0-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vfpclasspd\[ \\t\]+\[^\{\n\]*%xmm\[0-7\]+\[^\n^k\]*%k\[1-7\]\{%k\[0-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vfpclasspd\[ \\t\]+\[^\{\n\]*%zmm\[0-9\]+\[^\n^k\]*%k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vfpclasspd\[ \\t\]+\[^\{\n\]*%ymm\[0-9\]+\[^\n^k\]*%k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vfpclasspd\[ \\t\]+\[^\{\n\]*%xmm\[0-9\]+\[^\n^k\]*%k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vfpclasspd\[ \\t\]+\[^\{\n\]*%zmm\[0-9\]+\[^\n^k\]*%k\[1-7\]\{%k\[0-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vfpclasspd\[ \\t\]+\[^\{\n\]*%ymm\[0-9\]+\[^\n^k\]*%k\[1-7\]\{%k\[0-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vfpclasspd\[ \\t\]+\[^\{\n\]*%xmm\[0-9\]+\[^\n^k\]*%k\[1-7\]\{%k\[0-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
 
 #include <immintrin.h>
 
Index: gcc/testsuite/gcc.target/i386/avx512dq-vfpclassps-1.c
===================================================================
--- gcc/testsuite/gcc.target/i386/avx512dq-vfpclassps-1.c	(revision 232689)
+++ gcc/testsuite/gcc.target/i386/avx512dq-vfpclassps-1.c	(working copy)
@@ -1,11 +1,11 @@ 
 /* { dg-do compile } */
 /* { dg-options "-mavx512dq -mavx512vl -O2" } */
-/* { dg-final { scan-assembler-times "vfpclassps\[ \\t\]+\[^\{\n\]*%zmm\[0-7\]+\[^\n^k\]*%k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vfpclassps\[ \\t\]+\[^\{\n\]*%ymm\[0-7\]+\[^\n^k\]*%k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vfpclassps\[ \\t\]+\[^\{\n\]*%xmm\[0-7\]+\[^\n^k\]*%k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vfpclassps\[ \\t\]+\[^\{\n\]*%zmm\[0-7\]+\[^\n^k\]*%k\[1-7\]\{%k\[0-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vfpclassps\[ \\t\]+\[^\{\n\]*%ymm\[0-7\]+\[^\n^k\]*%k\[1-7\]\{%k\[0-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vfpclassps\[ \\t\]+\[^\{\n\]*%xmm\[0-7\]+\[^\n^k\]*%k\[1-7\]\{%k\[0-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vfpclassps\[ \\t\]+\[^\{\n\]*%zmm\[0-9\]+\[^\n^k\]*%k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vfpclassps\[ \\t\]+\[^\{\n\]*%ymm\[0-9\]+\[^\n^k\]*%k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vfpclassps\[ \\t\]+\[^\{\n\]*%xmm\[0-9\]+\[^\n^k\]*%k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vfpclassps\[ \\t\]+\[^\{\n\]*%zmm\[0-9\]+\[^\n^k\]*%k\[1-7\]\{%k\[0-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vfpclassps\[ \\t\]+\[^\{\n\]*%ymm\[0-9\]+\[^\n^k\]*%k\[1-7\]\{%k\[0-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vfpclassps\[ \\t\]+\[^\{\n\]*%xmm\[0-9\]+\[^\n^k\]*%k\[1-7\]\{%k\[0-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
 
 #include <immintrin.h>
 
Index: gcc/testsuite/gcc.target/i386/avx512dq-vinsertf64x2-1.c
===================================================================
--- gcc/testsuite/gcc.target/i386/avx512dq-vinsertf64x2-1.c	(revision 232689)
+++ gcc/testsuite/gcc.target/i386/avx512dq-vinsertf64x2-1.c	(working copy)
@@ -1,11 +1,11 @@ 
 /* { dg-do compile } */
 /* { dg-options "-mavx512dq -mavx512vl -O2" } */
-/* { dg-final { scan-assembler-times "vinsertf64x2\[^\n\]*ymm\[0-9\](?:\n|\[ \\t\]+#)"  1 } } */
-/* { dg-final { scan-assembler-times "vinsertf64x2\[^\n\]*ymm\[0-9\]\{%k\[1-7\]\}\{z\}(?:\n|\[ \\t\]+#)"  1 } } */
-/* { dg-final { scan-assembler-times "vinsertf64x2\[^\n\]*ymm\[0-9\]\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)"  1 } } */
-/* { dg-final { scan-assembler-times "vinsertf64x2\[^\n\]*zmm\[0-9\](?:\n|\[ \\t\]+#)"  1 } } */
-/* { dg-final { scan-assembler-times "vinsertf64x2\[^\n\]*zmm\[0-9\]\{%k\[1-7\]\}\{z\}(?:\n|\[ \\t\]+#)"  1 } } */
-/* { dg-final { scan-assembler-times "vinsertf64x2\[^\n\]*zmm\[0-9\]\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)"  1 } } */
+/* { dg-final { scan-assembler-times "vinsertf64x2\[^\n\]*ymm\[0-9\]+(?:\n|\[ \\t\]+#)"  1 } } */
+/* { dg-final { scan-assembler-times "vinsertf64x2\[^\n\]*ymm\[0-9\]+\{%k\[1-7\]\}\{z\}(?:\n|\[ \\t\]+#)"  1 } } */
+/* { dg-final { scan-assembler-times "vinsertf64x2\[^\n\]*ymm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)"  1 } } */
+/* { dg-final { scan-assembler-times "vinsertf64x2\[^\n\]*zmm\[0-9\]+(?:\n|\[ \\t\]+#)"  1 } } */
+/* { dg-final { scan-assembler-times "vinsertf64x2\[^\n\]*zmm\[0-9\]+\{%k\[1-7\]\}\{z\}(?:\n|\[ \\t\]+#)"  1 } } */
+/* { dg-final { scan-assembler-times "vinsertf64x2\[^\n\]*zmm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)"  1 } } */
 
 #include <immintrin.h>
 
Index: gcc/testsuite/gcc.target/i386/avx512dq-vinserti64x2-1.c
===================================================================
--- gcc/testsuite/gcc.target/i386/avx512dq-vinserti64x2-1.c	(revision 232689)
+++ gcc/testsuite/gcc.target/i386/avx512dq-vinserti64x2-1.c	(working copy)
@@ -1,11 +1,11 @@ 
 /* { dg-do compile } */
 /* { dg-options "-mavx512dq -mavx512vl -O2" } */
-/* { dg-final { scan-assembler-times "vinserti64x2\[^\n\]*ymm\[0-9\](?:\n|\[ \\t\]+#)"  1 } } */
-/* { dg-final { scan-assembler-times "vinserti64x2\[^\n\]*ymm\[0-9\]\{%k\[1-7\]\}\{z\}(?:\n|\[ \\t\]+#)"  1 } } */
-/* { dg-final { scan-assembler-times "vinserti64x2\[^\n\]*ymm\[0-9\]\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)"  1 } } */
-/* { dg-final { scan-assembler-times "vinserti64x2\[^\n\]*zmm\[0-9\](?:\n|\[ \\t\]+#)"  1 } } */
-/* { dg-final { scan-assembler-times "vinserti64x2\[^\n\]*zmm\[0-9\]\{%k\[1-7\]\}\{z\}(?:\n|\[ \\t\]+#)"  1 } } */
-/* { dg-final { scan-assembler-times "vinserti64x2\[^\n\]*zmm\[0-9\]\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)"  1 } } */
+/* { dg-final { scan-assembler-times "vinserti64x2\[^\n\]*ymm\[0-9\]+(?:\n|\[ \\t\]+#)"  1 } } */
+/* { dg-final { scan-assembler-times "vinserti64x2\[^\n\]*ymm\[0-9\]+\{%k\[1-7\]\}\{z\}(?:\n|\[ \\t\]+#)"  1 } } */
+/* { dg-final { scan-assembler-times "vinserti64x2\[^\n\]*ymm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)"  1 } } */
+/* { dg-final { scan-assembler-times "vinserti64x2\[^\n\]*zmm\[0-9\]+(?:\n|\[ \\t\]+#)"  1 } } */
+/* { dg-final { scan-assembler-times "vinserti64x2\[^\n\]*zmm\[0-9\]+\{%k\[1-7\]\}\{z\}(?:\n|\[ \\t\]+#)"  1 } } */
+/* { dg-final { scan-assembler-times "vinserti64x2\[^\n\]*zmm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)"  1 } } */
 
 #include <immintrin.h>
 
Index: gcc/testsuite/gcc.target/i386/avx512f-gather-5.c
===================================================================
--- gcc/testsuite/gcc.target/i386/avx512f-gather-5.c	(revision 232689)
+++ gcc/testsuite/gcc.target/i386/avx512f-gather-5.c	(working copy)
@@ -3,7 +3,7 @@ 
 
 #include "avx512f-gather-4.c"
 
-/* { dg-final { scan-assembler-times "gather\[^\n\]*zmm\[0-9\]\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 2 } } */
+/* { dg-final { scan-assembler-times "gather\[^\n\]*zmm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 2 } } */
 /* { dg-final { scan-assembler-not "gather\[^\n\]*ymm\[^\n\]*ymm" } } */
 /* { dg-final { scan-assembler-not "gather\[^\n\]*xmm\[^\n\]*ymm" } } */
 /* { dg-final { scan-assembler-not "gather\[^\n\]*ymm\[^\n\]*xmm" } } */
Index: gcc/testsuite/gcc.target/i386/avx512f-vptestmd-1.c
===================================================================
--- gcc/testsuite/gcc.target/i386/avx512f-vptestmd-1.c	(revision 232689)
+++ gcc/testsuite/gcc.target/i386/avx512f-vptestmd-1.c	(working copy)
@@ -1,7 +1,7 @@ 
 /* { dg-do compile } */
 /* { dg-options "-mavx512f -O2" } */
-/* { dg-final { scan-assembler-times "vptestmd\[ \\t\]+\[^\{\n\]*%zmm\[0-7\]+\[^\n^k\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vptestmd\[ \\t\]+\[^\{\n\]*%zmm\[0-7\]+\[^\n^k\]*k\[1-7\]\{%k\[0-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestmd\[ \\t\]+\[^\{\n\]*%zmm\[0-9\]+\[^\n^k\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestmd\[ \\t\]+\[^\{\n\]*%zmm\[0-9\]+\[^\n^k\]*k\[1-7\]\{%k\[0-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
 
 #include <immintrin.h>
 
Index: gcc/testsuite/gcc.target/i386/avx512f-vptestmq-1.c
===================================================================
--- gcc/testsuite/gcc.target/i386/avx512f-vptestmq-1.c	(revision 232689)
+++ gcc/testsuite/gcc.target/i386/avx512f-vptestmq-1.c	(working copy)
@@ -1,7 +1,7 @@ 
 /* { dg-do compile } */
 /* { dg-options "-mavx512f -O2" } */
-/* { dg-final { scan-assembler-times "vptestmq\[ \\t\]+\[^\{\n\]*%zmm\[0-7\]+\[^\n^k\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vptestmq\[ \\t\]+\[^\{\n\]*%zmm\[0-7\]+\[^\n^k\]*k\[1-7\]\{%k\[0-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestmq\[ \\t\]+\[^\{\n\]*%zmm\[0-9\]+\[^\n^k\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestmq\[ \\t\]+\[^\{\n\]*%zmm\[0-9\]+\[^\n^k\]*k\[1-7\]\{%k\[0-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
 
 #include <immintrin.h>
 
Index: gcc/testsuite/gcc.target/i386/avx512f-vptestnmd-1.c
===================================================================
--- gcc/testsuite/gcc.target/i386/avx512f-vptestnmd-1.c	(revision 232689)
+++ gcc/testsuite/gcc.target/i386/avx512f-vptestnmd-1.c	(working copy)
@@ -1,7 +1,7 @@ 
 /* { dg-do compile } */
 /* { dg-options "-mavx512f -O2" } */
-/* { dg-final { scan-assembler-times "vptestnmd\[ \\t\]+\[^\{\n\]*%zmm\[0-7\]+\[^\n^k\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vptestnmd\[ \\t\]+\[^\{\n\]*%zmm\[0-7\]+\[^\n^k\]*k\[1-7\]\{%k\[0-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestnmd\[ \\t\]+\[^\{\n\]*%zmm\[0-9\]+\[^\n^k\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestnmd\[ \\t\]+\[^\{\n\]*%zmm\[0-9\]+\[^\n^k\]*k\[1-7\]\{%k\[0-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
 
 #include <immintrin.h>
 
Index: gcc/testsuite/gcc.target/i386/avx512f-vptestnmq-1.c
===================================================================
--- gcc/testsuite/gcc.target/i386/avx512f-vptestnmq-1.c	(revision 232689)
+++ gcc/testsuite/gcc.target/i386/avx512f-vptestnmq-1.c	(working copy)
@@ -1,7 +1,7 @@ 
 /* { dg-do compile } */
 /* { dg-options "-mavx512f -O2" } */
-/* { dg-final { scan-assembler-times "vptestnmq\[ \\t\]+\[^\{\n\]*%zmm\[0-7\]+\[^\n^k\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vptestnmq\[ \\t\]+\[^\{\n\]*%zmm\[0-7\]+\[^\n^k\]*k\[1-7\]\{%k\[0-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestnmq\[ \\t\]+\[^\{\n\]*%zmm\[0-9\]+\[^\n^k\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestnmq\[ \\t\]+\[^\{\n\]*%zmm\[0-9\]+\[^\n^k\]*k\[1-7\]\{%k\[0-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
 
 #include <immintrin.h>
 
Index: gcc/testsuite/gcc.target/i386/avx512f-vrndscaleps-1.c
===================================================================
--- gcc/testsuite/gcc.target/i386/avx512f-vrndscaleps-1.c	(revision 232689)
+++ gcc/testsuite/gcc.target/i386/avx512f-vrndscaleps-1.c	(working copy)
@@ -1,9 +1,9 @@ 
 /* { dg-do compile } */
 /* { dg-options "-mavx512f -O2" } */
-/* { dg-final { scan-assembler-times "vrndscaleps\[ \\t\]+\[^\{\n\]*%zmm\[0-9\]+\[^\n\]*%zmm\[0-9\](?:\n|\[ \\t\]+#)"  3 } } */
+/* { dg-final { scan-assembler-times "vrndscaleps\[ \\t\]+\[^\{\n\]*%zmm\[0-9\]+\[^\n\]*%zmm\[0-9\]+(?:\n|\[ \\t\]+#)"  3 } } */
 /* { dg-final { scan-assembler-times "vrndscaleps\[ \\t\]+\[^\{\n\]*%zmm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)"  3 } } */
 /* { dg-final { scan-assembler-times "vrndscaleps\[ \\t\]+\[^\{\n\]*%zmm\[0-9\]+\{%k\[1-7\]\}\{z\}(?:\n|\[ \\t\]+#)"  1 } } */
-/* { dg-final { scan-assembler-times "vrndscaleps\[ \\t\]+\\S*,\[ \\t\]+\{sae\}\[^\n\]*%zmm\[0-9\]+\[^\n\]*%zmm\[0-9\](?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vrndscaleps\[ \\t\]+\\S*,\[ \\t\]+\{sae\}\[^\n\]*%zmm\[0-9\]+\[^\n\]*%zmm\[0-9\]+(?:\n|\[ \\t\]+#)" 1 } } */
 /* { dg-final { scan-assembler-times "vrndscaleps\[ \\t\]+\\S*,\[ \\t\]+\{sae\}\[^\n\]*%zmm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
 /* { dg-final { scan-assembler-times "vrndscaleps\[ \\t\]+\\S*,\[ \\t\]+\{sae\}\[^\n\]*%zmm\[0-9\]+\{%k\[1-7\]\}\{z\}(?:\n|\[ \\t\]+#)" 1 } } */
 
Index: gcc/testsuite/gcc.target/i386/avx512vl-vpbroadcastmb2q-1.c
===================================================================
--- gcc/testsuite/gcc.target/i386/avx512vl-vpbroadcastmb2q-1.c	(revision 232689)
+++ gcc/testsuite/gcc.target/i386/avx512vl-vpbroadcastmb2q-1.c	(working copy)
@@ -1,7 +1,7 @@ 
 /* { dg-do compile } */
 /* { dg-options "-mavx512vl -mavx512cd -O2" } */
-/* { dg-final { scan-assembler-times "vpbroadcastmb2q\[ \\t\]+\[^\{\n\]*k\[1-7\]\[^\n\]*%xmm\[0-7\]+(?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vpbroadcastmb2q\[ \\t\]+\[^\{\n\]*k\[1-7\]\[^\n\]*%ymm\[0-7\]+(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vpbroadcastmb2q\[ \\t\]+\[^\{\n\]*k\[1-7\]\[^\n\]*%xmm\[0-9\]+(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vpbroadcastmb2q\[ \\t\]+\[^\{\n\]*k\[1-7\]\[^\n\]*%ymm\[0-9\]+(?:\n|\[ \\t\]+#)" 1 } } */
 
 #include <immintrin.h>
 
Index: gcc/testsuite/gcc.target/i386/avx512vl-vpbroadcastmw2d-1.c
===================================================================
--- gcc/testsuite/gcc.target/i386/avx512vl-vpbroadcastmw2d-1.c	(revision 232689)
+++ gcc/testsuite/gcc.target/i386/avx512vl-vpbroadcastmw2d-1.c	(working copy)
@@ -1,7 +1,7 @@ 
 /* { dg-do compile } */
 /* { dg-options "-mavx512vl -mavx512cd -O2" } */
-/* { dg-final { scan-assembler-times "vpbroadcastmw2d\[ \\t\]+\[^\{\n\]*k\[1-7\]\[^\n\]*%xmm\[0-7\]+(?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vpbroadcastmw2d\[ \\t\]+\[^\{\n\]*k\[1-7\]\[^\n\]*%ymm\[0-7\]+(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vpbroadcastmw2d\[ \\t\]+\[^\{\n\]*k\[1-7\]\[^\n\]*%xmm\[0-9\]+(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vpbroadcastmw2d\[ \\t\]+\[^\{\n\]*k\[1-7\]\[^\n\]*%ymm\[0-9\]+(?:\n|\[ \\t\]+#)" 1 } } */
 
 #include <immintrin.h>
 
Index: gcc/testsuite/gcc.target/i386/avx512vl-vptestmd-1.c
===================================================================
--- gcc/testsuite/gcc.target/i386/avx512vl-vptestmd-1.c	(revision 232689)
+++ gcc/testsuite/gcc.target/i386/avx512vl-vptestmd-1.c	(working copy)
@@ -1,9 +1,9 @@ 
 /* { dg-do compile } */
 /* { dg-options "-mavx512vl -O2" } */
-/* { dg-final { scan-assembler-times "vptestmd\[ \\t\]+\[^\{\n\]*%xmm\[0-7\]+\[^\n\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vptestmd\[ \\t\]+\[^\{\n\]*%xmm\[0-7\]+\[^\n\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vptestmd\[ \\t\]+\[^\{\n\]*%ymm\[0-7\]+\[^\n\]*k\[1-7\]\{%*k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vptestmd\[ \\t\]+\[^\{\n\]*%ymm\[0-7\]+\[^\n\]*k\[1-7\]\{%*k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestmd\[ \\t\]+\[^\{\n\]*%xmm\[0-9\]+\[^\n\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestmd\[ \\t\]+\[^\{\n\]*%xmm\[0-9\]+\[^\n\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestmd\[ \\t\]+\[^\{\n\]*%ymm\[0-9\]+\[^\n\]*k\[1-7\]\{%*k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestmd\[ \\t\]+\[^\{\n\]*%ymm\[0-9\]+\[^\n\]*k\[1-7\]\{%*k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
 
 #include <immintrin.h>
 
Index: gcc/testsuite/gcc.target/i386/avx512vl-vptestmq-1.c
===================================================================
--- gcc/testsuite/gcc.target/i386/avx512vl-vptestmq-1.c	(revision 232689)
+++ gcc/testsuite/gcc.target/i386/avx512vl-vptestmq-1.c	(working copy)
@@ -1,9 +1,9 @@ 
 /* { dg-do compile } */
 /* { dg-options "-mavx512vl -O2" } */
-/* { dg-final { scan-assembler-times "vptestmq\[ \\t\]+\[^\{\n\]*%xmm\[0-7\]+\[^\n\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vptestmq\[ \\t\]+\[^\{\n\]*%ymm\[0-7\]+\[^\n\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vptestmq\[ \\t\]+\[^\{\n\]*%xmm\[0-7\]+\[^\n\]*k\[1-7\]\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vptestmq\[ \\t\]+\[^\{\n\]*%ymm\[0-7\]+\[^\n\]*k\[1-7\]\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestmq\[ \\t\]+\[^\{\n\]*%xmm\[0-9\]+\[^\n\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestmq\[ \\t\]+\[^\{\n\]*%ymm\[0-9\]+\[^\n\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestmq\[ \\t\]+\[^\{\n\]*%xmm\[0-9\]+\[^\n\]*k\[1-7\]\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestmq\[ \\t\]+\[^\{\n\]*%ymm\[0-9\]+\[^\n\]*k\[1-7\]\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
 
 #include <immintrin.h>
 
Index: gcc/testsuite/gcc.target/i386/avx512vl-vptestnmd-1.c
===================================================================
--- gcc/testsuite/gcc.target/i386/avx512vl-vptestnmd-1.c	(revision 232689)
+++ gcc/testsuite/gcc.target/i386/avx512vl-vptestnmd-1.c	(working copy)
@@ -1,9 +1,9 @@ 
 /* { dg-do compile } */
 /* { dg-options "-mavx512vl -O2" } */
-/* { dg-final { scan-assembler-times "vptestnmd\[ \\t\]+\[^\{\n\]*%xmm\[0-7\]+\[^\n\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vptestnmd\[ \\t\]+\[^\{\n\]*%ymm\[0-7\]+\[^\n\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vptestnmd\[ \\t\]+\[^\{\n\]*%xmm\[0-7\]+\[^\n\]*k\[1-7\]\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vptestnmd\[ \\t\]+\[^\{\n\]*%ymm\[0-7\]+\[^\n\]*k\[1-7\]\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestnmd\[ \\t\]+\[^\{\n\]*%xmm\[0-9\]+\[^\n\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestnmd\[ \\t\]+\[^\{\n\]*%ymm\[0-9\]+\[^\n\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestnmd\[ \\t\]+\[^\{\n\]*%xmm\[0-9\]+\[^\n\]*k\[1-7\]\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestnmd\[ \\t\]+\[^\{\n\]*%ymm\[0-9\]+\[^\n\]*k\[1-7\]\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
 
 #include <immintrin.h>
 
Index: gcc/testsuite/gcc.target/i386/avx512vl-vptestnmq-1.c
===================================================================
--- gcc/testsuite/gcc.target/i386/avx512vl-vptestnmq-1.c	(revision 232689)
+++ gcc/testsuite/gcc.target/i386/avx512vl-vptestnmq-1.c	(working copy)
@@ -1,9 +1,9 @@ 
 /* { dg-do compile } */
 /* { dg-options "-mavx512vl -O2" } */
-/* { dg-final { scan-assembler-times "vptestnmq\[ \\t\]+\[^\{\n\]*%xmm\[0-7\]+\[^\n\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vptestnmq\[ \\t\]+\[^\{\n\]*%ymm\[0-7\]+\[^\n\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vptestnmq\[ \\t\]+\[^\{\n\]*%xmm\[0-7\]+\[^\n\]*k\[1-7\]\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vptestnmq\[ \\t\]+\[^\{\n\]*%ymm\[0-7\]+\[^\n\]*k\[1-7\]\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestnmq\[ \\t\]+\[^\{\n\]*%xmm\[0-9\]+\[^\n\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestnmq\[ \\t\]+\[^\{\n\]*%ymm\[0-9\]+\[^\n\]*k\[1-7\](?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestnmq\[ \\t\]+\[^\{\n\]*%xmm\[0-9\]+\[^\n\]*k\[1-7\]\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
+/* { dg-final { scan-assembler-times "vptestnmq\[ \\t\]+\[^\{\n\]*%ymm\[0-9\]+\[^\n\]*k\[1-7\]\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
 
 #include <immintrin.h>
 
Index: gcc/testsuite/gcc.target/i386/pr32219-2.c
===================================================================
--- gcc/testsuite/gcc.target/i386/pr32219-2.c	(revision 232689)
+++ gcc/testsuite/gcc.target/i386/pr32219-2.c	(working copy)
@@ -11,7 +11,7 @@  foo ()
   return xxx;
 }
 
-/* { dg-final { scan-assembler-not "movl\[ \t\]xxx\\(%rip\\), %eax" { target { ! ia32 } } } } */
+/* { dg-final { scan-assembler-not "movl\[ \t\]xxx\\(%rip\\), %" { target { ! ia32 } } } } */
 /* { dg-final { scan-assembler "xxx@GOTPCREL" { target { ! ia32 } } } } */
-/* { dg-final { scan-assembler-not "movl\[ \t\]xxx@GOTOFF\\(%\[^,\]*\\), %eax" { target ia32 } } } */
-/* { dg-final { scan-assembler "movl\[ \t\]xxx@GOT\\(%\[^,\]*\\), %eax" { target ia32 } } } */
+/* { dg-final { scan-assembler-not "movl\[ \t\]xxx@GOTOFF\\(%\[^,\]*\\), %" { target ia32 } } } */
+/* { dg-final { scan-assembler "movl\[ \t\]xxx@GOT\\(%\[^,\]*\\), %" { target ia32 } } } */
Index: gcc/testsuite/gcc.target/i386/pr32219-4.c
===================================================================
--- gcc/testsuite/gcc.target/i386/pr32219-4.c	(revision 232689)
+++ gcc/testsuite/gcc.target/i386/pr32219-4.c	(working copy)
@@ -12,7 +12,7 @@  foo ()
   return xxx;
 }
 
-/* { dg-final { scan-assembler-not "movl\[ \t\]xxx\\(%rip\\), %eax" { target { ! ia32 } } } } */
+/* { dg-final { scan-assembler-not "movl\[ \t\]xxx\\(%rip\\), %" { target { ! ia32 } } } } */
 /* { dg-final { scan-assembler "xxx@GOTPCREL" { target { ! ia32 } } } } */
-/* { dg-final { scan-assembler-not "movl\[ \t\]xxx@GOTOFF\\(%\[^,\]*\\), %eax" { target ia32 } } } */
-/* { dg-final { scan-assembler "movl\[ \t\]xxx@GOT\\(%\[^,\]*\\), %eax" { target ia32 } } } */
+/* { dg-final { scan-assembler-not "movl\[ \t\]xxx@GOTOFF\\(%\[^,\]*\\), %" { target ia32 } } } */
+/* { dg-final { scan-assembler "movl\[ \t\]xxx@GOT\\(%\[^,\]*\\), %" { target ia32 } } } */
Index: gcc/testsuite/gcc.target/i386/pr32219-6.c
===================================================================
--- gcc/testsuite/gcc.target/i386/pr32219-6.c	(revision 232689)
+++ gcc/testsuite/gcc.target/i386/pr32219-6.c	(working copy)
@@ -11,7 +11,7 @@  foo ()
   return xxx;
 }
 
-/* { dg-final { scan-assembler-not "movl\[ \t\]xxx\\(%rip\\), %eax" { target { ! ia32 } } } } */
+/* { dg-final { scan-assembler-not "movl\[ \t\]xxx\\(%rip\\), %" { target { ! ia32 } } } } */
 /* { dg-final { scan-assembler "xxx@GOTPCREL" { target { ! ia32 } } } } */
-/* { dg-final { scan-assembler-not "movl\[ \t\]xxx@GOTOFF\\(%\[^,\]*\\), %eax" { target ia32 } } } */
-/* { dg-final { scan-assembler "movl\[ \t\]xxx@GOT\\(%\[^,\]*\\), %eax" { target ia32 } } } */
+/* { dg-final { scan-assembler-not "movl\[ \t\]xxx@GOTOFF\\(%\[^,\]*\\), %" { target ia32 } } } */
+/* { dg-final { scan-assembler "movl\[ \t\]xxx@GOT\\(%\[^,\]*\\), %" { target ia32 } } } */
Index: gcc/testsuite/gcc.target/i386/pr32219-8.c
===================================================================
--- gcc/testsuite/gcc.target/i386/pr32219-8.c	(revision 232689)
+++ gcc/testsuite/gcc.target/i386/pr32219-8.c	(working copy)
@@ -12,7 +12,7 @@  foo ()
   return xxx;
 }
 
-/* { dg-final { scan-assembler-not "movl\[ \t\]xxx\\(%rip\\), %eax" { target { ! ia32 } } } } */
+/* { dg-final { scan-assembler-not "movl\[ \t\]xxx\\(%rip\\), %" { target { ! ia32 } } } } */
 /* { dg-final { scan-assembler "xxx@GOTPCREL" { target { ! ia32 } } } } */
-/* { dg-final { scan-assembler-not "movl\[ \t\]xxx@GOTOFF\\(%\[^,\]*\\), %eax" { target ia32 } } } */
-/* { dg-final { scan-assembler "movl\[ \t\]xxx@GOT\\(%\[^,\]*\\), %eax" { target ia32 } } } */
+/* { dg-final { scan-assembler-not "movl\[ \t\]xxx@GOTOFF\\(%\[^,\]*\\), %" { target ia32 } } } */
+/* { dg-final { scan-assembler "movl\[ \t\]xxx@GOT\\(%\[^,\]*\\), %" { target ia32 } } } */