aboutsummaryrefslogtreecommitdiffstats
path: root/tools/perf/util/annotate.c
AgeCommit message (Expand)AuthorFilesLines
2024-04-11perf annotate: Make sure to call symbol__annotate2() in TUINamhyung Kim1-0/+3
2024-03-06perf annotate: Remove sym_hist.addr[] arrayNamhyung Kim1-31/+5
2024-03-06perf annotate: Calculate instruction overhead using hashmapNamhyung Kim1-14/+30
2024-03-06perf annotate: Add a hashmap for symbol histogramNamhyung Kim1-2/+40
2024-01-22perf annotate-data: Support global variablesNamhyung Kim1-2/+55
2024-01-22perf annotate-data: Add stack operation pseudo typeNamhyung Kim1-0/+26
2024-01-22perf annotate-data: Handle array style accessesNamhyung Kim1-9/+34
2024-01-22perf annotate-data: Handle macro fusion on x86Namhyung Kim1-1/+16
2024-01-22perf annotate-data: Parse 'lock' prefix from llvm-objdumpNamhyung Kim1-1/+13
2023-12-23perf annotate: Add --insn-stat option for debuggingNamhyung Kim1-0/+38
2023-12-23perf annotate: Add --type-stat option for debuggingNamhyung Kim1-5/+22
2023-12-23perf annotate: Add --data-type optionNamhyung Kim1-4/+6
2023-12-23perf report: Add 'typeoff' sort keyNamhyung Kim1-0/+1
2023-12-23perf annotate-data: Update sample histogram for typeNamhyung Kim1-1/+8
2023-12-23perf annotate: Implement hist_entry__get_data_type()Namhyung Kim1-0/+88
2023-12-23perf annotate: Add annotate_get_insn_location()Namhyung Kim1-0/+107
2023-12-23perf annotate: Factor out evsel__get_arch()Namhyung Kim1-13/+31
2023-12-07perf annotate: Get rid of local annotation optionsNamhyung Kim1-2/+0
2023-12-07perf annotate: Remove remaining usages of local annotation optionsNamhyung Kim1-1/+1
2023-12-07perf annotate: Ensure init/exit for global optionsNamhyung Kim1-8/+11
2023-12-07perf annotate: Use global annotation_optionsNamhyung Kim1-63/+55
2023-12-07perf annotate: Introduce global annotation_optionsNamhyung Kim1-0/+3
2023-11-27perf annotate: Check if operand has multiple regsNamhyung Kim1-0/+36
2023-11-10perf annotate: Move raw_comment and raw_func_start fields out of 'struct ins_...Namhyung Kim1-4/+13
2023-11-10perf annotate: Pass "-l" option to objdump conditionallyNamhyung Kim1-1/+2
2023-11-09perf annotate: Move offsets array from 'struct annotation' to 'struct annotat...Namhyung Kim1-10/+10
2023-11-09perf annotate: Move some source code related fields from 'struct annotation' ...Namhyung Kim1-8/+9
2023-11-09perf annotate: Move max_coverage from 'struct annotation' to 'struct annotate...Namhyung Kim1-1/+1
2023-11-09perf annotate: Split branch stack cycles info from 'struct annotation'Namhyung Kim1-45/+54
2023-11-09perf annotate: Split branch stack cycles information out of 'struct annotatio...Namhyung Kim1-17/+44
2023-08-03perf annotate bpf: Don't enclose non-debug code with an assert()Arnaldo Carvalho de Melo1-3/+7
2023-06-20perf annotate: Fix instruction association and parsing for LoongArchWANG Rui1-2/+6
2023-06-20perf annotation: Switch lock from a mutex to a sharded_mutexIan Rogers1-9/+57
2023-06-16perf annotate: Work with vmlinux outside symfsVincent Whitchurch1-1/+4
2023-06-12perf annotate: Allow whitespace between insn operandsNamhyung Kim1-1/+1
2023-06-12perf srcline: Change free_srcline to zfree_srclineIan Rogers1-1/+1
2023-06-12perf annotate: Fix parse_objdump_line memory leakIan Rogers1-1/+2
2023-06-09perf annotate: Handle x86 instruction suffix generallyNamhyung Kim1-0/+22
2023-05-15perf annotate: Parse x86 SIB addressing properlyNamhyung Kim1-0/+13
2023-05-07Merge tag 'perf-tools-for-v6.4-3-2023-05-06' of git://git.kernel.org/pub/scm/...Linus Torvalds1-29/+56
2023-05-01tools/perf: Add basic support for LoongArchHuacai Chen1-0/+8
2023-04-17perf dso: Add dso__filename_with_chroot() to reduce number of accesses to dso...Arnaldo Carvalho de Melo1-2/+1
2023-04-12perf annotate: Use zfree() to reduce chances of use after freeArnaldo Carvalho de Melo1-1/+2
2023-04-06perf map: Add helper for ->map_ip() and ->unmap_ip()Ian Rogers1-7/+7
2023-04-04perf map: Add accessor for start and endIan Rogers1-2/+2
2023-04-04perf map: Add accessor for dsoIan Rogers1-8/+8
2023-04-04perf symbol: Add command line support for addr2line pathIan Rogers1-0/+6
2023-04-04perf annotate: Allow objdump to be set in perfconfigIan Rogers1-0/+6
2023-04-04perf annotate: Own objdump_path and disassembler_style stringsIan Rogers1-2/+8
2023-04-04perf annotate: Add init/exit to annotation_options remove defaultIan Rogers1-8/+17
2022-10-04perf annotate: Toggle full address <-> offset displayNamhyung Kim1-1/+18
2022-10-04perf dso: Hold lock when accessing nsinfoIan Rogers1-0/+2
2022-10-04perf annotate: Update use of pthread mutexIan Rogers1-7/+6
2022-08-01tools perf: Fix compilation error with new binutilsAndres Freund1-3/+4
2022-04-09perf annotate: Drop objdump stderr to avoid getting stuck waiting for stdout ...Ian Rogers1-0/+1
2022-02-10perf annotate: Try chroot filename for objdumpNamhyung Kim1-0/+10
2022-02-06perf annotate: Set error stream of objdump process for TUINamhyung Kim1-0/+1
2021-11-13perf symbols: Factor out annotation init/exitIan Rogers1-0/+11
2021-11-13perf symbols: Bit pack to save a byteIan Rogers1-1/+1
2021-11-01perf bpf: Pull in bpf_program__get_prog_info_linear()Dave Marchevsky1-1/+2
2021-09-27perf annotate: Add riscv64 supportWilliam Cohen1-0/+5
2021-09-15perf annotate: Add fusion logic for AMD microarchsRavi Bangoria1-1/+0
2021-08-31perf bpf: Fix memory leaks relating to BTF.Ian Rogers1-1/+1
2021-08-03perf annotate: Add disassembly warnings for annotate --stdioJames Clark1-2/+18
2021-08-02perf annotate: Add error log in symbol__annotate()Li Huafei1-1/+3
2021-07-09libperf: Move 'idx' from tools/perf to perf_evsel::idxJiri Olsa1-4/+4
2021-04-20perf annotate: Add line number like in TUI and source location at EOLMartin Liška1-16/+14
2021-03-06perf annotate: Show full source location with 'l' hotkeyMartin Liska1-2/+10
2021-03-06perf config: Add annotate.demangle{,_kernel}Martin Liska1-0/+4
2021-02-11perf annotate: Fix jump parsing for C++ code.Martin Liška1-0/+8
2020-11-04perf annotate: Move bpf header inclusion to inside HAVE_LIBBPF_SUPPORTArnaldo Carvalho de Melo1-4/+4
2020-11-04perf annotate mips: Add perf arch instructions annotate handlersDengcheng Zhu1-0/+8
2020-10-14perf tools: Pass build_id object to build_id__sprintf()Jiri Olsa1-2/+1
2020-10-14perf tools: Use build_id object in dsoJiri Olsa1-2/+2
2020-09-04perf annotate: Allow configuring the 'disassembler_style' knob via 'perf config'Arnaldo Carvalho de Melo1-0/+2
2020-07-09perf annotate: Fix non-null terminated buffer returned by readlink()Numfor Mbiziwo-Tiapo1-4/+11
2020-06-02perf tools: Remove some duplicated includesTiezhu Yang1-1/+0
2020-05-05perf evsel: Rename perf_evsel__env() to evsel__env()Arnaldo Carvalho de Melo1-1/+1
2020-05-05perf evsel: Rename perf_evsel__is_*() to evsel__is*()Arnaldo Carvalho de Melo1-5/+5
2020-05-05perf evsel: Rename perf_evsel__group_desc() to evsel__group_desc()Arnaldo Carvalho de Melo1-2/+2
2020-05-05perf evsel: Rename *perf_evsel__*name() to *evsel__*name()Arnaldo Carvalho de Melo1-2/+2
2020-04-16perf annotate: Add basic support for bpf_imageJiri Olsa1-0/+20
2020-03-04perf annotate: Get rid of annotation->nr_jumpsRavi Bangoria1-2/+0
2020-02-27perf annotate: Fix segfault with source toggleRavi Bangoria1-0/+2
2020-02-27perf annotate: Align struct annotate_argsRavi Bangoria1-6/+6
2020-02-27perf annotate: Simplify disasm_line allocation and freeing codeRavi Bangoria1-55/+31
2020-02-27perf annotate: Remove privsize from symbol__annotate() argsRavi Bangoria1-3/+4
2020-02-27perf annotate: Make perf config effectiveRavi Bangoria1-49/+29
2020-02-27perf annotate: Fix --show-nr-samples for tui/stdio2Ravi Bangoria1-4/+2
2020-02-27perf annotate: Fix --show-total-period for tui/stdio2Ravi Bangoria1-3/+2
2020-01-14perf tools: Support --prefix/--prefix-stripAndi Kleen1-2/+17
2019-11-26perf maps: Rename map_groups.h to maps.hArnaldo Carvalho de Melo1-1/+1
2019-11-26perf map_symbol: Rename ms->mg to ms->mapsArnaldo Carvalho de Melo1-3/+3
2019-11-26perf maps: Merge 'struct maps' with 'struct map_groups'Arnaldo Carvalho de Melo1-3/+3
2019-11-12perf annotate: Stop using map->groups, use map_symbol->mg insteadArnaldo Carvalho de Melo1-3/+3
2019-11-12pref tools: Make 'struct addr_map_symbol' contain 'struct map_symbol'Arnaldo Carvalho de Melo1-21/+22
2019-11-12perf annotate: Pass a 'map_symbol' in places receiving a pair of 'map' and 's...Arnaldo Carvalho de Melo1-29/+27
2019-11-12perf map_groups: Pass the object to map_groups__find_ams()Arnaldo Carvalho de Melo1-3/+3
2019-11-07perf annotate: Fix heap overflowIan Rogers1-1/+1
2019-10-22Merge tag 'perf-core-for-mingo-5.5-20191021' of git://git.kernel.org/pub/scm/...Ingo Molnar1-64/+132
2019-10-22Merge branch 'perf/urgent' into perf/core, to pick up fixesIngo Molnar1-1/+1
2019-10-15perf annotate: Fix multiple memory and file descriptor leaksGustavo A. R. Silva1-1/+1
2019-10-15perf annotate: Fix objdump --no-show-raw-insn flagIan Rogers1-2/+2
2019-10-15perf annotate: Don't pipe objdump output through 'expand' commandIan Rogers1-19/+76
2019-10-15perf annotate: Don't pipe objdump output through 'grep' commandIan Rogers1-1/+8
2019-10-15perf annotate: Use libsubcmd's run-command.h to fork objdumpIan Rogers1-35/+37
2019-10-15perf annotate: Avoid reallocation in objdump parsingIan Rogers1-12/+14
2019-10-11perf diff: Report noisy for cycles diffJin Yao1-0/+4
2019-09-30perf annotate: Don't return -1 for error when doing BPF disassemblyArnaldo Carvalho de Melo1-4/+15
2019-09-30perf annotate: Return appropriate error code for allocation failuresArnaldo Carvalho de Melo1-2/+2
2019-09-30perf annotate: Fix arch specific ->init() failure errorsArnaldo Carvalho de Melo1-0/+6
2019-09-30perf annotate: Propagate the symbol__annotate() error returnArnaldo Carvalho de Melo1-1/+1
2019-09-30perf annotate: Fix the signedness of failure returnsArnaldo Carvalho de Melo1-1/+1
2019-09-30perf annotate: Propagate perf_env__arch() errorArnaldo Carvalho de Melo1-1/+1
2019-09-25perf tools: Replace needless mmap.h with what is needed, event.hArnaldo Carvalho de Melo1-1/+1
2019-09-25perf evlist: Adopt backwards ring buffer state enumArnaldo Carvalho de Melo1-0/+1
2019-09-20perf tools: Remove util.h from where it is not neededArnaldo Carvalho de Melo1-1/+1
2019-08-31perf auxtrace: Uninline functions that touch perf_sessionArnaldo Carvalho de Melo1-0/+3
2019-08-31perf tools: Remove needless evlist.h include directivesArnaldo Carvalho de Melo1-1/+0
2019-08-31perf dso: Adopt DSO related macros from symbol.hArnaldo Carvalho de Melo1-0/+1
2019-08-26perf srcline: Add missing srcline.h header to files needing its defsArnaldo Carvalho de Melo1-0/+2
2019-08-12Merge remote-tracking branch 'torvalds/master' into perf/coreArnaldo Carvalho de Melo1-1/+1
2019-08-08perf annotate: Fix printing of unaugmented disassembled instructions from BPFArnaldo Carvalho de Melo1-1/+1
2019-07-29libperf: Move nr_members from perf's evsel to libperf's perf_evselJiri Olsa1-4/+4
2019-07-29libperf: Add nr_entries to struct perf_evlistJiri Olsa1-1/+1
2019-07-29perf evsel: Rename struct perf_evsel to struct evselJiri Olsa1-16/+16
2019-07-09perf tools: Use list_del_init() more thorouglyArnaldo Carvalho de Melo1-2/+2
2019-07-09perf tools: Use zfree() where applicableArnaldo Carvalho de Melo1-2/+1
2019-07-09perf annotate: Fix dereferencing freed memory found by the smatch toolLeo Yan1-4/+2
2019-07-01perf annotate: Add csky supportMao Han1-0/+5
2019-07-01perf tools: Ditch rtrim(), use strim() from tools/libArnaldo Carvalho de Melo1-1/+2
2019-06-26perf tools: Ditch rtrim(), use skip_spaces() to get closer to the kernelArnaldo Carvalho de Melo1-5/+5
2019-06-25tools perf: Move from sane_ctype.h obtained from git to the Linux's originalArnaldo Carvalho de Melo1-1/+1
2019-06-17Merge tag 'perf-core-for-mingo-5.3-20190611' of git://git.kernel.org/pub/scm/...Ingo Molnar1-3/+2
2019-06-10perf report: Fix OOM error in TUI mode on s390Thomas Richter1-3/+2
2019-06-05treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 251Thomas Gleixner1-2/+1
2019-05-15perf annotate: Remove hist__account_cycles() from callbackJin Yao1-1/+1
2019-05-02perf annotate: Fix build on 32 bit for BPF annotationThadeu Lima de Souza Cascardo1-4/+4
2019-03-20perf annotate: Enable annotation of BPF programsSong Liu1-1/+162
2019-03-06perf annotate: Calculate the max instruction name, align column to thatArnaldo Carvalho de Melo1-28/+46
2019-02-21perf annotate: Fix getting source line failureWei Li1-2/+2
2019-02-06pref tools: Add missing map.h includesArnaldo Carvalho de Melo1-0/+1
2019-01-25perf symbols: Remove some unnecessary includes from symbol.hArnaldo Carvalho de Melo1-0/+1
2019-01-04perf annotate: Pass filename to objdump via execlIvan Krylov1-4/+4
2018-12-17perf annotate: Introduce basic support for ARCEugeniy Paltsev1-0/+5
2018-12-17perf tools: Fix diverse comment typosIngo Molnar1-1/+1
2018-12-17perf annotate: Create a annotate2 flag in struct symbolJin Yao1-0/+1
2018-12-17perf annotate: Compute average IPC and IPC coverage per symbolJin Yao1-3/+38
2018-10-18perf annotate: Add Sparc supportDavid Miller1-0/+8
2018-08-30perf annotate: Fix parsing aarch64 branch instructions after objdump updateKim Phillips1-1/+21
2018-08-30perf annotate: Properly interpret indirect callMartin Liška1-2/+8
2018-08-20perf tools: Get rid of dso__needs_decompress() call in symbol__disassemble()Jiri Olsa1-1/+3
2018-08-08perf annotate: Add --percent-type optionJiri Olsa1-0/+52
2018-08-08perf annotate: Display percent type in stdio outputJiri Olsa1-3/+6
2018-08-08perf annotate: Make local period the default percent typeJiri Olsa1-1/+1
2018-08-08perf annotate: Pass 'struct annotation_options' to map_symbol__annotation_dump()Jiri Olsa1-19/+23
2018-08-08perf annotate: Pass struct annotation_options to symbol__calc_lines()Jiri Olsa1-10/+13
2018-08-08perf annotate: Add percent_type to struct annotation_optionsJiri Olsa1-5/+8
2018-08-08perf annotate: Add PERCENT_PERIOD_GLOBAL percent valueJiri Olsa1-0/+3
2018-08-08perf annotate: Add PERCENT_PERIOD_LOCAL percent valueJiri Olsa1-0/+2
2018-08-08perf annotate: Add PERCENT_HITS_GLOBAL percent valueJiri Olsa1-1/+7
2018-08-08perf annotate: Switch struct annotation_data::percent to arrayJiri Olsa1-19/+38
2018-08-08perf annotate: Loop group events directly in annotation__calc_percent()Jiri Olsa1-5/+8
2018-08-08perf annotate: Rename hist to sym_hist in annotation__calc_percentJiri Olsa1-8/+8
2018-08-08perf annotate: Rename local sample variables to dataJiri Olsa1-20/+20
2018-08-08perf annotate: Rename struct annotation_line::samples* to data*Jiri Olsa1-26/+26
2018-08-08perf annotate: Get rid of annotation__scnprintf_samples_period()Jiri Olsa1-42/+2
2018-08-08perf annotate: Make annotation_line__max_percent staticJiri Olsa1-1/+2
2018-08-08perf annotate: Make symbol__annotate_fprintf2() localJiri Olsa1-1/+1
2018-06-06perf annnotate: Make __symbol__inc_addr_samples handle src->histograms == NULLArnaldo Carvalho de Melo1-0/+5
2018-06-04perf annotate: Move objdump_path to struct annotation_optionsArnaldo Carvalho de Melo1-2/+1
2018-06-04perf annotate: Move disassembler_style global to annotation_optionsArnaldo Carvalho de Melo1-3/+2
2018-06-04perf annotate: Adopt anotation options from symbol_confArnaldo Carvalho de Melo1-2/+4
2018-06-04perf annotate: Pass annotation_options to symbol__annotate()Arnaldo Carvalho de Melo1-2/+5
2018-06-04perf annotate stdio: Use annotation_options consistentlyArnaldo Carvalho de Melo1-16/+15
2018-06-04perf annotate: Replace symbol__alloc_hists() with symbol__hists()Arnaldo Carvalho de Melo1-19/+2
2018-06-04perf annotate: Stop using symbol_conf.nr_events global in symbol__hists()Arnaldo Carvalho de Melo1-3/+4
2018-06-04perf annotate: Introduce symbol__cycle_hists()Arnaldo Carvalho de Melo1-10/+14
2018-06-04perf annotate: Introduce symbol__hists()Arnaldo Carvalho de Melo1-4/+24
2018-06-04perf annotate: __symbol__inc_addr_samples() needs just annotated_sourceArnaldo Carvalho de Melo1-3/+3
2018-06-04perf annotate: Introduce annotated_source__alloc_histogramsArnaldo Carvalho de Melo1-8/+16
2018-06-04perf annotate: Introduce constructor/destructor for annotated_sourceArnaldo Carvalho de Melo1-3/+22
2018-06-04perf annotate: Split allocation of annotated_source structArnaldo Carvalho de Melo1-3/+7
2018-06-04perf annotate: __symbol__acount_cycles doesn't need notesArnaldo Carvalho de Melo1-5/+2
2018-06-04perf annotate: Pass perf_evsel instead of just evsel->idxArnaldo Carvalho de Melo1-6/+6
2018-05-23perf annotate: Show group event string for stdioJin Yao1-1/+5
2018-05-19perf annotate: Create hotkey 'c' to show min/max cyclesJin Yao1-6/+31
2018-05-18perf annotate: Record the min/max cyclesJin Yao1-1/+13
2018-05-10perf annotate: Display all available events on --stdioJin Yao1-0/+3
2018-04-13perf annotate: Allow setting the offset level in .perfconfigArnaldo Carvalho de Melo1-3/+12
2018-04-12perf annotate: Allow showing offsets in more than just jump targetsArnaldo Carvalho de Melo1-2/+9
2018-04-05perf annotate: Show group details on the title lineArnaldo Carvalho de Melo1-2/+5
2018-04-03perf annotate stdio2: Print more descriptive event information headerArnaldo Carvalho de Melo1-7/+3
2018-04-03perf annotate: Introduce annotation__scnprintf_samples_period() methodArnaldo Carvalho de Melo1-0/+38
2018-03-23perf annotate: Use absolute addresses to calculate jump target offsetsArnaldo Carvalho de Melo1-3/+2
2018-03-23perf annotate: Defer searching for comma in raw line till it is neededArnaldo Carvalho de Melo1-1/+2
2018-03-23perf annotate: Support jumping from one function to anotherArnaldo Carvalho de Melo1-2/+4
2018-03-23perf annotate: Add "_local" to jump/offset validation routinesArnaldo Carvalho de Melo1-5/+4
2018-03-21perf annotate: Mark jumps to outher functions with the call arrowArnaldo Carvalho de Melo1-3/+52
2018-03-21perf annotate: Pass function descriptor to its instruction parsing routinesArnaldo Carvalho de Melo1-13/+17