summaryrefslogtreecommitdiffstats
path: root/linker/linker.c
diff options
context:
space:
mode:
authorThe Android Open Source Project <initial-contribution@android.com>2010-01-12 15:18:05 -0800
committerThe Android Open Source Project <initial-contribution@android.com>2010-01-12 15:18:05 -0800
commita809abb086b5cb5cd5545048b12f64b899c6a253 (patch)
tree72403af0ef4438c5d8974622bb9b98602879a7d8 /linker/linker.c
parent194d3fa048cf909ca592dd56fa538dc9cd3f5ddb (diff)
downloadbionic-a809abb086b5cb5cd5545048b12f64b899c6a253.zip
bionic-a809abb086b5cb5cd5545048b12f64b899c6a253.tar.gz
bionic-a809abb086b5cb5cd5545048b12f64b899c6a253.tar.bz2
android-2.1_r1 snapshot
Diffstat (limited to 'linker/linker.c')
-rw-r--r--linker/linker.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/linker/linker.c b/linker/linker.c
index 5090b11..80b5d00 100644
--- a/linker/linker.c
+++ b/linker/linker.c
@@ -1294,6 +1294,13 @@ static int reloc_library(soinfo *si, Elf32_Rel *rel, unsigned count)
reloc, sym_addr, sym_name);
*((unsigned*)reloc) += sym_addr;
break;
+ case R_ARM_REL32:
+ COUNT_RELOC(RELOC_RELATIVE);
+ MARK(rel->r_offset);
+ TRACE_TYPE(RELO, "%5d RELO REL32 %08x <- %08x - %08x %s\n", pid,
+ reloc, sym_addr, rel->r_offset, sym_name);
+ *((unsigned*)reloc) += sym_addr - rel->r_offset;
+ break;
#elif defined(ANDROID_X86_LINKER)
case R_386_JUMP_SLOT:
COUNT_RELOC(RELOC_ABSOLUTE);