This is an archive of the discontinued LLVM Phabricator instance.

Partial RelocVisitor support for Darwin
AbandonedPublic

Authored by loladiro on Jun 3 2014, 3:24 PM.

Details

Reviewers
echristo
Summary

This supports as much as I have a test case for. The other relocations should be straightforward, but I'd prefer somebody with an actual use case to do that.

This is issue #16675

There's also the issue that we have two different and disjoint implementations of the relocations for all file formats. One in RuntimeDyld and one here. It would be good to combine those.

Diff Detail

Event Timeline

loladiro updated this revision to Diff 10065.Jun 3 2014, 3:24 PM
loladiro retitled this revision from to Partial RelocVisitor support for Darwin.
loladiro updated this object.
loladiro edited the test plan for this revision. (Show Details)
loladiro added a reviewer: echristo.
loladiro added a subscriber: Unknown Object (MLST).
echristo edited edge metadata.Jun 6 2014, 3:30 PM

One small inline comment, but nothing for you to deal with. Passes the sniff test, but it needs a testcase?

-eric

include/llvm/Object/RelocVisitor.h
21

Boy do we need to unify some of these files...

Turns out that this relocation is always a noop in all cases I can think of that don't involve a linker (and the linker doesn't have support for this relocation), so I can't actually write a proper testcase. I've written to the mailing list about whether or not the noop behavior is correct and I'll revisit this afterwards. I did also find a small bug in this that I will fix once I hear back on what the expected behavior is.

loladiro updated this revision to Diff 10256.Jun 9 2014, 6:00 PM
loladiro edited edge metadata.

Per discussion on the mailing list, these relocations are essentially a noop. This implements them correctly but since LLVM never emits external relocations, I can't actually write a testcase.

loladiro abandoned this revision.May 4 2015, 1:30 PM