aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorPeter Bergner <bergner@linux.ibm.com>2021-02-25 21:35:28 -0600
committerPeter Bergner <bergner@linux.ibm.com>2021-02-25 21:35:28 -0600
commit0159535adb0e7400f2c6922f14a7602f6b90cf69 (patch)
tree4c8af9c720579a7205c7bffe1b84878f593d1765 /gcc
parentb8d85f569a6dd44cb9561c95e5f628bd6cd531a5 (diff)
downloadgcc-0159535adb0e7400f2c6922f14a7602f6b90cf69.zip
gcc-0159535adb0e7400f2c6922f14a7602f6b90cf69.tar.gz
gcc-0159535adb0e7400f2c6922f14a7602f6b90cf69.tar.bz2
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 <bergner@linux.ibm.com> gcc/ PR target/99279 * config/rs6000/rs6000-call.c (rs6000_init_builtins): Replace assert with an "if" test.
Diffstat (limited to 'gcc')
-rw-r--r--gcc/config/rs6000/rs6000-call.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/gcc/config/rs6000/rs6000-call.c b/gcc/config/rs6000/rs6000-call.c
index d2bd03e..f567625 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);
}
}