Swap %edx/%rdx with %eax/%rax after

commit r16-4255-g075310d3a3ef1a8b483b62d9535887b37f291ee4
Author: Jan Hubicka <[email protected]>
Date:   Mon Oct 6 21:35:22 2025 +0200

    Update profile in tree-ssa-dce

commit 8498ef3d0758012bf3e355a61a0f89aff7513851
Author: Jan Hubicka <[email protected]>
Date:   Wed Oct 1 16:56:15 2025 +0200

    Improve profile update in merge_blocks

PR middle-end/122122
* gcc.target/i386/memcpy-pr120683-2.c: Swap %edx/%rdx with
%eax/%rax after
* gcc.target/i386/memcpy-pr120683-3.c: Likewise.
* gcc.target/i386/memcpy-pr120683-4.c: Likewise.
* gcc.target/i386/memcpy-pr120683-5.c: Likewise.
* gcc.target/i386/memcpy-pr120683-6.c: Likewise.
* gcc.target/i386/memcpy-pr120683-7.c: Likewise.
* gcc.target/i386/pr111657-1.c: Likewise.

-- 
H.J.
From 5e577325e6015b68c9f6e26ca91401d04b33e370 Mon Sep 17 00:00:00 2001
From: "H.J. Lu" <[email protected]>
Date: Tue, 7 Oct 2025 08:28:04 +0800
Subject: [PATCH] x86: Swap %edx/%rdx with %eax/%rax for PR middle-end/122122

Swap %edx/%rdx with %eax/%rax after

commit r16-4255-g075310d3a3ef1a8b483b62d9535887b37f291ee4
Author: Jan Hubicka <[email protected]>
Date:   Mon Oct 6 21:35:22 2025 +0200

    Update profile in tree-ssa-dce

commit 8498ef3d0758012bf3e355a61a0f89aff7513851
Author: Jan Hubicka <[email protected]>
Date:   Wed Oct 1 16:56:15 2025 +0200

    Improve profile update in merge_blocks

	PR middle-end/122122
	* gcc.target/i386/memcpy-pr120683-2.c: Swap %edx/%rdx with
	%eax/%rax after
	* gcc.target/i386/memcpy-pr120683-3.c: Likewise.
	* gcc.target/i386/memcpy-pr120683-4.c: Likewise.
	* gcc.target/i386/memcpy-pr120683-5.c: Likewise.
	* gcc.target/i386/memcpy-pr120683-6.c: Likewise.
	* gcc.target/i386/memcpy-pr120683-7.c: Likewise.
	* gcc.target/i386/pr111657-1.c: Likewise.

Signed-off-by: H.J. Lu <[email protected]>
---
 .../gcc.target/i386/memcpy-pr120683-2.c       | 28 ++++++++--------
 .../gcc.target/i386/memcpy-pr120683-3.c       | 32 +++++++++----------
 .../gcc.target/i386/memcpy-pr120683-4.c       | 28 ++++++++--------
 .../gcc.target/i386/memcpy-pr120683-5.c       | 32 +++++++++----------
 .../gcc.target/i386/memcpy-pr120683-6.c       | 28 ++++++++--------
 .../gcc.target/i386/memcpy-pr120683-7.c       | 32 +++++++++----------
 gcc/testsuite/gcc.target/i386/pr111657-1.c    | 22 ++++++-------
 7 files changed, 101 insertions(+), 101 deletions(-)

diff --git a/gcc/testsuite/gcc.target/i386/memcpy-pr120683-2.c b/gcc/testsuite/gcc.target/i386/memcpy-pr120683-2.c
index 0d0e34860e9..cd78ae860b6 100644
--- a/gcc/testsuite/gcc.target/i386/memcpy-pr120683-2.c
+++ b/gcc/testsuite/gcc.target/i386/memcpy-pr120683-2.c
@@ -7,22 +7,22 @@
 **foo:
 **.LFB[0-9]+:
 **	.cfi_startproc
