On Thu, Oct 08, 2026 at 04:05:30PM +0530, Surya Kumari Jangala wrote: > Hi, > > On 08/10/26 12:33 PM, Kishan Parmar wrote: > > Hello All, > > > > Changes from v2: > > - Reverted changes to gcc/config/rs6000/predicates.md and > > gcc/config/rs6000/vsx.md introduced in v2. > > > > Changes from v1: > > - Dropped pr123055.c testcase from previsous patch. The > > existing pr116030.c already carries scan-assembler-not > > "stxvd2x" assertion that matches the regression, making a > > separate pr123055.c redundant. > > > > Below patch is regtested and bootstrapped on power64le-linux-gnu. > > > > Thank You, > > Kishan > > > > 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-08 Kishan Parmar <[email protected]> > > > > gcc/testsuite/ChangeLog: > > PR target/123055 > > * gcc.target/powerpc/pr116030.c: Remove scan-assembler-not "stxvd2x" > > assertion which is no longer valid after r16-5947-ga6c50ec2c6ebcb. > > The Changelog contains 'what' has changed, not 'why' the change is needed. > So simply writing: Remove scan-assembler-not "stxvd2x" > is enough. > > LGTM with the above change.
Agreed. You can check it into the master branch. -- Michael Meissner, IBM PO Box 98, Ayer, Massachusetts, USA, 01432 email: [email protected]
