tree 92d6dfa23b4a60b9d24dc575549590317aeae076
parent c5db671c31d6a900d3dae7fc37f73ea7e4c68e5c
author Sanjay Ghemawat <sanjay@google.com> 1614328925 -0800
committer GitHub <noreply@github.com> 1614328925 -0800
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsBcBAABCAAQBQJgOLRdCRBK7hj4Ov3rIwAAdHIIAEwtTwUyqg4WiRi+mJs6fCRx
 xZ50+qdORQruNjTm8dpAwdSTDvGBbnzizLMH+wfFQeu9oB2NGZNcpvNXYLLSYgU2
 qAKb+oneIbnhQgxQgGXncgUmkJQbmaqIfrHQuAibXfu2a0pjWPFstggvOZgjBxQA
 UNreZtEQEr5O3rn77vCpm0wycJVC8l1leg5r5RUkksJM663JHvIWiQGII33AsI4M
 Gwzl0s0dsTo6hdrxExbsvsKup+fPgP+gsvwmxsOle48RwisiUZ22SgWTlR3zPFtI
 raFm8PmFiSaNE86WPznoGYUzTlLPBoiRmsKse5c1JuDusHagyAH6MXkUwKBEJsU=
 =692C
 -----END PGP SIGNATURE-----
 

Revamp how source listing is produced so it works for inlined functions. (#599)

* Revamp how source listing is produced so it works for inlined functions.

Some other things improved due to these changes:
1. Produced output does not contain long runs of uninteresting source.
2. Speed of producing weblist page for a large binary goes from
   ~ 57s to ~ 5.5s.

* use keyed literals to satisfy extra checks

* Fix up file names for Windows (to use backslash instead of slash
as separator).

* Fix nil dereference when we attempt to close after encountering a missing object file

* Limit number of address ranges we process to avoid unbounded hangs

Stop printing address ranges after processing 25 of them. These ranges
are sorted by the number of samples that fell within them.

Change back to printing inner-most file:line next to an instruction
to reduce caller/callee confusion.

* Fix comment typo

Co-authored-by: Alexey Alexandrov <aalexand@users.noreply.github.com>