From 11c8145561ebaf02170cf601bcd9b393cdb82916 Mon Sep 17 00:00:00 2001 From: Jan Kratochvil Date: Mon, 28 Mar 2011 20:22:52 +0000 Subject: gdb/ GDB find_pc_partial_function support for STT_GNU_IFUNC. * blockframe.c (cache_pc_function_is_gnu_ifunc): New variable. (clear_pc_function_cache): Clear it. (find_pc_partial_function): Rename to ... (find_pc_partial_function_gnu_ifunc): ... this function. New parameter is_gnu_ifunc_p, describe it. Set *IS_GNU_IFUNC_P. (find_pc_partial_function): New wrapper for this function. * symtab.h (find_pc_partial_function_gnu_ifunc): New declaration. --- gdb/symtab.h | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'gdb/symtab.h') diff --git a/gdb/symtab.h b/gdb/symtab.h index 9e24828..0645515 100644 --- a/gdb/symtab.h +++ b/gdb/symtab.h @@ -956,6 +956,11 @@ extern struct symbol *find_pc_function (CORE_ADDR); extern struct symbol *find_pc_sect_function (CORE_ADDR, struct obj_section *); +extern int find_pc_partial_function_gnu_ifunc (CORE_ADDR pc, char **name, + CORE_ADDR *address, + CORE_ADDR *endaddr, + int *is_gnu_ifunc_p); + /* lookup function from address, return name, start addr and end addr. */ extern int find_pc_partial_function (CORE_ADDR, char **, CORE_ADDR *, -- cgit v1.1