From fb7237602c198fb128ab5029963d2b105f16424b Mon Sep 17 00:00:00 2001 From: marxin Date: Fri, 3 Feb 2017 15:15:51 +0000 Subject: [PATCH] Bail out binds_to_current_def_p for ifunc functions. 2017-02-03 Martin Liska * symtab.c (symtab_node::binds_to_current_def_p): Bail out in case of a function with ifunc attribute. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@245154 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ChangeLog | 5 +++++ gcc/symtab.c | 2 ++ 2 files changed, 7 insertions(+) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 067723cacdf9..384dd3734349 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2017-02-03 Martin Liska + + * symtab.c (symtab_node::binds_to_current_def_p): Bail out + in case of a function with ifunc attribute. + 2017-02-03 Martin Liska * cgraph.c (cgraph_node::dump): Dump function version info. diff --git a/gcc/symtab.c b/gcc/symtab.c index 0078896c8a86..f0baf0810403 100644 --- a/gcc/symtab.c +++ b/gcc/symtab.c @@ -2225,6 +2225,8 @@ symtab_node::binds_to_current_def_p (symtab_node *ref) if (transparent_alias) return definition && get_alias_target()->binds_to_current_def_p (ref); + if (lookup_attribute ("ifunc", DECL_ATTRIBUTES (decl))) + return false; if (decl_binds_to_current_def_p (decl)) return true; -- 2.47.2