Disable TARGET_SSE_PACKED_SINGLE_INSN_OPTIMAL in builtin copysign tests
to avoid

FAIL: gcc.target/i386/builtin-copysign-4.c check-function-bodies foo
FAIL: gcc.target/i386/builtin-copysign-5.c check-function-bodies foo
FAIL: gcc.target/i386/builtin-copysign-6.c check-function-bodies foo
FAIL: gcc.target/i386/builtin-copysign-7.c check-function-bodies foo
FAIL: gcc.target/i386/builtin-copysign-8a.c check-function-bodies foo

due to the generated instruction

andps .LC1(%rip), %xmm0

vs the expected instruction

pand .LC1(%rip), %xmm0

when TARGET_SSE_PACKED_SINGLE_INSN_OPTIMAL is enabled by default.

PR testsuite/126923
* gcc.target/i386/builtin-copysign-4.c (dg-options): Add
-mtune-ctrl=^sse_packed_single_insn_optimal.
* gcc.target/i386/builtin-copysign-5.c (dg-options): Likewise.
* gcc.target/i386/builtin-copysign-6.c (dg-options): Likewise.
* gcc.target/i386/builtin-copysign-7.c (dg-options): Likewise.
* gcc.target/i386/builtin-copysign-8a.c (dg-options): Likewise.

-- 
H.J.
From 3dacf645c4ea7ba592e2899f70730e3839c3e6f9 Mon Sep 17 00:00:00 2001
From: "H.J. Lu" <[email protected]>
Date: Thu, 20 Aug 2026 07:16:01 +0800
Subject: [PATCH] builtin copysign tests: Disable
 TARGET_SSE_PACKED_SINGLE_INSN_OPTIMAL

Disable TARGET_SSE_PACKED_SINGLE_INSN_OPTIMAL in builtin copysign tests
to avoid

FAIL: gcc.target/i386/builtin-copysign-4.c check-function-bodies foo
FAIL: gcc.target/i386/builtin-copysign-5.c check-function-bodies foo
FAIL: gcc.target/i386/builtin-copysign-6.c check-function-bodies foo
FAIL: gcc.target/i386/builtin-copysign-7.c check-function-bodies foo
FAIL: gcc.target/i386/builtin-copysign-8a.c check-function-bodies foo

due to the generated instruction

	andps	.LC1(%rip), %xmm0

vs the expected instruction

	pand	.LC1(%rip), %xmm0

when TARGET_SSE_PACKED_SINGLE_INSN_OPTIMAL is enabled by default.

	PR testsuite/126923
	* gcc.target/i386/builtin-copysign-4.c (dg-options): Add
	-mtune-ctrl=^sse_packed_single_insn_optimal.
	* gcc.target/i386/builtin-copysign-5.c (dg-options): Likewise.
	* gcc.target/i386/builtin-copysign-6.c (dg-options): Likewise.
	* gcc.target/i386/builtin-copysign-7.c (dg-options): Likewise.
	* gcc.target/i386/builtin-copysign-8a.c (dg-options): Likewise.

Signed-off-by: H.J. Lu <[email protected]>
---
 gcc/testsuite/gcc.target/i386/builtin-copysign-4.c  | 2 +-
 gcc/testsuite/gcc.target/i386/builtin-copysign-5.c  | 2 +-
 gcc/testsuite/gcc.target/i386/builtin-copysign-6.c  | 2 +-
 gcc/testsuite/gcc.target/i386/builtin-copysign-7.c  | 2 +-
 gcc/testsuite/gcc.target/i386/builtin-copysign-8a.c | 2 +-
 5 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/gcc/testsuite/gcc.target/i386/builtin-copysign-4.c b/gcc/testsuite/gcc.target/i386/builtin-copysign-4.c
index 9886fdcc9ae..09a3c736243 100644
--- a/gcc/testsuite/gcc.target/i386/builtin-copysign-4.c
+++ b/gcc/testsuite/gcc.target/i386/builtin-copysign-4.c
@@ -1,5 +1,5 @@
 /* { dg-do compile } */
