peter.smith added a comment. Your solution is the same way that R_ARM_PREL31 is handled in lld, so this looks fine from a correctness point of view. I'm not familiar with this area so I think you'll need approval from a maintainer, they may also insist on a test being written. https://reviews.llvm.org/D25069