llvm-project/llvm/test/tools
Dehao Chen a364f09f18 Using address range map to speedup finding inline stack for address.
Summary:
In the current implementation, to find inline stack for an address incurs expensive linear search in 2 places:

* linear search for the top-level DIE
* recursive linear traverse the DIE tree to find the path to the leaf DIE

In this patch, a map is built from address to its corresponding leaf DIE. The inline stack is built by traversing from the leaf DIE up to the root DIE. This speeds up batch symbolization by ~10X without noticible memory overhead.

Reviewers: dblaikie

Reviewed By: dblaikie

Subscribers: llvm-commits

Differential Revision: https://reviews.llvm.org/D32177

llvm-svn: 300742
2017-04-19 20:09:38 +00:00
..
dsymutil [dsymutil] Fix handling of empty CUs in LTO links. 2017-02-09 19:41:55 +00:00
gold Bitcode: Add a string table to the bitcode format. 2017-04-17 17:51:36 +00:00
llvm-ar Fix binary static archive that got mangled by patch 2017-03-31 21:16:22 +00:00
llvm-config [llvm-config] Add minimal sanity tests for path options 2017-03-15 05:57:29 +00:00
llvm-cov [llvm-cov] Error-out when an unsupported format is used (PR32087) 2017-02-28 16:57:28 +00:00
llvm-cxxdump Fix a bug in the code of llvm-cxxdump in dumpArchive() when 2016-10-21 20:03:14 +00:00
llvm-cxxfilt c++filt: support COFF import thunks 2017-03-22 21:15:19 +00:00
llvm-dwp [llvm-dwp] - Reuse object::Decompressor class 2017-01-13 15:58:55 +00:00
llvm-extract [llvm-extract] Add option for recursive extraction 2017-04-06 20:51:40 +00:00
llvm-lit
llvm-lto Bitcode: Add a string table to the bitcode format. 2017-04-17 17:51:36 +00:00
llvm-lto2 llvm-lto2: Move the LTO::run() action behind a subcommand. 2017-04-11 18:12:00 +00:00
llvm-mc [Hexagon] Removing XFAIL on Hexagon target. 2015-11-09 06:15:55 +00:00
llvm-modextract llvm-modextract: Call keep() on the output stream before exiting. 2016-12-01 23:13:11 +00:00
llvm-nm [WebAssembly] Improve readobj and nm support for wasm 2017-04-14 19:50:44 +00:00
llvm-objdump [Object] Remove check for BIND_OPCODE_DONE/REBASE_OPCODE_DONE. 2017-03-30 19:56:50 +00:00
llvm-opt-report [llvm-opt-report] Fix context-sensitive lines where nothing happened 2017-01-07 20:21:17 +00:00
llvm-pdbdump [llvm-pdbdump] Recursively dump class layout. 2017-04-13 21:11:00 +00:00
llvm-profdata [PGO] Add omitted test cases. 2017-03-17 20:05:13 +00:00
llvm-readobj [WebAssembly] Improve readobj and nm support for wasm 2017-04-14 19:50:44 +00:00
llvm-size Fix a bug with llvm-size and the -m option with multiple files not printing the file names. 2016-12-01 19:12:55 +00:00
llvm-split Preserve blockaddress use edges in the module splitter. 2016-03-31 21:55:11 +00:00
llvm-strings llvm-strings: add support for `-t` 2017-01-21 02:36:28 +00:00
llvm-symbolizer Using address range map to speedup finding inline stack for address. 2017-04-19 20:09:38 +00:00
llvm-xray/X86 [XRay][tools] Fix yaml matching to be more permissive 2017-04-19 00:10:09 +00:00
lto Fix test/tools/lto/hide-linkonce-odr.ll after r289719 2016-12-15 01:31:38 +00:00
sancov [sancov] better input parameters validation 2017-03-03 18:22:20 +00:00
sanstats Use printf instead of "echo -e" or "echo -n". 2016-10-26 01:07:26 +00:00
yaml2obj [yaml2obj] Improve error message when output file cannot be opened. 2017-04-05 14:44:00 +00:00