simpleperf: create and use build_id_list in binary_cache.
When looking for a binary in binary_cache, we use path
<binary_cache_dir> / <path_on_device>. This is not suitable for
the kernel vmlinux, which doesn't have a path on device.
To support vmlinux, this CL does below changes:
1. In binary_cache_builder.py, create build_id_list file, which supports
finding a binary via its build id.
2. Add BinaryFinder class as a wrapper for finding binaries in
binary_cache. It uses both build_id_list and path on device.
3. Use BinaryFinder in report scripts.
Also add several related tests.
Bug: 186566291
Test: run scripts/test/test.py.
Change-Id: I74fd7dacdc4b42431797b7c2e293179e32ccb94b
12 files changed