From: Rainer Orth Date: Fri, 2 Feb 2024 08:33:16 +0000 (+0100) Subject: testsuite: i386: Fix gcc.target/i386/apx-ndd-cmov.c on Solaris/x86 X-Git-Tag: basepoints/gcc-15~1410 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=63f0907bbbc941f4aca5f44655af02675a5b47f5;p=thirdparty%2Fgcc.git testsuite: i386: Fix gcc.target/i386/apx-ndd-cmov.c on Solaris/x86 gcc.target/i386/apx-ndd-cmov.c FAILs on 64-bit Solaris/x86 with the native assembler: FAIL: gcc.target/i386/apx-ndd-cmov.c scan-assembler-times cmove[^\\n\\r]*, %eax 1 FAIL: gcc.target/i386/apx-ndd-cmov.c scan-assembler-times cmovge[^\\n\\r]*, %eax 1 The gas vs. as difference is - cmove c+4(%rip), %esi, %eax + cmovl.e c+4(%rip), %esi, %eax - cmovge %ecx, %edx, %eax + cmovl.ge %ecx, %edx, %eax This patch accounts for both forms. Tested on i386-pc-solaris2.11 (as and gas) and i686-pc-linux-gnu. 2024-02-01 Rainer Orth gcc/testsuite: * gcc.target/i386/apx-ndd-cmov.c (scan-assembler-times): Allow for cmovl.e, cmovl.ge. --- diff --git a/gcc/testsuite/gcc.target/i386/apx-ndd-cmov.c b/gcc/testsuite/gcc.target/i386/apx-ndd-cmov.c index 459dc965342b..1406db57e0fd 100644 --- a/gcc/testsuite/gcc.target/i386/apx-ndd-cmov.c +++ b/gcc/testsuite/gcc.target/i386/apx-ndd-cmov.c @@ -1,7 +1,7 @@ /* { dg-do compile { target { ! ia32 } } } */ /* { dg-options "-O2 -m64 -mapxf" } */ -/* { dg-final { scan-assembler-times "cmove\[^\n\r]*, %eax" 1 } } */ -/* { dg-final { scan-assembler-times "cmovge\[^\n\r]*, %eax" 1 } } */ +/* { dg-final { scan-assembler-times "cmov(l\.)?e\[^\n\r]*, %eax" 1 } } */ +/* { dg-final { scan-assembler-times "cmov(l\.)?ge\[^\n\r]*, %eax" 1 } } */ unsigned int c[4];