Skip to content
Snippets Groups Projects
Commit 6e68317a authored by Jason Hiser's avatar Jason Hiser :tractor:
Browse files

Updated rodata scanner to skip pins without relocs in shared libs

Shared libs need a reloc for a code pointer to live in rodata.
I found in ffmpeg that many spurious pins were occuring because constant
(particularly with relatively small values) data looked like code poitners
(because the code's load point is address 0 in a shared library).

To avoid these spuriosu pins, I extended the code pin algorithm
to check isDLL() (which includes shared objects) and for a reloc
before attempting to pin in the rodata.

A perf. optimization verifies that it _might_ result in a pin
before checking for a reloc, as checking for a reloc can be slow,
while checking for a possible pin location is fast.
parent 53db4a96
No related branches found
No related tags found
No related merge requests found
Checking pipeline status
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment