public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* Re: Fix some i386 testcases for -frename-registers
@ 2016-01-29 12:19 Uros Bizjak
  2016-04-26 12:26 ` Bernd Schmidt
  0 siblings, 1 reply; 11+ messages in thread
From: Uros Bizjak @ 2016-01-29 12:19 UTC (permalink / raw)
  To: gcc-patches; +Cc: Bernd Schmidt

Hello!

> * 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.

OK.

Thanks,
Uros.

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Fix some i386 testcases for -frename-registers
  2016-01-29 12:19 Fix some i386 testcases for -frename-registers Uros Bizjak
@ 2016-04-26 12:26 ` Bernd Schmidt
  2016-04-26 18:35   ` H.J. Lu
  0 siblings, 1 reply; 11+ messages in thread
From: Bernd Schmidt @ 2016-04-26 12:26 UTC (permalink / raw)
  To: Uros Bizjak, gcc-patches

On 01/29/2016 01:19 PM, Uros Bizjak wrote:
>> * 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.
>
> OK.

Now committed.


Bernd

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Fix some i386 testcases for -frename-registers
  2016-04-26 12:26 ` Bernd Schmidt
@ 2016-04-26 18:35   ` H.J. Lu
  2016-04-26 19:32     ` Bernd Schmidt
  0 siblings, 1 reply; 11+ messages in thread
From: H.J. Lu @ 2016-04-26 18:35 UTC (permalink / raw)
  To: Bernd Schmidt; +Cc: Uros Bizjak, gcc-patches

On Tue, Apr 26, 2016 at 5:26 AM, Bernd Schmidt <bschmidt@redhat.com> wrote:
> On 01/29/2016 01:19 PM, Uros Bizjak wrote:
>>>
>>> * 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.
>>
>>
>> OK.
>
>
> Now committed.

This

/* { dg-final { scan-assembler-times "vmovdqa64\[
\\t\]+\[^\{\n\]*%ymm\[0-9\]+\[^\nxy\]*\\(.{5}(?:\n|\[ \\t\]+#)" 1 {
target nonpic } } } */

fails on x32 since x32 with 32-bit pointers has (%r10d) instead of
(%r10).  .{5} doesn't match.


-- 
H.J.

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Fix some i386 testcases for -frename-registers
  2016-04-26 18:35   ` H.J. Lu
@ 2016-04-26 19:32     ` Bernd Schmidt
  2016-04-26 19:39       ` H.J. Lu
  0 siblings, 1 reply; 11+ messages in thread
From: Bernd Schmidt @ 2016-04-26 19:32 UTC (permalink / raw)
  To: H.J. Lu; +Cc: Uros Bizjak, gcc-patches

On 04/26/2016 08:35 PM, H.J. Lu wrote:
> This
>
> /* { dg-final { scan-assembler-times "vmovdqa64\[
> \\t\]+\[^\{\n\]*%ymm\[0-9\]+\[^\nxy\]*\\(.{5}(?:\n|\[ \\t\]+#)" 1 {
> target nonpic } } } */
>
> fails on x32 since x32 with 32-bit pointers has (%r10d) instead of
> (%r10).  .{5} doesn't match.

What is this line actually trying to match? It's somewhat... nonobvious.


Bernd

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Fix some i386 testcases for -frename-registers
  2016-04-26 19:32     ` Bernd Schmidt
@ 2016-04-26 19:39       ` H.J. Lu
  2016-04-26 22:11         ` Bernd Schmidt
  0 siblings, 1 reply; 11+ messages in thread
From: H.J. Lu @ 2016-04-26 19:39 UTC (permalink / raw)
  To: Bernd Schmidt; +Cc: Uros Bizjak, gcc-patches

