https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119629
Peter Bergner <bergner at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Ever confirmed|0 |1 Last reconfirmed| |2025-04-09 Status|UNCONFIRMED |NEW --- Comment #8 from Peter Bergner <bergner at gcc dot gnu.org> --- (In reply to Peter Bergner from comment #7) > diff --git a/gcc/config/rs6000/rs6000-builtins.def > b/gcc/config/rs6000/rs6000-builtins.def > index 555d7d58950..56b3a544b7d 100644 > --- a/gcc/config/rs6000/rs6000-builtins.def > +++ b/gcc/config/rs6000/rs6000-builtins.def > @@ -2650,7 +2650,7 @@ > STXVL stxvl {} > > const signed int __builtin_scalar_byte_in_set (signed int, signed long > long); > - CMPEQB cmpeqb {} > + CMPEQB cmpeqb {no32bit} > > pure vsc __builtin_vsx_lxvl (const void *, signed long); > LXVL lxvl {} Doing a cross build to powerpc-elf, I see the ICE without the patch and no ICE with this patch. That said, the byte-in-set-2.c test case still fails, but that is because with the patch, the error message is different than before. If we compile with -m32 -mno-powerpc64, we get the error message the test case expects: error: ‘__builtin_scalar_byte_in_set’ requires the ‘-mcpu=power9’ option and either the ‘-m64’ or ‘-mpowerpc64’ option but for -m32 -mpowerpc64, we see: error: ‘__builtin_scalar_byte_in_set’ is not supported in 32-bit mode Both messages seem valid, so I think we can probably modify the test case to look for both error messages.