https://gcc.gnu.org/g:76c2fbe7b9b61d451d9cb3033f551004f38f0f04
commit r17-5182-g76c2fbe7b9b61d451d9cb3033f551004f38f0f04 Author: Kishan Parmar <[email protected]> Date: Wed Oct 14 14:03:34 2026 +0530 rs6000: Update pr116030.c scan-assembler assertion [PR123055] PR123055 reports that gcc.target/powerpc/pr116030.c fails the scan-assembler-not "stxvd2x" assertion after r16-5947-ga6c50ec2c6ebcb, which introduced -ffuse-ops-with-volatile-access. That commit allows volatile memory operands to satisfy general_operand, which is called by predicate 'memory_operand'. As a result, vsx_stxvd2x4_le_const_<mode> can match volatile destinations and emit stxvd2x. The scan-assembler-not "stxvd2x" assertion in pr116030.c is not required, because the pattern vsx_stxvd2x4_le_const_<mode> is guarded by const_vec_duplicate_p, which ensures the source is a splat constant with all elements identical. For such a constant, stxvd2x stores the correct value because swapping two identical doublewords is a no-op. The new codegen is therefore correct. 2026-10-14 Kishan Parmar <[email protected]> gcc/testsuite/ChangeLog: PR target/123055 * gcc.target/powerpc/pr116030.c: Remove scan-assembler-not "stxvd2x". Diff: --- gcc/testsuite/gcc.target/powerpc/pr116030.c | 1 - 1 file changed, 1 deletion(-) diff --git a/gcc/testsuite/gcc.target/powerpc/pr116030.c b/gcc/testsuite/gcc.target/powerpc/pr116030.c index da27106a5a75..3ffbacff0de4 100644 --- a/gcc/testsuite/gcc.target/powerpc/pr116030.c +++ b/gcc/testsuite/gcc.target/powerpc/pr116030.c @@ -5,7 +5,6 @@ /* Verify we do not ICE on the tests below. */ /* { dg-final { scan-assembler-not "rldicr" { target { le } } } } */ -/* { dg-final { scan-assembler-not "stxvd2x" { target { le } } } } */ union U128 {