On Tue, Apr 26, 2016 at 12:32 PM, Bernd Schmidt <bschmidt@redhat.com> wrote:
> On 04/26/2016 08:35 PM, H.J. Lu wrote:
>>
>> This
>>
>> /* { dg-final { scan-assembler-times "vmovdqa64\[
>> \\t\]+\[^\{\n\]*%ymm\[0-9\]+\[^\nxy\]*\\(.{5}(?:\n|\[ \\t\]+#)" 1 {
>> target nonpic } } } */
>>
>> fails on x32 since x32 with 32-bit pointers has (%r10d) instead of
>> (%r10).  .{5} doesn't match.
>
>
> What is this line actually trying to match? It's somewhat... nonobvious.
>

It is hard to tell.  It can be reproduced on Linux/x86-64 by

# make check-gcc RUNTESTFLAGS="--target_board='unix{-mx32}'
i386.exp=avx512vl-vmovdqa64-1.c"

-- 
H.J.

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Fix some i386 testcases for -frename-registers
  2016-04-26 19:39       ` H.J. Lu
@ 2016-04-26 22:11         ` Bernd Schmidt
  2016-04-27  0:11           ` H.J. Lu
  0 siblings, 1 reply; 11+ messages in thread
From: Bernd Schmidt @ 2016-04-26 22:11 UTC (permalink / raw)
  To: H.J. Lu; +Cc: Uros Bizjak, gcc-patches

On 04/26/2016 09:39 PM, H.J. Lu wrote:
> make check-gcc RUNTESTFLAGS="--target_board='unix{-mx32}'
> i386.exp=avx512vl-vmovdqa64-1.c"

Unfortunately, that doesn't work:

/usr/include/gnu/stubs.h:13:28: fatal error: gnu/stubs-x32.h: No such 
file or directory
compilation terminated.

Trying to follow the recipe to get am x32 glibc built fails with the 
same error when trying to build an x32 libgcc. I think I'll need you to 
send me before/after assembly files (I'm assuming it's 
-frename-registers which makes the test fail on x32).


Bernd

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Fix some i386 testcases for -frename-registers
  2016-04-26 22:11         ` Bernd Schmidt
@ 2016-04-27  0:11           ` H.J. Lu
  2016-04-27  9:09             ` Bernd Schmidt
  0 siblings, 1 reply; 11+ messages in thread
From: H.J. Lu @ 2016-04-27  0:11 UTC (permalink / raw)
  To: Bernd Schmidt; +Cc: Uros Bizjak, gcc-patches

