diff options
Diffstat (limited to 'tools/perf/util/map.c')
-rw-r--r-- | tools/perf/util/map.c | 50 |
1 files changed, 2 insertions, 48 deletions
diff --git a/tools/perf/util/map.c b/tools/perf/util/map.c index ef5bc91..4f6680d 100644 --- a/tools/perf/util/map.c +++ b/tools/perf/util/map.c @@ -172,7 +172,7 @@ int map__load(struct map *map, symbol_filter_t filter) pr_warning(", continuing without symbols\n"); return -1; } else if (nr == 0) { -#ifdef HAVE_LIBELF_SUPPORT +#ifdef LIBELF_SUPPORT const size_t len = strlen(name); const size_t real_len = len - sizeof(DSO__DELETED); @@ -252,16 +252,10 @@ size_t map__fprintf_dsoname(struct map *map, FILE *fp) return fprintf(fp, "%s", dsoname); } -/** - * map__rip_2objdump - convert symbol start address to objdump address. - * @map: memory map - * @rip: symbol start address - * +/* * objdump wants/reports absolute IPs for ET_EXEC, and RIPs for ET_DYN. * map->dso->adjust_symbols==1 for ET_EXEC-like cases except ET_REL which is * relative to section start. - * - * Return: Address suitable for passing to "objdump --start-address=" */ u64 map__rip_2objdump(struct map *map, u64 rip) { @@ -274,29 +268,6 @@ u64 map__rip_2objdump(struct map *map, u64 rip) return map->unmap_ip(map, rip); } -/** - * map__objdump_2mem - convert objdump address to a memory address. - * @map: memory map - * @ip: objdump address - * - * Closely related to map__rip_2objdump(), this function takes an address from - * objdump and converts it to a memory address. Note this assumes that @map - * contains the address. To be sure the result is valid, check it forwards - * e.g. map__rip_2objdump(map->map_ip(map, map__objdump_2mem(map, ip))) == ip - * - * Return: Memory address. - */ -u64 map__objdump_2mem(struct map *map, u64 ip) -{ - if (!map->dso->adjust_symbols) - return map->unmap_ip(map, ip); - - if (map->dso->rel) - return map->unmap_ip(map, ip + map->pgoff); - - return ip; -} - void map_groups__init(struct map_groups *mg) { int i; @@ -400,23 +371,6 @@ struct symbol *map_groups__find_symbol_by_name(struct map_groups *mg, return NULL; } -int map_groups__find_ams(struct addr_map_symbol *ams, symbol_filter_t filter) -{ - if (ams->addr < ams->map->start || ams->addr > ams->map->end) { - if (ams->map->groups == NULL) - return -1; - ams->map = map_groups__find(ams->map->groups, ams->map->type, - ams->addr); - if (ams->map == NULL) - return -1; - } - - ams->al_addr = ams->map->map_ip(ams->map, ams->addr); - ams->sym = map__find_symbol(ams->map, ams->al_addr, filter); - - return ams->sym ? 0 : -1; -} - size_t __map_groups__fprintf_maps(struct map_groups *mg, enum map_type type, int verbose, FILE *fp) { |