https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119629
--- Comment #2 from Peter Bergner <bergner at gcc dot gnu.org> --- (In reply to Peter Bergner from comment #1) > > but the conditions that enable the expansion of __builtin_scalar_byte_in_set > > are those of [power9-64], namely TARGET_MODULE && TARGET_POWERPC64. > I believe this is a bug and this and the other [power*-64] tests should be > using TARGET_64BIT instead of TARGET_POWERPC64. I think this should be the correct fix for this specific bug. This doesn't fix the powerpc-elf target enabling TARGET_POWERPC64 though, since that is a separate bug. diff --git a/gcc/config/rs6000/rs6000-builtin.cc b/gcc/config/rs6000/rs6000-builtin.cc index 111802381ac..81caf4d0629 100644 --- a/gcc/config/rs6000/rs6000-builtin.cc +++ b/gcc/config/rs6000/rs6000-builtin.cc @@ -159,11 +159,11 @@ rs6000_builtin_is_supported (enum rs6000_gen_builtins fncode) case ENB_P6: return TARGET_CMPB; case ENB_P6_64: - return TARGET_CMPB && TARGET_POWERPC64; + return TARGET_CMPB && TARGET_64BIT; case ENB_P7: return TARGET_POPCNTD; case ENB_P7_64: - return TARGET_POPCNTD && TARGET_POWERPC64; + return TARGET_POPCNTD && TARGET_64BIT; case ENB_P8: return TARGET_POWER8; case ENB_P8V: @@ -171,13 +171,13 @@ rs6000_builtin_is_supported (enum rs6000_gen_builtins fncode) case ENB_P9: return TARGET_MODULO; case ENB_P9_64: - return TARGET_MODULO && TARGET_POWERPC64; + return TARGET_MODULO && TARGET_64BIT; case ENB_P9V: return TARGET_P9_VECTOR; case ENB_P10: return TARGET_POWER10; case ENB_P10_64: - return TARGET_POWER10 && TARGET_POWERPC64; + return TARGET_POWER10 && TARGET_64BIT; case ENB_ALTIVEC: return TARGET_ALTIVEC; case ENB_VSX: