simpleperf: add MapLocator for etm decoding.

Add MapLocator as a packet callback. It is then used
to find maps in MemAccess and InstrRangeParser.

MapLocator uses a separate cache for each trace id.
It also fix a bug that let a kernel map override
following user maps.

Bug: 151665001
Test: run simpleperf_unit_test.

Change-Id: Ic285f81ac05c3e65b481fb97a5355282639692e4
3 files changed