-**	xorl	%edx, %edx
+**	xorl	%eax, %eax
 **.L[0-9]+:
-**	movl	%edx, %eax
-**	addl	\$64, %edx
-**	movdqa	src\(%rax\), %xmm3
-**	movdqa	src\+16\(%rax\), %xmm2
-**	movdqa	src\+32\(%rax\), %xmm1
-**	movdqa	src\+48\(%rax\), %xmm0
-**	movaps	%xmm3, dest\(%rax\)
-**	movaps	%xmm2, dest\+16\(%rax\)
-**	movaps	%xmm1, dest\+32\(%rax\)
-**	movaps	%xmm0, dest\+48\(%rax\)
-**	cmpl	\$256, %edx
+**	movl	%eax, %edx
+**	addl	\$64, %eax
+**	movdqa	src\(%rdx\), %xmm3
+**	movdqa	src\+16\(%rdx\), %xmm2
+**	movdqa	src\+32\(%rdx\), %xmm1
+**	movdqa	src\+48\(%rdx\), %xmm0
+**	movaps	%xmm3, dest\(%rdx\)
+**	movaps	%xmm2, dest\+16\(%rdx\)
+**	movaps	%xmm1, dest\+32\(%rdx\)
+**	movaps	%xmm0, dest\+48\(%rdx\)
+**	cmpl	\$256, %eax
 **	jb	.L[0-9]+
-**	movdqa	src\(%rdx\), %xmm0
-**	movaps	%xmm0, dest\(%rdx\)
+**	movdqa	src\(%rax\), %xmm0
+**	movaps	%xmm0, dest\(%rax\)
 **	ret
 **...
 */
diff --git a/gcc/testsuite/gcc.target/i386/memcpy-pr120683-3.c b/gcc/testsuite/gcc.target/i386/memcpy-pr120683-3.c
index e5aca32a588..ea3bcca6103 100644
--- a/gcc/testsuite/gcc.target/i386/memcpy-pr120683-3.c
+++ b/gcc/testsuite/gcc.target/i386/memcpy-pr120683-3.c
@@ -7,24 +7,24 @@
 **foo:
 **.LFB[0-9]+:
 **	.cfi_startproc
-**	xorl	%edx, %edx
+**	xorl	%eax, %eax
 **.L[0-9]+:
-**	movl	%edx, %eax
-**	addl	\$64, %edx
-**	movdqa	src\(%rax\), %xmm3
-**	movdqa	src\+16\(%rax\), %xmm2
-**	movdqa	src\+32\(%rax\), %xmm1
-**	movdqa	src\+48\(%rax\), %xmm0
-**	movaps	%xmm3, dest\(%rax\)
-**	movaps	%xmm2, dest\+16\(%rax\)
-**	movaps	%xmm1, dest\+32\(%rax\)
-**	movaps	%xmm0, dest\+48\(%rax\)
-**	cmpl	\$256, %edx
+**	movl	%eax, %edx
+**	addl	\$64, %eax
+**	movdqa	src\(%rdx\), %xmm3
+**	movdqa	src\+16\(%rdx\), %xmm2
+**	movdqa	src\+32\(%rdx\), %xmm1
+**	movdqa	src\+48\(%rdx\), %xmm0
+**	movaps	%xmm3, dest\(%rdx\)
+**	movaps	%xmm2, dest\+16\(%rdx\)
+**	movaps	%xmm1, dest\+32\(%rdx\)
+**	movaps	%xmm0, dest\+48\(%rdx\)
+**	cmpl	\$256, %eax
 **	jb	.L[0-9]+
-**	movdqa	src\(%rdx\), %xmm0
-**	movaps	%xmm0, dest\(%rdx\)
-**	movdqu	src\+15\(%rdx\), %xmm0
-**	movups	%xmm0, dest\+15\(%rdx\)
+**	movdqa	src\(%rax\), %xmm0
+**	movaps	%xmm0, dest\(%rax\)
+**	movdqu	src\+15\(%rax\), %xmm0
+**	movups	%xmm0, dest\+15\(%rax\)
 **	ret
 **...
 */
