summaryrefslogtreecommitdiff
path: root/bfd
diff options
context:
space:
mode:
Diffstat (limited to 'bfd')
-rw-r--r--bfd/ChangeLog9
-rw-r--r--bfd/bfd-in2.h1
-rw-r--r--bfd/elf32-arm.c1
-rw-r--r--bfd/libbfd.h1
-rw-r--r--bfd/reloc.c2
5 files changed, 14 insertions, 0 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 0172fdf800..d8af13c07a 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,12 @@
+2010-03-18 Wei Guozhi <carrot@google.com>
+
+ PR gas/11323
+ * elf32-arm.c (elf32_arm_reloc_map): Map BFD_RELOC_ARM_GOT_PREL to
+ R_ARM_GOT_PREL.
+ * reloc.c (BFD_RELOC_ARM_GOT_PREL): New ARM relocation.
+ * bfd-in2.h: Regenerate.
+ * libbfd.h: Regenerate.
+
2010-03-17 H.J. Lu <hongjiu.lu@intel.com>
* reloc.c (BFD_RELOC_SPU_PIC18): Removed.
diff --git a/bfd/bfd-in2.h b/bfd/bfd-in2.h
index c90ac2db24..31af74f917 100644
--- a/bfd/bfd-in2.h
+++ b/bfd/bfd-in2.h
@@ -3114,6 +3114,7 @@ pc-relative or some form of GOT-indirect relocation. */
BFD_RELOC_ARM_RELATIVE,
BFD_RELOC_ARM_GOTOFF,
BFD_RELOC_ARM_GOTPC,
+ BFD_RELOC_ARM_GOT_PREL,
/* ARM thread-local storage relocations. */
BFD_RELOC_ARM_TLS_GD32,
diff --git a/bfd/elf32-arm.c b/bfd/elf32-arm.c
index eede7ecbfb..6bd29f69c0 100644
--- a/bfd/elf32-arm.c
+++ b/bfd/elf32-arm.c
@@ -1721,6 +1721,7 @@ static const struct elf32_arm_reloc_map elf32_arm_reloc_map[] =
{BFD_RELOC_ARM_RELATIVE, R_ARM_RELATIVE},
{BFD_RELOC_ARM_GOTOFF, R_ARM_GOTOFF32},
{BFD_RELOC_ARM_GOTPC, R_ARM_GOTPC},
+ {BFD_RELOC_ARM_GOT_PREL, R_ARM_GOT_PREL},
{BFD_RELOC_ARM_GOT32, R_ARM_GOT32},
{BFD_RELOC_ARM_PLT32, R_ARM_PLT32},
{BFD_RELOC_ARM_TARGET1, R_ARM_TARGET1},
diff --git a/bfd/libbfd.h b/bfd/libbfd.h
index fa9d18760e..65cfccf89a 100644
--- a/bfd/libbfd.h
+++ b/bfd/libbfd.h
@@ -1330,6 +1330,7 @@ static const char *const bfd_reloc_code_real_names[] = { "@@uninitialized@@",
"BFD_RELOC_ARM_RELATIVE",
"BFD_RELOC_ARM_GOTOFF",
"BFD_RELOC_ARM_GOTPC",
+ "BFD_RELOC_ARM_GOT_PREL",
"BFD_RELOC_ARM_TLS_GD32",
"BFD_RELOC_ARM_TLS_LDO32",
"BFD_RELOC_ARM_TLS_LDM32",
diff --git a/bfd/reloc.c b/bfd/reloc.c
index 1974851d85..cacd0de00c 100644
--- a/bfd/reloc.c
+++ b/bfd/reloc.c
@@ -2936,6 +2936,8 @@ ENUMX
BFD_RELOC_ARM_GOTOFF
ENUMX
BFD_RELOC_ARM_GOTPC
+ENUMX
+ BFD_RELOC_ARM_GOT_PREL
ENUMDOC
Relocations for setting up GOTs and PLTs for shared libraries.