From: Richard Biener Date: Fri, 6 Feb 2026 10:03:54 +0000 (+0100) Subject: rtl-optimization/119982 - XFAIL part of gcc.target/i386/pr109362.c X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a1b88393e85efba910092e54a0bd3ea1da7ee4f3;p=thirdparty%2Fgcc.git rtl-optimization/119982 - XFAIL part of gcc.target/i386/pr109362.c This XFAILs the gcc.target/i386/pr109362.c testcase where we now need an additional register for the address part of a sequence of two atomic loads because TER no longer applies after we now hoist the address computation out of a loop. In the PR I noted how RTL propagation could handle this. In the end this restores the state we had in GCC 12 and earlier where in GCC 13 the code generation improved by accident. This resolves a P1 testsuite regression. PR rtl-optimization/119982 * gcc.target/i386/pr109362.c: XFAIL. --- diff --git a/gcc/testsuite/gcc.target/i386/pr109362.c b/gcc/testsuite/gcc.target/i386/pr109362.c index 0e44dae0389..445a3ccdd38 100644 --- a/gcc/testsuite/gcc.target/i386/pr109362.c +++ b/gcc/testsuite/gcc.target/i386/pr109362.c @@ -3,7 +3,7 @@ /* { dg-options "-O2 -masm=att" } */ /* Ensure we don't waste a register set to %rdi + 8. */ /* { dg-final { scan-assembler "\tmovq\t\\\(%rdi\\\), %r" } } */ -/* { dg-final { scan-assembler "\tmovq\t8\\\(%rdi\\\), %r" } } */ +/* { dg-final { scan-assembler "\tmovq\t8\\\(%rdi\\\), %r" { xfail *-*-* } } } */ struct S { long a, b; };