summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTDYa127 <a127a127@gmail.com>2011-06-15 03:14:09 +0800
committerTDYa127 <a127a127@gmail.com>2011-06-15 03:14:09 +0800
commitf1bac53ec8d1c561bb9c0d82577f8afb51cfc6b0 (patch)
treeca1e0b149d0dd1f81c29e492bd9e9ea6327f2b5a
parentf3f63d6ded54ea520f5066979b53c2356092692d (diff)
downloadlinkloader-f1bac53ec8d1c561bb9c0d82577f8afb51cfc6b0.tar.gz
Add ARM relocation type: R_ARM_ABS32.
I didn't test this relocation type.
-rw-r--r--include/impl/ELFObject.hxx7
1 files changed, 7 insertions, 0 deletions
diff --git a/include/impl/ELFObject.hxx b/include/impl/ELFObject.hxx
index 4f12866..7b80b5a 100644
--- a/include/impl/ELFObject.hxx
+++ b/include/impl/ELFObject.hxx
@@ -125,6 +125,13 @@ relocateARM(void *(*find_sym)(void *context, char const *name),
rsl_assert(0 && "Not implemented relocation type.");
break;
+ case 2: // R_ARM_ABS32
+ {
+ A = *inst;
+ *inst = (S+A);
+ }
+ break;
+
// FIXME: Predefine relocation codes.
case 28: // R_ARM_CALL
{