llvm-project/bolt/lib
Maksim Panchenko 77b75ca53f [BOLT][perf2bolt] Fix base address calculation for shared objects
When processing profile data for shared object or PIE, perf2bolt needs
to calculate base address of the binary based on the map info reported
by the perf tool. When the mapping data provided is for the second
(or any other than the first) segment and the segment's file offset
does not match its memory offset, perf2bolt uses wrong assumption
about the binary base address.

Add a function to calculate binary base address using the reported
memory mapping and use the returned base for further address
adjustments.

Reviewed By: yota9

Differential Revision: https://reviews.llvm.org/D123755
2022-04-14 10:29:53 -07:00
..
Core [BOLT][perf2bolt] Fix base address calculation for shared objects 2022-04-14 10:29:53 -07:00
Passes [BOLT] Fix data race in shortenInstructions 2022-04-13 11:10:36 -07:00
Profile [BOLT][perf2bolt] Fix base address calculation for shared objects 2022-04-14 10:29:53 -07:00
Rewrite [BOLT] Ignore PC-relative relocations from data to data 2022-04-13 11:13:51 -07:00
RuntimeLibs [BOLT][NFC] Fix braces usage in the rest of the codebase 2021-12-28 18:43:53 -08:00
Target [BOLT][NFC] Move isADD64rr and isADDri out of MCPlusBuilder class 2022-04-05 14:32:07 -07:00
Utils [BOLT] Set cold sections alignment explicitly 2022-03-15 22:12:17 +03:00
CMakeLists.txt Rebase: [NFC] Refactor sources to be buildable in shared mode 2021-10-08 11:47:10 -07:00