This is an archive of the discontinued LLVM Phabricator instance.

[COFF] Fix ARM and ARM64 REL32 relocations to be relative to the end of the relocation
ClosedPublic

Authored by mstorsjo on May 11 2021, 12:26 AM.

Details

Summary

This matches how they are defined on X86.

This should fix the relative lookup tables pass for COFF, allowing
it to be reenabled.

Diff Detail

Event Timeline

mstorsjo created this revision.May 11 2021, 12:26 AM
mstorsjo requested review of this revision.May 11 2021, 12:26 AM
Herald added a project: Restricted Project. · View Herald TranscriptMay 11 2021, 12:26 AM
mstorsjo updated this revision to Diff 344328.May 11 2021, 2:13 AM

Rebased, rerunning CI.

rnk accepted this revision.May 11 2021, 11:03 AM

lgtm

llvm/lib/MC/WinCOFFObjectWriter.cpp
837

This is kind of the same thing. There's probably a refactoring here, but not without lots of surgery to the comments.

This revision is now accepted and ready to land.May 11 2021, 11:03 AM
mstorsjo added inline comments.May 11 2021, 11:38 PM
llvm/lib/MC/WinCOFFObjectWriter.cpp
837

Yeah, I'm leaving that out as a potential future improvement.

This revision was landed with ongoing or failed builds.May 11 2021, 11:53 PM
This revision was automatically updated to reflect the committed changes.