aboutsummaryrefslogtreecommitdiff
path: root/src/cmd/ld
diff options
context:
space:
mode:
authorShenghou Ma <minux.ma@gmail.com>2012-07-30 18:48:00 -0400
committerShenghou Ma <minux.ma@gmail.com>2012-07-30 18:48:00 -0400
commit9de61e7c8c779dafccbcd0242e06f92eb6f0e1ee (patch)
tree715ff2282e37ee54246ac4c11fb4ded7ddb5263b /src/cmd/ld
parentdd62bb4753147ff832eb769af892054fb1562c7c (diff)
downloadgo-9de61e7c8c779dafccbcd0242e06f92eb6f0e1ee.tar.xz
cmd/5l, cmd/ld: add support for R_ARM_GOT_PREL
Android NDK's gcc 4.6 generates this relocation for runtime/cgo. R=rsc CC=golang-dev https://golang.org/cl/6450056
Diffstat (limited to 'src/cmd/ld')
-rw-r--r--src/cmd/ld/elf.h1
-rw-r--r--src/cmd/ld/ldelf.c1
2 files changed, 2 insertions, 0 deletions
diff --git a/src/cmd/ld/elf.h b/src/cmd/ld/elf.h
index e319ad25b4..cfe1f9e53c 100644
--- a/src/cmd/ld/elf.h
+++ b/src/cmd/ld/elf.h
@@ -564,6 +564,7 @@ typedef struct {
#define R_ARM_PLT32 27 /* Add PC-relative PLT offset. */
#define R_ARM_CALL 28
#define R_ARM_V4BX 40
+#define R_ARM_GOT_PREL 96
#define R_ARM_GNU_VTENTRY 100
#define R_ARM_GNU_VTINHERIT 101
#define R_ARM_RSBREL32 250
diff --git a/src/cmd/ld/ldelf.c b/src/cmd/ld/ldelf.c
index 1f58573a68..df4c16275f 100644
--- a/src/cmd/ld/ldelf.c
+++ b/src/cmd/ld/ldelf.c
@@ -847,6 +847,7 @@ reltype(char *pn, int elftype, uchar *siz)
case R('5', R_ARM_REL32):
case R('5', R_ARM_CALL):
case R('5', R_ARM_V4BX):
+ case R('5', R_ARM_GOT_PREL):
case R('6', R_X86_64_PC32):
case R('6', R_X86_64_PLT32):
case R('6', R_X86_64_GOTPCREL):