From: Peter Bergner Date: Fri, 26 Feb 2021 03:35:28 +0000 (-0600) Subject: rs6000: Fix ICE in rs6000_init_builtins when compiling with -mcpu=440 [PR99279] X-Git-Tag: basepoints/gcc-12~842 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=0159535adb0e7400f2c6922f14a7602f6b90cf69;p=thirdparty%2Fgcc.git rs6000: Fix ICE in rs6000_init_builtins when compiling with -mcpu=440 [PR99279] The initialization of compat builtins assumes the builtin we are creating a compatible builtin for exists and ICEs if it doesn't. However, there are valid reasons why some builtins are disabled for a particular compile. In this case, the MMA builtins are disabled for -mcpu=440 (and other cpus), so instead of ICEing, we should just skip adding the MMA compat builtin. 2021-02-25 Peter Bergner gcc/ PR target/99279 * config/rs6000/rs6000-call.c (rs6000_init_builtins): Replace assert with an "if" test. --- diff --git a/gcc/config/rs6000/rs6000-call.c b/gcc/config/rs6000/rs6000-call.c index d2bd03e7a62f..f56762553878 100644 --- a/gcc/config/rs6000/rs6000-call.c +++ b/gcc/config/rs6000/rs6000-call.c @@ -13468,9 +13468,9 @@ rs6000_init_builtins (void) for (i = 0; i < ARRAY_SIZE (bdesc_compat); i++, d++) { tree decl = rs6000_builtin_decls[(int)d->code]; - gcc_assert (decl != NULL); - add_builtin_function (d->name, TREE_TYPE (decl), (int)d->code, - BUILT_IN_MD, NULL, NULL_TREE); + if (decl != NULL) + add_builtin_function (d->name, TREE_TYPE (decl), (int)d->code, + BUILT_IN_MD, NULL, NULL_TREE); } }