diff --git a/gcc/testsuite/gcc.target/i386/memcpy-pr120683-4.c b/gcc/testsuite/gcc.target/i386/memcpy-pr120683-4.c
index 27f7bedc703..c2d595f877d 100644
--- a/gcc/testsuite/gcc.target/i386/memcpy-pr120683-4.c
+++ b/gcc/testsuite/gcc.target/i386/memcpy-pr120683-4.c
@@ -7,22 +7,22 @@
 **foo:
 **.LFB[0-9]+:
 **	.cfi_startproc
-**	xorl	%edx, %edx
+**	xorl	%eax, %eax
 **.L[0-9]+:
-**	movl	%edx, %eax
-**	subl	\$-128, %edx
-**	vmovdqa	src\(%rax\), %ymm3
-**	vmovdqa	src\+32\(%rax\), %ymm2
-**	vmovdqa	src\+64\(%rax\), %ymm1
-**	vmovdqa	src\+96\(%rax\), %ymm0
-**	vmovdqa	%ymm3, dest\(%rax\)
-**	vmovdqa	%ymm2, dest\+32\(%rax\)
-**	vmovdqa	%ymm1, dest\+64\(%rax\)
-**	vmovdqa	%ymm0, dest\+96\(%rax\)
-**	cmpl	\$512, %edx
+**	movl	%eax, %edx
+**	subl	\$-128, %eax
+**	vmovdqa	src\(%rdx\), %ymm3
+**	vmovdqa	src\+32\(%rdx\), %ymm2
+**	vmovdqa	src\+64\(%rdx\), %ymm1
+**	vmovdqa	src\+96\(%rdx\), %ymm0
+**	vmovdqa	%ymm3, dest\(%rdx\)
+**	vmovdqa	%ymm2, dest\+32\(%rdx\)
+**	vmovdqa	%ymm1, dest\+64\(%rdx\)
+**	vmovdqa	%ymm0, dest\+96\(%rdx\)
+**	cmpl	\$512, %eax
 **	jb	.L[0-9]+
-**	vmovdqa	src\(%rdx\), %ymm0
-**	vmovdqa	%ymm0, dest\(%rdx\)
+**	vmovdqa	src\(%rax\), %ymm0
+**	vmovdqa	%ymm0, dest\(%rax\)
 **	vzeroupper
 **	ret
 **...
diff --git a/gcc/testsuite/gcc.target/i386/memcpy-pr120683-5.c b/gcc/testsuite/gcc.target/i386/memcpy-pr120683-5.c
index 34a74080f21..294d25c53e6 100644
--- a/gcc/testsuite/gcc.target/i386/memcpy-pr120683-5.c
+++ b/gcc/testsuite/gcc.target/i386/memcpy-pr120683-5.c
@@ -7,24 +7,24 @@
 **foo:
 **.LFB[0-9]+:
 **	.cfi_startproc
-**	xorl	%edx, %edx
+**	xorl	%eax, %eax
 **.L[0-9]+:
-**	movl	%edx, %eax
-**	subl	\$-128, %edx
-**	vmovdqa	src\(%rax\), %ymm3
-**	vmovdqa	src\+32\(%rax\), %ymm2
-**	vmovdqa	src\+64\(%rax\), %ymm1
-**	vmovdqa	src\+96\(%rax\), %ymm0
-**	vmovdqa	%ymm3, dest\(%rax\)
-**	vmovdqa	%ymm2, dest\+32\(%rax\)
-**	vmovdqa	%ymm1, dest\+64\(%rax\)
-**	vmovdqa	%ymm0, dest\+96\(%rax\)
-**	cmpl	\$512, %edx
+**	movl	%eax, %edx
+**	subl	\$-128, %eax
+**	vmovdqa	src\(%rdx\), %ymm3
+**	vmovdqa	src\+32\(%rdx\), %ymm2
+**	vmovdqa	src\+64\(%rdx\), %ymm1
+**	vmovdqa	src\+96\(%rdx\), %ymm0
+**	vmovdqa	%ymm3, dest\(%rdx\)
+**	vmovdqa	%ymm2, dest\+32\(%rdx\)
+**	vmovdqa	%ymm1, dest\+64\(%rdx\)
+**	vmovdqa	%ymm0, dest\+96\(%rdx\)
+**	cmpl	\$512, %eax
 **	jb	.L[0-9]+