[-- Attachment #1: Type: text/plain, Size: 701 bytes --]

On Tue, Apr 26, 2016 at 3:11 PM, Bernd Schmidt <bschmidt@redhat.com> wrote:
> On 04/26/2016 09:39 PM, H.J. Lu wrote:
>>
>> make check-gcc RUNTESTFLAGS="--target_board='unix{-mx32}'
>> i386.exp=avx512vl-vmovdqa64-1.c"
>
>
> Unfortunately, that doesn't work:
>
> /usr/include/gnu/stubs.h:13:28: fatal error: gnu/stubs-x32.h: No such file
> or directory
> compilation terminated.
>
> Trying to follow the recipe to get am x32 glibc built fails with the same
> error when trying to build an x32 libgcc. I think I'll need you to send me
> before/after assembly files (I'm assuming it's -frename-registers which
> makes the test fail on x32).
>

Here are avx512vl-vmovdqa64-1.i, old.s and new.s.


-- 
H.J.

[-- Attachment #2: foo.tar.xz --]
[-- Type: application/x-xz, Size: 64328 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Fix some i386 testcases for -frename-registers
  2016-04-27  0:11           ` H.J. Lu
@ 2016-04-27  9:09             ` Bernd Schmidt
  2016-04-27 15:16               ` H.J. Lu
  0 siblings, 1 reply; 11+ messages in thread
From: Bernd Schmidt @ 2016-04-27  9:09 UTC (permalink / raw)
  To: H.J. Lu; +Cc: Uros Bizjak, gcc-patches

On 04/27/2016 02:10 AM, H.J. Lu wrote:
> On Tue, Apr 26, 2016 at 3:11 PM, Bernd Schmidt <bschmidt@redhat.com> wrote:
>> On 04/26/2016 09:39 PM, H.J. Lu wrote:
>>>
>>> make check-gcc RUNTESTFLAGS="--target_board='unix{-mx32}'
>>> i386.exp=avx512vl-vmovdqa64-1.c"
>>
>>
>> Unfortunately, that doesn't work:
>>
>> /usr/include/gnu/stubs.h:13:28: fatal error: gnu/stubs-x32.h: No such file
>> or directory
>> compilation terminated.
>>
>> Trying to follow the recipe to get am x32 glibc built fails with the same
>> error when trying to build an x32 libgcc. I think I'll need you to send me
>> before/after assembly files (I'm assuming it's -frename-registers which
>> makes the test fail on x32).
>>
>
> Here are avx512vl-vmovdqa64-1.i, old.s and new.s.

Still somewhat at a loss. Is it trying to match a register name and 
close paren with the '.{5}'? What if you replace that with something 
like '%[re][0-9a-z]*//)'? Or maybe '.{5,6}'?


Bernd

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Fix some i386 testcases for -frename-registers
  2016-04-27  9:09             ` Bernd Schmidt
@ 2016-04-27 15:16               ` H.J. Lu
  2016-04-27 15:30                 ` Bernd Schmidt
  0 siblings, 1 reply; 11+ messages in thread
From: H.J. Lu @ 2016-04-27 15:16 UTC (permalink / raw)
  To: Bernd Schmidt; +Cc: Uros Bizjak, gcc-patches

[-- Attachment #1: Type: text/plain, Size: 1142 bytes --]

On Wed, Apr 27, 2016 at 2:09 AM, Bernd Schmidt <bschmidt@redhat.com> wrote:
> On 04/27/2016 02:10 AM, H.J. Lu wrote:
>>
>> On Tue, Apr 26, 2016 at 3:11 PM, Bernd Schmidt <bschmidt@redhat.com>
>> wrote:
>>>
>>> On 04/26/2016 09:39 PM, H.J. Lu wrote:
>>>>
>>>>
>>>> make check-gcc RUNTESTFLAGS="--target_board='unix{-mx32}'
>>>> i386.exp=avx512vl-vmovdqa64-1.c"
>>>
>>>
>>>
>>> Unfortunately, that doesn't work:
>>>
>>> /usr/include/gnu/stubs.h:13:28: fatal error: gnu/stubs-x32.h: No such
>>> file
>>> or directory
>>> compilation terminated.
>>>
>>> Trying to follow the recipe to get am x32 glibc built fails with the same
>>> error when trying to build an x32 libgcc. I think I'll need you to send
>>> me
>>> before/after assembly files (I'm assuming it's -frename-registers which
>>> makes the test fail on x32).
>>>
>>
>> Here are avx512vl-vmovdqa64-1.i, old.s and new.s.
>
>
> Still somewhat at a loss. Is it trying to match a register name and close
> paren with the '.{5}'? What if you replace that with something like
> '%[re][0-9a-z]*//)'? Or maybe '.{5,6}'?
>

This works for -m32, -mx32 and -m64.  OK for trunk?

Thanks.

-- 
H.J.

[-- Attachment #2: p.patch --]
[-- Type: text/x-patch, Size: 1449 bytes --]

	* gcc.target/i386/avx512vl-vmovdqa64-1.c: Replace ".{5}" with
	".{5,6}".

diff --git a/gcc/testsuite/gcc.target/i386/avx512vl-vmovdqa64-1.c b/gcc/testsuite/gcc.target/i386/avx512vl-vmovdqa64-1.c
index 6930f79..14fe4b8 100644
--- a/gcc/testsuite/gcc.target/i386/avx512vl-vmovdqa64-1.c
+++ b/gcc/testsuite/gcc.target/i386/avx512vl-vmovdqa64-1.c
@@ -10,7 +10,7 @@
 /* { dg-final { scan-assembler-times "vmovdqa64\[ \\t\]+\[^\{\n\]*\\)\[^\n\]*%xmm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
 /* { dg-final { scan-assembler-times "vmovdqa64\[ \\t\]+\[^\{\n\]*\\)\[^\n\]*%ymm\[0-9\]+\{%k\[1-7\]\}\{z\}(?:\n|\[ \\t\]+#)" 1 } } */
 /* { dg-final { scan-assembler-times "vmovdqa64\[ \\t\]+\[^\{\n\]*\\)\[^\n\]*%xmm\[0-9\]+\{%k\[1-7\]\}\{z\}(?:\n|\[ \\t\]+#)" 1 } } */
-/* { dg-final { scan-assembler-times "vmovdqa64\[ \\t\]+\[^\{\n\]*%ymm\[0-9\]+\[^\nxy\]*\\(.{5}(?:\n|\[ \\t\]+#)" 1 { target nonpic } } } */
+/* { dg-final { scan-assembler-times "vmovdqa64\[ \\t\]+\[^\{\n\]*%ymm\[0-9\]+\[^\nxy\]*\\(.{5,6}(?:\n|\[ \\t\]+#)" 1 { target nonpic } } } */
 /* { dg-final { scan-assembler-times "vmovdqa64\[ \\t\]+\[^\{\n\]*%xmm\[0-9\]+\[^\nxy\]*\\((?:\n|\[ \\t\]+#)" 1 { xfail *-*-* } } } */
 /* { dg-final { scan-assembler-times "vmovdqa64\[ \\t\]+\[^\{\n\]*%ymm\[0-9\]+\[^\n\]*\\)\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
 /* { dg-final { scan-assembler-times "vmovdqa64\[ \\t\]+\[^\{\n\]*%xmm\[0-9\]+\[^\n\]*\\)\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Fix some i386 testcases for -frename-registers
  2016-04-27 15:16               ` H.J. Lu
@ 2016-04-27 15:30                 ` Bernd Schmidt
  0 siblings, 0 replies; 11+ messages in thread
From: Bernd Schmidt @ 2016-04-27 15:30 UTC (permalink / raw)
  To: H.J. Lu; +Cc: Uros Bizjak, gcc-patches

On 04/27/2016 05:16 PM, H.J. Lu wrote:

> This works for -m32, -mx32 and -m64.  OK for trunk?

Yes, thanks.


Bernd

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Fix some i386 testcases for -frename-registers
       [not found] <56AB4C16.3030502@t-online.de>
@ 2016-01-29 11:45 ` Bernd Schmidt
  0 siblings, 0 replies; 11+ messages in thread
From: Bernd Schmidt @ 2016-01-29 11:45 UTC (permalink / raw)
  To: GCC Patches

[-- Attachment #1: Type: text/plain, Size: 463 bytes --]

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

[-- Attachment #2: rrtests.diff --]
[-- Type: text/x-patch, Size: 35038 bytes --]

	* 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 } } } */


^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2016-04-27 15:30 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-01-29 12:19 Fix some i386 testcases for -frename-registers Uros Bizjak
2016-04-26 12:26 ` Bernd Schmidt
2016-04-26 18:35   ` H.J. Lu
2016-04-26 19:32     ` Bernd Schmidt
2016-04-26 19:39       ` H.J. Lu
2016-04-26 22:11         ` Bernd Schmidt
2016-04-27  0:11           ` H.J. Lu
2016-04-27  9:09             ` Bernd Schmidt
2016-04-27 15:16               ` H.J. Lu
2016-04-27 15:30                 ` Bernd Schmidt
     [not found] <56AB4C16.3030502@t-online.de>
2016-01-29 11:45 ` Bernd Schmidt

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