| OLD | NEW |
| 1 # map2size.py | 1 # map2size.py |
| 2 | 2 |
| 3 Parses a linker .map(.gz) file and outputs the result as a .size(.gz) file. | 3 Parses a linker .map file and outputs the result as a .size file. |
| 4 | 4 |
| 5 ## Example Usage: | 5 ## Example Usage: |
| 6 | 6 |
| 7 # Android: | 7 # Android: |
| 8 gn gen out/Release --args='target_os="android" is_official_build=true' | 8 gn gen out/Release --args='target_os="android" is_official_build=true' |
| 9 ninja -C out/Release -j 1000 libchrome.so | 9 ninja -C out/Release -j 1000 libchrome.so |
| 10 tools/binary_size/map2size.py out/Release/lib.unstripped/libchrome.so.map.gz
chrome.size -v | 10 tools/binary_size/map2size.py out/Release/lib.unstripped/libchrome.so chrome
.size -v |
| 11 # Linux: | 11 # Linux: |
| 12 gn gen out/Release --args='is_official_build=true' | 12 gn gen out/Release --args='is_official_build=true' |
| 13 ninja -C out/Release -j 1000 chrome | 13 ninja -C out/Release -j 1000 chrome |
| 14 tools/binary_size/map2size.py out/Release/chrome.map.gz chrome.size -v | 14 tools/binary_size/map2size.py out/Release/chrome chrome.size -v |
| 15 | 15 |
| 16 # create_html_breakdown.py | 16 # create_html_breakdown.py |
| 17 | 17 |
| 18 Creates an interactive size breakdown as a stand-alone html report. | 18 Creates an interactive size breakdown as a stand-alone html report. |
| 19 | 19 |
| 20 ## Example Usage: | 20 ## Example Usage: |
| 21 | 21 |
| 22 tools/binary_size/create_html_breakdown.py chrome.size --report-dir size-rep
ort -v | 22 tools/binary_size/create_html_breakdown.py chrome.size --report-dir size-rep
ort -v |
| 23 xdg-open size-report/index.html | 23 xdg-open size-report/index.html |
| 24 | 24 |
| (...skipping 24 matching lines...) Expand all Loading... |
| 49 * Break down by other groupings (e.g. create from nested `SymbolGroups`) | 49 * Break down by other groupings (e.g. create from nested `SymbolGroups`) |
| 50 1. More `map2size.py` features: | 50 1. More `map2size.py` features: |
| 51 * Find out more about 0xffffffffffffffff addresses, and why such large | 51 * Find out more about 0xffffffffffffffff addresses, and why such large |
| 52 gaps exist after them. | 52 gaps exist after them. |
| 53 * Use nm to get the full list of symbols that share the same address. | 53 * Use nm to get the full list of symbols that share the same address. |
| 54 1. Integrate with `resource_sizes.py` so that it tracks size of major | 54 1. Integrate with `resource_sizes.py` so that it tracks size of major |
| 55 components separately: chrome vs blink vs skia vs v8. | 55 components separately: chrome vs blink vs skia vs v8. |
| 56 1. Speed up some steps (like normalizing names) via multiprocessing. | 56 1. Speed up some steps (like normalizing names) via multiprocessing. |
| 57 1. Use resource whitelist information to attribute .pak file size to .o files. | 57 1. Use resource whitelist information to attribute .pak file size to .o files. |
| 58 1. Add dependency graph info, perhaps just on a per-file basis. | 58 1. Add dependency graph info, perhaps just on a per-file basis. |
| OLD | NEW |