-**	vmovdqa	src\(%rdx\), %ymm0
-**	vmovdqa	%ymm0, dest\(%rdx\)
-**	vmovdqu	src\+31\(%rdx\), %ymm0
-**	vmovdqu	%ymm0, dest\+31\(%rdx\)
+**	vmovdqa	src\(%rax\), %ymm0
+**	vmovdqa	%ymm0, dest\(%rax\)
+**	vmovdqu	src\+31\(%rax\), %ymm0
+**	vmovdqu	%ymm0, dest\+31\(%rax\)
 **	vzeroupper
 **	ret
 **...
diff --git a/gcc/testsuite/gcc.target/i386/memcpy-pr120683-6.c b/gcc/testsuite/gcc.target/i386/memcpy-pr120683-6.c
index aa5d90d62e4..2013916f7b2 100644
--- a/gcc/testsuite/gcc.target/i386/memcpy-pr120683-6.c
+++ b/gcc/testsuite/gcc.target/i386/memcpy-pr120683-6.c
@@ -7,22 +7,22 @@
 **foo:
 **.LFB[0-9]+:
 **	.cfi_startproc
-**	xorl	%edx, %edx
+**	xorl	%eax, %eax
 **.L[0-9]+:
-**	movl	%edx, %eax
-**	addl	\$256, %edx
-**	vmovdqa64	src\(%rax\), %zmm3
-**	vmovdqa64	src\+64\(%rax\), %zmm2
-**	vmovdqa64	src\+128\(%rax\), %zmm1
-**	vmovdqa64	src\+192\(%rax\), %zmm0
-**	vmovdqa64	%zmm3, dest\(%rax\)
-**	vmovdqa64	%zmm2, dest\+64\(%rax\)
-**	vmovdqa64	%zmm1, dest\+128\(%rax\)
-**	vmovdqa64	%zmm0, dest\+192\(%rax\)
-**	cmpl	\$1024, %edx
+**	movl	%eax, %edx
+**	addl	\$256, %eax
+**	vmovdqa64	src\(%rdx\), %zmm3
+**	vmovdqa64	src\+64\(%rdx\), %zmm2
+**	vmovdqa64	src\+128\(%rdx\), %zmm1
+**	vmovdqa64	src\+192\(%rdx\), %zmm0
+**	vmovdqa64	%zmm3, dest\(%rdx\)
+**	vmovdqa64	%zmm2, dest\+64\(%rdx\)
+**	vmovdqa64	%zmm1, dest\+128\(%rdx\)
+**	vmovdqa64	%zmm0, dest\+192\(%rdx\)
+**	cmpl	\$1024, %eax
 **	jb	.L[0-9]+
-**	vmovdqa64	src\(%rdx\), %zmm0
-**	vmovdqa64	%zmm0, dest\(%rdx\)
+**	vmovdqa64	src\(%rax\), %zmm0
+**	vmovdqa64	%zmm0, dest\(%rax\)
 **	vzeroupper
 **	ret
 **...
diff --git a/gcc/testsuite/gcc.target/i386/memcpy-pr120683-7.c b/gcc/testsuite/gcc.target/i386/memcpy-pr120683-7.c
index 63d8a1521a1..30e2c3c6bef 100644
--- a/gcc/testsuite/gcc.target/i386/memcpy-pr120683-7.c
+++ b/gcc/testsuite/gcc.target/i386/memcpy-pr120683-7.c
@@ -7,24 +7,24 @@
 **foo:
 **.LFB[0-9]+:
 **	.cfi_startproc
