Messages in this thread Patch in this message | | | From | Adrian Hunter <> | Subject | [PATCH 09/41] perf tools: Fix missing GNU IFUNC symbols | Date | Mon, 14 Jul 2014 13:02:33 +0300 |
| |
Symbols of type STT_GNU_IFUNC are functions so accept them as such.
Signed-off-by: Adrian Hunter <adrian.hunter@intel.com> --- tools/perf/util/symbol-elf.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/tools/perf/util/symbol-elf.c b/tools/perf/util/symbol-elf.c index 8c96817..477596c 100644 --- a/tools/perf/util/symbol-elf.c +++ b/tools/perf/util/symbol-elf.c @@ -49,7 +49,8 @@ static inline uint8_t elf_sym__type(const GElf_Sym *sym) static inline int elf_sym__is_function(const GElf_Sym *sym) { - return elf_sym__type(sym) == STT_FUNC && + return (elf_sym__type(sym) == STT_FUNC || + elf_sym__type(sym) == STT_GNU_IFUNC) && sym->st_name != 0 && sym->st_shndx != SHN_UNDEF; } -- 1.8.3.2
| |