Hi, As PR104024 shows, currently the option -mpower10-fusion isn't guarded under -mcpu=power10, so compiler can optimize some patterns unexpectedly. As the option is undocumented, this patch just simply unmasks it. For some define_insns in fusion.md which have constraint v, they don't have the correct conditions there, it can cause ICEs if the modes are not supported there. Besides, it seems better to use BOOL_128 instead of VM since the patterns are vector logical operations. Bootstrapped and regtested on powerpc64-linux-gnu P8 and powerpc64le-linux-gnu P9 and P10. Is it ok for trunk? BR, Kewen ----- PR target/104024 gcc/ChangeLog: * config/rs6000/fusion.md: Regenerate. * config/rs6000/genfusion.pl: Add the check for define_insns with constraint v, use BOOL_128 instead of VM. gcc/testsuite/ChangeLog: * gcc.target/powerpc/pr104024-1.c: New test. * gcc.target/powerpc/pr104024-2.c: New test.