Add new relocations for alpha explicit relocation support
This commit is contained in:
parent
e4dabd0ef5
commit
fe174262ec
5 changed files with 65 additions and 0 deletions
|
@ -1,3 +1,20 @@
|
|||
1999-11-27 Michael Meissner <meissner@cygnus.com>
|
||||
|
||||
* reloc.c (BFD_RELOC_ALPHA_USER_LITERAL): New relocation for
|
||||
internal use within gas for alpha explicit relocations.
|
||||
(BFD_RELOC_ALPHA_USER_LITUSE_BASE): Ditto.
|
||||
(BFD_RELOC_ALPHA_USER_LITUSE_BYTOFF): Ditto.
|
||||
(BFD_RELOC_ALPHA_USER_LITUSE_JSR): Ditto.
|
||||
(BFD_RELOC_ALPHA_USER_GPDISP): Ditto.
|
||||
(BFD_RELOC_ALPHA_USER_GPRELHIGH): Ditto.
|
||||
(BFD_RELOC_ALPHA_USER_GPRELLOW): Ditto.
|
||||
|
||||
* elf64-alpha.c (elf64_alpha_reloc_map): Add mappings for
|
||||
BFD_RELOC_ALPHA_USER_*.
|
||||
|
||||
* bfd-in2.h: Regenerate.
|
||||
* libbfd.h: Regenerate.
|
||||
|
||||
1999-11-26 Fred Fish <fnf@cygnus.com>
|
||||
|
||||
* elf.c (elfcore_read_notes): Add prototype for static function.
|
||||
|
|
|
@ -1830,6 +1830,17 @@ The GNU linker currently doesn't do any of this optimizing. */
|
|||
BFD_RELOC_ALPHA_ELF_LITERAL,
|
||||
BFD_RELOC_ALPHA_LITUSE,
|
||||
|
||||
/* 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,
|
||||
BFD_RELOC_ALPHA_USER_LITUSE_BASE,
|
||||
BFD_RELOC_ALPHA_USER_LITUSE_BYTOFF,
|
||||
BFD_RELOC_ALPHA_USER_LITUSE_JSR,
|
||||
BFD_RELOC_ALPHA_USER_GPDISP,
|
||||
BFD_RELOC_ALPHA_USER_GPRELHIGH,
|
||||
BFD_RELOC_ALPHA_USER_GPRELLOW,
|
||||
|
||||
/* The HINT relocation indicates a value that should be filled into the
|
||||
"hint" field of a jmp/jsr/ret instruction, for possible branch-
|
||||
prediction logic which may be provided on some processors. */
|
||||
|
|
|
@ -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. */
|
||||
|
|
|
@ -676,6 +676,13 @@ static const char *const bfd_reloc_code_real_names[] = { "@@uninitialized@@",
|
|||
"BFD_RELOC_ALPHA_LITERAL",
|
||||
"BFD_RELOC_ALPHA_ELF_LITERAL",
|
||||
"BFD_RELOC_ALPHA_LITUSE",
|
||||
"BFD_RELOC_ALPHA_USER_LITERAL",
|
||||
"BFD_RELOC_ALPHA_USER_LITUSE_BASE",
|
||||
"BFD_RELOC_ALPHA_USER_LITUSE_BYTOFF",
|
||||
"BFD_RELOC_ALPHA_USER_LITUSE_JSR",
|
||||
"BFD_RELOC_ALPHA_USER_GPDISP",
|
||||
"BFD_RELOC_ALPHA_USER_GPRELHIGH",
|
||||
"BFD_RELOC_ALPHA_USER_GPRELLOW",
|
||||
"BFD_RELOC_ALPHA_HINT",
|
||||
"BFD_RELOC_ALPHA_LINKAGE",
|
||||
"BFD_RELOC_ALPHA_CODEADDR",
|
||||
|
|
19
bfd/reloc.c
19
bfd/reloc.c
|
@ -1960,6 +1960,25 @@ ENUMDOC
|
|||
|
||||
The GNU linker currently doesn't do any of this optimizing.
|
||||
|
||||
ENUM
|
||||
BFD_RELOC_ALPHA_USER_LITERAL
|
||||
ENUMX
|
||||
BFD_RELOC_ALPHA_USER_LITUSE_BASE
|
||||
ENUMX
|
||||
BFD_RELOC_ALPHA_USER_LITUSE_BYTOFF
|
||||
ENUMX
|
||||
BFD_RELOC_ALPHA_USER_LITUSE_JSR
|
||||
ENUMX
|
||||
BFD_RELOC_ALPHA_USER_GPDISP
|
||||
ENUMX
|
||||
BFD_RELOC_ALPHA_USER_GPRELHIGH
|
||||
ENUMX
|
||||
BFD_RELOC_ALPHA_USER_GPRELLOW
|
||||
ENUMDOC
|
||||
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.
|
||||
|
||||
ENUM
|
||||
BFD_RELOC_ALPHA_HINT
|
||||
ENUMDOC
|
||||
|
|
Loading…
Reference in a new issue