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
 {

Reply via email to