diff options
| author | Michael Matz <matz@suse.de> | 2016-10-14 16:45:37 +0200 |
|---|---|---|
| committer | Michael Matz <matz@suse.de> | 2016-10-14 16:47:43 +0200 |
| commit | 7600b03f35a0178978e864c17abac9a5f3a24032 (patch) | |
| tree | ac1c7898da5f1cd880d4f55200790dfd1ea6ad76 /tccelf.c | |
| parent | c232af7ddbbf55055e0a47d9f0ca43dc6dd3d9de (diff) | |
| download | tinycc-7600b03f35a0178978e864c17abac9a5f3a24032.tar.gz tinycc-7600b03f35a0178978e864c17abac9a5f3a24032.tar.bz2 | |
arm64: Support PREL32 relocation
A PC-relative 32bit value is stored.
Diffstat (limited to 'tccelf.c')
| -rw-r--r-- | tccelf.c | 3 |
1 files changed, 3 insertions, 0 deletions
@@ -791,6 +791,9 @@ ST_FUNC void relocate_section(TCCState *s1, Section *s) case R_AARCH64_ABS32: write32le(ptr, val); break; + case R_AARCH64_PREL32: + write32le(ptr, val - addr); + break; case R_AARCH64_MOVW_UABS_G0_NC: write32le(ptr, ((read32le(ptr) & 0xffe0001f) | (val & 0xffff) << 5)); |
