This is an archive of the discontinued LLVM Phabricator instance.

[LLD] [COFF] Add support for the new relocations IMAGE_REL_ARM{,64}_REL32
ClosedPublic

Authored by mstorsjo on Jan 26 2019, 12:46 PM.

Diff Detail

Repository
rL LLVM

Event Timeline

mstorsjo created this revision.Jan 26 2019, 12:46 PM
pcc accepted this revision.Jan 26 2019, 1:35 PM

LGTM

This revision is now accepted and ready to land.Jan 26 2019, 1:35 PM
mstorsjo updated this revision to Diff 183731.Jan 26 2019, 1:59 PM
mstorsjo retitled this revision from [LLD] [COFF] Add support for the new relocation IMAGE_REL_ARM64_REL32 to [LLD] [COFF] Add support for the new relocations IMAGE_REL_ARM{,64}_REL32.

Adding the same for IMAGE_REL_ARM_REL32 as well.

pcc added inline comments.Jan 26 2019, 2:07 PM
COFF/Chunks.cpp
201 ↗(On Diff #183731)

Are you sure that this is S and not SX?

mstorsjo marked 2 inline comments as done.Jan 26 2019, 2:18 PM
mstorsjo added inline comments.
COFF/Chunks.cpp
201 ↗(On Diff #183731)

Oh, great catch. Indeed, this should be SX, after crosschecking with link.exe.

mstorsjo updated this revision to Diff 183732.Jan 26 2019, 2:19 PM
mstorsjo marked an inline comment as done.

Using SX instead of S for the ARM relocation, extended the testcase with a relocation against a data section as well.

pcc accepted this revision.Jan 26 2019, 3:16 PM

LGTM

This revision was automatically updated to reflect the committed changes.