aboutsummaryrefslogtreecommitdiff
path: root/bfd/elf64-alpha.c
diff options
context:
space:
mode:
authorMichael Meissner <gnu@the-meissners.org>1999-11-28 03:26:42 +0000
committerMichael Meissner <gnu@the-meissners.org>1999-11-28 03:26:42 +0000
commitfe174262ec809e88057406cdc87f243c04dba458 (patch)
tree721ea1786d92128ca9bb9ba12f755552b3db193c /bfd/elf64-alpha.c
parente4dabd0ef53d766ea2b01478cfabd989b5b77995 (diff)
downloadgdb-fe174262ec809e88057406cdc87f243c04dba458.zip
gdb-fe174262ec809e88057406cdc87f243c04dba458.tar.gz
gdb-fe174262ec809e88057406cdc87f243c04dba458.tar.bz2
Add new relocations for alpha explicit relocation support
Diffstat (limited to 'bfd/elf64-alpha.c')
-rw-r--r--bfd/elf64-alpha.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/bfd/elf64-alpha.c b/bfd/elf64-alpha.c
index 2a0cdb5..3a14bcc 100644
--- a/bfd/elf64-alpha.c
+++ b/bfd/elf64-alpha.c
@@ -972,6 +972,17 @@ static const struct elf_reloc_map elf64_alpha_reloc_map[] =
{BFD_RELOC_16_PCREL, R_ALPHA_SREL16},
{BFD_RELOC_32_PCREL, R_ALPHA_SREL32},
{BFD_RELOC_64_PCREL, R_ALPHA_SREL64},
+
+/* The BFD_RELOC_ALPHA_USER_* relocations are used by the assembler to process
+ the explicit !<reloc>!sequence relocations, and are mapped into the normal
+ relocations at the end of processing. */
+ {BFD_RELOC_ALPHA_USER_LITERAL, R_ALPHA_LITERAL},
+ {BFD_RELOC_ALPHA_USER_LITUSE_BASE, R_ALPHA_LITUSE},
+ {BFD_RELOC_ALPHA_USER_LITUSE_BYTOFF, R_ALPHA_LITUSE},
+ {BFD_RELOC_ALPHA_USER_LITUSE_JSR, R_ALPHA_LITUSE},
+ {BFD_RELOC_ALPHA_USER_GPDISP, R_ALPHA_GPDISP},
+ {BFD_RELOC_ALPHA_USER_GPRELHIGH, R_ALPHA_GPRELHIGH},
+ {BFD_RELOC_ALPHA_USER_GPRELLOW, R_ALPHA_GPRELLOW},
};
/* Given a BFD reloc type, return a HOWTO structure. */