summaryrefslogtreecommitdiff
path: root/gcc/c-common.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/c-common.c')
-rw-r--r--gcc/c-common.c16
1 files changed, 15 insertions, 1 deletions
diff --git a/gcc/c-common.c b/gcc/c-common.c
index 22aa82e8d48..0e373775485 100644
--- a/gcc/c-common.c
+++ b/gcc/c-common.c
@@ -5979,6 +5979,20 @@ tree
resolve_overloaded_builtin (tree function, tree params)
{
enum built_in_function orig_code = DECL_FUNCTION_CODE (function);
+ switch (DECL_BUILT_IN_CLASS (function))
+ {
+ case BUILT_IN_NORMAL:
+ break;
+ case BUILT_IN_MD:
+ if (targetm.resolve_overloaded_builtin)
+ return targetm.resolve_overloaded_builtin (function, params);
+ else
+ return NULL_TREE;
+ default:
+ return NULL_TREE;
+ }
+
+ /* Handle BUILT_IN_NORMAL here. */
switch (orig_code)
{
case BUILT_IN_FETCH_AND_ADD_N:
@@ -6017,7 +6031,7 @@ resolve_overloaded_builtin (tree function, tree params)
}
default:
- return NULL;
+ return NULL_TREE;
}
}