From 09c49e0edb676562a8c07e57b76f41485ad7a89b Mon Sep 17 00:00:00 2001 From: marxin Date: Tue, 14 Mar 2017 12:05:29 +0000 Subject: [PATCH] Verify that target can create a dispatcher call (PR target/79892). 2017-03-14 Martin Liska PR target/79892 * multiple_target.c (create_dispatcher_calls): Check that a target can create a function dispatcher. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@246120 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ChangeLog | 6 ++++++ gcc/multiple_target.c | 7 +++++++ 2 files changed, 13 insertions(+) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 458faddc8aed..8015a15169c5 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2017-03-14 Martin Liska + + PR target/79892 + * multiple_target.c (create_dispatcher_calls): Check that + a target can create a function dispatcher. + 2017-03-14 Martin Liska PR lto/66295 diff --git a/gcc/multiple_target.c b/gcc/multiple_target.c index 4a835bbcc176..427c655c8aea 100644 --- a/gcc/multiple_target.c +++ b/gcc/multiple_target.c @@ -68,6 +68,13 @@ create_dispatcher_calls (struct cgraph_node *node) " supported by this target"); break; } + else if (!targetm.get_function_versions_dispatcher) + { + error_at (gimple_location (call), + "target does not support function version dispatcher"); + break; + } + e_next = e->next_caller; idecl = targetm.get_function_versions_dispatcher (decl); if (!idecl) -- 2.47.2