-**	xorl	%edx, %edx
+**	xorl	%eax, %eax
 **.L[0-9]+:
-**	movl	%edx, %eax
-**	addl	\$256, %edx
-**	vmovdqa64	src\(%rax\), %zmm3
-**	vmovdqa64	src\+64\(%rax\), %zmm2
-**	vmovdqa64	src\+128\(%rax\), %zmm1
-**	vmovdqa64	src\+192\(%rax\), %zmm0
-**	vmovdqa64	%zmm3, dest\(%rax\)
-**	vmovdqa64	%zmm2, dest\+64\(%rax\)
-**	vmovdqa64	%zmm1, dest\+128\(%rax\)
-**	vmovdqa64	%zmm0, dest\+192\(%rax\)
-**	cmpl	\$1024, %edx
+**	movl	%eax, %edx
+**	addl	\$256, %eax
+**	vmovdqa64	src\(%rdx\), %zmm3
+**	vmovdqa64	src\+64\(%rdx\), %zmm2
+**	vmovdqa64	src\+128\(%rdx\), %zmm1
+**	vmovdqa64	src\+192\(%rdx\), %zmm0
+**	vmovdqa64	%zmm3, dest\(%rdx\)
+**	vmovdqa64	%zmm2, dest\+64\(%rdx\)
+**	vmovdqa64	%zmm1, dest\+128\(%rdx\)
+**	vmovdqa64	%zmm0, dest\+192\(%rdx\)
+**	cmpl	\$1024, %eax
 **	jb	.L[0-9]+
-**	vmovdqa	src\(%rdx\), %ymm0
-**	vmovdqa	%ymm0, dest\(%rdx\)
-**	vmovdqu	src\+31\(%rdx\), %ymm0
-**	vmovdqu	%ymm0, dest\+31\(%rdx\)
+**	vmovdqa	src\(%rax\), %ymm0
+**	vmovdqa	%ymm0, dest\(%rax\)
+**	vmovdqu	src\+31\(%rax\), %ymm0
+**	vmovdqu	%ymm0, dest\+31\(%rax\)
 **	vzeroupper
 **	ret
 **...
diff --git a/gcc/testsuite/gcc.target/i386/pr111657-1.c b/gcc/testsuite/gcc.target/i386/pr111657-1.c
index fa9f4cfe5c5..bb37e95a39b 100644
--- a/gcc/testsuite/gcc.target/i386/pr111657-1.c
+++ b/gcc/testsuite/gcc.target/i386/pr111657-1.c
@@ -7,17 +7,17 @@
 **bar:
 **...
 **.L[0-9]+:
-**	movl	%edx, %eax
-**	addl	\$32, %edx
-**	movq	%gs:m\(%rax\), %r9
-**	movq	%gs:m\+8\(%rax\), %r8
-**	movq	%gs:m\+16\(%rax\), %rsi
-**	movq	%gs:m\+24\(%rax\), %rcx
-**	movq	%r9, \(%rdi,%rax\)
-**	movq	%r8, 8\(%rdi,%rax\)
-**	movq	%rsi, 16\(%rdi,%rax\)
-**	movq	%rcx, 24\(%rdi,%rax\)
-**	cmpl	\$224, %edx
+**	movl	%eax, %edx
+**	addl	\$32, %eax
+**	movq	%gs:m\(%rdx\), %r9
+**	movq	%gs:m\+8\(%rdx\), %r8
+**	movq	%gs:m\+16\(%rdx\), %rsi
+**	movq	%gs:m\+24\(%rdx\), %rcx
+**	movq	%r9, \(%rdi,%rdx\)
+**	movq	%r8, 8\(%rdi,%rdx\)
+**	movq	%rsi, 16\(%rdi,%rdx\)
+**	movq	%rcx, 24\(%rdi,%rdx\)
+**	cmpl	\$224, %eax
 **	jb	.L[0-9]+
 **...
 */
-- 
2.51.0

Reply via email to