aboutsummaryrefslogtreecommitdiff
path: root/gcc/config
diff options
context:
space:
mode:
authorBill Schmidt <wschmidt@linux.ibm.com>2022-01-05 16:53:29 -0600
committerBill Schmidt <wschmidt@linux.ibm.com>2022-01-05 16:54:48 -0600
commit4ec62dbafe0cb3b79cc635dfb964ef6a7ccc2d40 (patch)
tree543b9c8df31e75e499aeb0f4bcd395864d2ca7a3 /gcc/config
parentd243f4009d8071b734df16cd70f4c5d09a373769 (diff)
downloadgcc-4ec62dbafe0cb3b79cc635dfb964ef6a7ccc2d40.zip
gcc-4ec62dbafe0cb3b79cc635dfb964ef6a7ccc2d40.tar.gz
gcc-4ec62dbafe0cb3b79cc635dfb964ef6a7ccc2d40.tar.bz2
rs6000: Skip overload instances with uninitialized fntype (PR103622)
2022-01-05 Bill Schmidt <wschmidt@linux.ibm.com> gcc/ PR target/103622 * config/rs6000/rs6000-c.c (altivec_resolve_overloaded_builtin): Skip over instances with undefined function types.
Diffstat (limited to 'gcc/config')
-rw-r--r--gcc/config/rs6000/rs6000-c.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/gcc/config/rs6000/rs6000-c.c b/gcc/config/rs6000/rs6000-c.c
index db64af9..24a081c 100644
--- a/gcc/config/rs6000/rs6000-c.c
+++ b/gcc/config/rs6000/rs6000-c.c
@@ -2002,6 +2002,12 @@ altivec_resolve_overloaded_builtin (location_t loc, tree fndecl,
the overloaded call to that instance. */
for (; instance != NULL; instance = instance->next)
{
+ /* It is possible for an instance to require a data type that isn't
+ defined on this target, in which case instance->fntype will be
+ NULL. */
+ if (!instance->fntype)
+ continue;
+
bool mismatch = false;
tree nextparm = TYPE_ARG_TYPES (instance->fntype);