-/* { dg-options "-O2 -mno-avx -msse2" } */
+/* { dg-options "-O2 -mno-avx -msse2 -mtune-ctrl=^sse_packed_single_insn_optimal" } */
 /* Keep labels and directives ('.cfi_startproc', '.cfi_endproc').  */
 /* { dg-final { check-function-bodies "**" "" "" { target { ! ia32 } } {^\t?\.} } } */
 
diff --git a/gcc/testsuite/gcc.target/i386/builtin-copysign-5.c b/gcc/testsuite/gcc.target/i386/builtin-copysign-5.c
index 3f4df5f779b..48897bea982 100644
--- a/gcc/testsuite/gcc.target/i386/builtin-copysign-5.c
+++ b/gcc/testsuite/gcc.target/i386/builtin-copysign-5.c
@@ -1,5 +1,5 @@
 /* { dg-do compile } */
-/* { dg-options "-O2 -mno-avx -msse2" } */
+/* { dg-options "-O2 -mno-avx -msse2 -mtune-ctrl=^sse_packed_single_insn_optimal" } */
 /* Keep labels and directives ('.cfi_startproc', '.cfi_endproc').  */
 /* { dg-final { check-function-bodies "**" "" "" { target { ! ia32 } } {^\t?\.} } } */
 
diff --git a/gcc/testsuite/gcc.target/i386/builtin-copysign-6.c b/gcc/testsuite/gcc.target/i386/builtin-copysign-6.c
index 5b6eb517f82..d5c0b92dc30 100644
--- a/gcc/testsuite/gcc.target/i386/builtin-copysign-6.c
+++ b/gcc/testsuite/gcc.target/i386/builtin-copysign-6.c
@@ -1,5 +1,5 @@
 /* { dg-do compile } */
-/* { dg-options "-O2 -mno-avx -msse2" } */
+/* { dg-options "-O2 -mno-avx -msse2 -mtune-ctrl=^sse_packed_single_insn_optimal" } */
 /* Keep labels and directives ('.cfi_startproc', '.cfi_endproc').  */
 /* { dg-final { check-function-bodies "**" "" "" { target { ! ia32 } } {^\t?\.} } } */
 
diff --git a/gcc/testsuite/gcc.target/i386/builtin-copysign-7.c b/gcc/testsuite/gcc.target/i386/builtin-copysign-7.c
index 012fb14a85e..2412aba7bff 100644
--- a/gcc/testsuite/gcc.target/i386/builtin-copysign-7.c
+++ b/gcc/testsuite/gcc.target/i386/builtin-copysign-7.c
@@ -1,5 +1,5 @@
 /* { dg-do compile } */
-/* { dg-options "-O2 -mno-avx -msse2" } */
+/* { dg-options "-O2 -mno-avx -msse2 -mtune-ctrl=^sse_packed_single_insn_optimal" } */
 /* Keep labels and directives ('.cfi_startproc', '.cfi_endproc').  */
 /* { dg-final { check-function-bodies "**" "" "" { target { ! ia32 } } {^\t?\.} } } */
 
diff --git a/gcc/testsuite/gcc.target/i386/builtin-copysign-8a.c b/gcc/testsuite/gcc.target/i386/builtin-copysign-8a.c
index e390ee27aa3..417ed2d5b3f 100644
--- a/gcc/testsuite/gcc.target/i386/builtin-copysign-8a.c
+++ b/gcc/testsuite/gcc.target/i386/builtin-copysign-8a.c
@@ -1,5 +1,5 @@
 /* { dg-do compile } */
-/* { dg-options "-O2 -mno-avx -msse2" } */
+/* { dg-options "-O2 -mno-avx -msse2 -mtune-ctrl=^sse_packed_single_insn_optimal" } */
 /* Keep labels and directives ('.cfi_startproc', '.cfi_endproc').  */
 /* { dg-final { check-function-bodies "**" "" "" { target { ! ia32 } } {^\t?\.} } } */
 
-- 
2.55.0

Reply via email to