This is an archive of the discontinued LLVM Phabricator instance.

[LLD][ELF] Full patch for range thunks (not for review)
AbandonedPublic

Authored by peter.smith on Jun 26 2017, 10:41 AM.

Details

Reviewers
smeenai
Summary

This is the latest rebased Range Thunk implementation in full, with tests. The purpose of doing this is for a convenient way to (hopefully) get a downstream ARM lld that will not suffer from relocation out of range errors. This is not intended to be reviewed for upstream, instead it will need breaking up into smaller patches for review. I will abandon the review after it has been created.

It contains all the patches that are currently in review + everything that I haven't posted yet. I intend to post the individual patches for review later in the week (didn't have time today).

The initial implementation is intended to be simple rather than optimized for minimum number of thunks.

It has not been extensively tested on real-world programs, especially embedded programs with nasty linker scripts.

Diff Detail

Event Timeline

peter.smith created this revision.Jun 26 2017, 10:41 AM
peter.smith abandoned this revision.Jun 26 2017, 10:42 AM

Abandoning revision (this review is just to communicate work in progress)

smeenai edited edge metadata.Jun 26 2017, 11:16 AM

Thank you so much! This will be really helpful for me.

Rebased against TOT for Alessandro

peter.smith abandoned this revision.Nov 15 2017, 2:50 AM

The individual parts of this collective patch have been committed individually in D34034, D34035, D34036, D34037, D34344, D34345, D34688, D34690, D37743, D34689, D34691, D34692. Abandoning this review as it is no longer necessary.

test/ELF/arm-branch-rangethunk.s