Alter how relocation packing cuts holes from libchrome.so.
The current ELF file rewrite alters both offsets and addresses. Altering addresses affects debugging tools such as breakpad. This change leaves addresses unchanged, and instead splits a single LOAD segment into two, leaving a mapping hole at the point where the hole was created in the ELF file. It works by repurposing the PT_GNU_STACK segment, unused on Android. The split into two LOAD segments no longer requires relocation packing to adjust relocations or the symbol table, and in particular means the the call frame information extracted by Dwarf DIE data extractors for breakpad from an unstripped (and not packed) library will match the stripped and packed one. BUG=385553 Review URL: https://codereview.chromium.org/535943002 Cr-Commit-Position: refs/heads/master@{#294413}
Showing
This diff is collapsed.
No preview for this file type
No preview for this file type
Please register or sign in to comment