google / bloaty

Bloaty: a size profiler for binaries

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

How to read the debuginfo from the Chromium output object file

Wangzihaooooo opened this issue · comments

$ bloaty -d symbols out/ninja/obj/base/base/activity_analyzer.o
FILE SIZE VM SIZE
25.0% 28.0Ki 30.8% 28.0Ki [,__debug_info]
19.5% 21.8Ki 24.0% 21.8Ki [,__debug_str]
12.4% 13.9Ki 0.0% 0 [Unmapped]
9.4% 10.6Ki 11.6% 10.6Ki [,__debug_line]
9.0% 10.1Ki 11.1% 10.1Ki [,__apple_names]
7.8% 8.75Ki 9.6% 8.75Ki [,__debug_ranges]
4.5% 5.02Ki 3.3% 3.00Ki [27 Others]
2.1% 2.30Ki 2.5% 2.23Ki base::debug::GlobalActivityAnalyzer::PrepareAllAnalyzers()
1.4% 1.62Ki 1.1% 1000 std::__1::__tree<>::__find_equal<>()
1.4% 1.59Ki 1.2% 1.10Ki std::__1::vector<>::__push_back_slow_path<>()
1.2% 1.33Ki 0.5% 452 std::__1::__tree<>::destroy()
1.0% 1.17Ki 0.0% 0 [Mach-O Headers]
1.0% 1.09Ki 0.7% 632 base::debug::ThreadActivityAnalyzer::ThreadActivityAnalyzer()
0.9% 1.04Ki 1.1% 984 std::__1::__tree_remove<>()
0.9% 1002 0.6% 520 base::debug::GlobalActivityAnalyzer::UserDataSnapshot::UserDataSnapshot()
0.5% 580 0.2% 196 std::__1::__tree<>::__emplace_hint_unique_key_args<>()
0.4% 510 0.5% 440 base::debug::GlobalActivityAnalyzer::GetModules()
0.4% 508 0.4% 416 std::__1::__tree_balance_after_insert<>()
0.4% 476 0.2% 200 base::debug::GlobalActivityAnalyzer::GlobalActivityAnalyzer()
0.4% 419 0.2% 216 std::__1::__tree<>::__erase_unique<>()
0.4% 418 0.4% 344 base::debug::GlobalActivityAnalyzer::GetLogMessages()
100.0% 112Ki 100.0% 90.9Ki TOTAL

$ cp out/ninja/obj/base/base/activity_analyzer.o out/ninja/obj/base/base/activity_analyzer.stripped
$ strip -S -x out/ninja/obj/base/base/activity_analyzer.stripped
$: bloaty -d symbols --debug-file=out/ninja/obj/base/base/activity_analyzer.o out/ninja/obj/base/base/activity_analyzer.stripped
bloaty: File 'out/ninja/obj/base/base/activity_analyzer.o' has no build ID, cannot be used as a debug file