This is an archive of the discontinued LLVM Phabricator instance.

[RuntimeDyld, PowerPC] Fix relocation detection overflow
ClosedPublic

Authored by uweigand on May 22 2017, 4:01 AM.

Details

Summary

Code in RuntimeDyldELF currently uses 32-bit temporaries to detect whether a PPC64 relocation target is out of range. This is incorrect, and can mis-detect overflow where the distance between relocation site and target is close to a multiple of 4GB. Fixed by using 64-bit temporaries.

Noticed while debugging PR32650.

Diff Detail

Event Timeline

uweigand created this revision.May 22 2017, 4:01 AM
hfinkel accepted this revision.May 22 2017, 7:32 AM

LGTM

This revision is now accepted and ready to land.May 22 2017, 7:32 AM
This revision was automatically updated to reflect the committed changes.