diff options
Diffstat (limited to 'tools/perf/util/symbol-elf.c')
| -rw-r--r-- | tools/perf/util/symbol-elf.c | 9 | 
1 files changed, 6 insertions, 3 deletions
| diff --git a/tools/perf/util/symbol-elf.c b/tools/perf/util/symbol-elf.c index 54efcb5659a..4b12bf85032 100644 --- a/tools/perf/util/symbol-elf.c +++ b/tools/perf/util/symbol-elf.c @@ -806,9 +806,12 @@ int dso__load_sym(struct dso *dso, struct map *map,  		 * DWARF DW_compile_unit has this, but we don't always have access  		 * to it...  		 */ -		demangled = bfd_demangle(NULL, elf_name, DMGL_PARAMS | DMGL_ANSI); -		if (demangled != NULL) -			elf_name = demangled; +		if (symbol_conf.demangle) { +			demangled = bfd_demangle(NULL, elf_name, +						 DMGL_PARAMS | DMGL_ANSI); +			if (demangled != NULL) +				elf_name = demangled; +		}  new_symbol:  		f = symbol__new(sym.st_value, sym.st_size,  				GELF_ST_BIND(sym.st_info), elf_name); |