https://gcc.gnu.org/g:aef738b4a47e6dcf6242485a3f2c1bf4bbad0bdd
commit r17-2029-gaef738b4a47e6dcf6242485a3f2c1bf4bbad0bdd Author: Rainer Orth <[email protected]> Date: Tue Jun 30 21:49:26 2026 +0200 testsuite: i386: Fix gcc.target/i386/bt-cmov-1.c on Solaris The new gcc.target/i386/bt-cmov-1.c FAILs on Solaris: FAIL: gcc.target/i386/bt-cmov-1.c scan-assembler-times cmov[n]*c 4 The Solaris assembler uses a slightly different syntax: cmovl.c %edx, %eax cmovl.nc %edx, %eax instead of cmovc %edx, %eax cmovnc %edx, %eax This patch allows for both forms. At the same time, it avoids escaping by using brace quoting. The character sets with a single character aren't necessary. 'l' in "btl" isn't optional or does 'c' in "cmov" occur more than one. Tested on i386-pc-solaris2.11 (as and gas, 32 and 64-bit), and x86_64-pc-linux-gnu (32 and 64-bit). 2026-06-30 Rainer Orth <[email protected]> gcc/testsuite: * gcc.target/i386/bt-cmov-1.c (scan-assembler-times): Simplify patterns. Allow for Solaris as syntax. Diff: --- gcc/testsuite/gcc.target/i386/bt-cmov-1.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gcc/testsuite/gcc.target/i386/bt-cmov-1.c b/gcc/testsuite/gcc.target/i386/bt-cmov-1.c index 07234c2a9a02..9305997eb826 100644 --- a/gcc/testsuite/gcc.target/i386/bt-cmov-1.c +++ b/gcc/testsuite/gcc.target/i386/bt-cmov-1.c @@ -27,7 +27,7 @@ unsigned f3 (unsigned a, unsigned b, unsigned c) return ((a >> b) & 1) ? 2 : c; } -/* { dg-final { scan-assembler-times "bt\[l\]?\[ \\t\]+" 4 } } */ -/* { dg-final { scan-assembler-times "cmov\[n\]*c" 4 } } */ +/* { dg-final { scan-assembler-times {btl[ \t]+} 4 } } */ +/* { dg-final { scan-assembler-times {cmov(l\.)?n?c} 4 } } */ /* { dg-final { scan-assembler-not "sal" } } */ /* { dg-final { scan-assembler-not "shr" } } */
