aboutsummaryrefslogtreecommitdiff
path: root/bfd/reloc.c
diff options
context:
space:
mode:
authorPaul Brook <paul@codesourcery.com>2004-08-06 16:18:11 +0000
committerPaul Brook <paul@codesourcery.com>2004-08-06 16:18:11 +0000
commitdb6579d415fafa3833828f9528bc8d9525da3cd8 (patch)
treef0dc04dc5845967aab1b2f08fefbf2fc853c2007 /bfd/reloc.c
parentdeaa6723d2a35d46bc95cd4d7b295596893a158c (diff)
downloadgdb-db6579d415fafa3833828f9528bc8d9525da3cd8.zip
gdb-db6579d415fafa3833828f9528bc8d9525da3cd8.tar.gz
gdb-db6579d415fafa3833828f9528bc8d9525da3cd8.tar.bz2
bfd/
* elfarm-nabi.c (elf32_arm_howto_table): Add new EABI relocations. (elf32_arm_reloc_map): Add BFD_RELOC_ARM_RELABS32, BFD_RELOC_ARM_ROSEGREL32 and BFD_RELOC_ARM_SBREL32. * reloc.c: Add BFD_RELOC_ARM_RELABS32, BFD_RELOC_ARM_ROSEGREL32 and BFD_RELOC_ARM_SBREL32. * bfd-in2.h, bbfd.h: Regenerate. gas/ * config/tc-arm.c (md_apply_fix3, tc_gen_reloc, arm_parse_reloc): Handle new relocations. * include/elf/arm.h (elf_arm_reloc_type): Add new EABI relocations. gas/testsuite/ * gas/arm/pic.s,d: Test RELABS and SBREL relocations.
Diffstat (limited to 'bfd/reloc.c')
-rw-r--r--bfd/reloc.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/bfd/reloc.c b/bfd/reloc.c
index 74492f0..48166db 100644
--- a/bfd/reloc.c
+++ b/bfd/reloc.c
@@ -2608,6 +2608,19 @@ ENUMX
ENUMDOC
These relocs are only used within the ARM assembler. They are not
(at present) written to any object files.
+ENUM
+ BFD_RELOC_ARM_RELABS32
+ENUMDOC
+ Pc-relative or absolute relocation depending on target. Used for
+ entries in .init_array sections.
+ENUM
+ BFD_RELOC_ARM_ROSEGREL32
+ENUMDOC
+ Read-only segment base relative address.
+ENUM
+ BFD_RELOC_ARM_SBREL32
+ENUMDOC
+ Data segment base relative address.
ENUM
BFD_RELOC_SH_PCDISP8BY2