[RuntimeDyld] Add support for ELF R_ARM_REL32 and R_ARM_GOT_PREL.
authorLang Hames <lhames@gmail.com>
Fri, 19 Aug 2016 01:15:39 +0000 (01:15 +0000)
committerLang Hames <lhames@gmail.com>
Fri, 19 Aug 2016 01:15:39 +0000 (01:15 +0000)
commitb65f16c8e56bd88872ba1fa5740b8628b361dccd
tree0cc4cdc11868aecf600dd0409dae4534dbcdcc60
parent719238b7d3907182e5c1e325370a1b55dc438b2e
[RuntimeDyld] Add support for ELF R_ARM_REL32 and R_ARM_GOT_PREL.

Patch by William Dillon. Thanks William!

This patch adds support for the R_ARM_REL32 and R_ARM_GOT_PREL ELF ARM
relocations to RuntimeDyld, which should allow JITing of code that
produces these relocations.

No test case: Unfortunately RuntimeDyldELF's GOT building mechanism (which
uses a separate section for GOT entries) isn't compatible with
RuntimeDyldChecker. The correct fix for this is to fix RuntimeDyldELF's GOT
support (it's fundamentally broken at the moment: separate sections aren't
guaranteed to be in range of a GOT entry load), but that's a non-trivial job.

llvm-svn: 279182
llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp