simpleperf: fix reading jit debug descriptors.

Clang may generate elf files with segments not starting from
page-aligned addresses. For these segments, dynamic linker
creates maps mapping to (segment.p_offset & PAGE_MASK). So
map.start is mapped to file vaddr (segment.p_vaddr & PAGE_MASK)
instead of segment.p_vaddr.

So add PAGE_MASK when calculating memory address of descriptors,
using below formula:
descriptor.vaddr_in_file - (segment.p_vaddr & PAGE_MASK) + map.start.

Bug: 145920143
Bug: 145930241
Test: run simpleperf_unit_test.

Change-Id: Id185a6d6b766ecaa30b5067664687e556f92ef27
1 file changed