diff options
author | Ian Lance Taylor <ian@airs.com> | 1997-02-11 20:30:12 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@airs.com> | 1997-02-11 20:30:12 +0000 |
commit | a4183ba5c975bcaed9473184a0830d73ebd84487 (patch) | |
tree | 7a40ed37446c61c4141b555ad8ae197244ea1f98 | |
parent | 37404956b433bcbef387449d997a683be6f78369 (diff) | |
download | gdb-a4183ba5c975bcaed9473184a0830d73ebd84487.zip gdb-a4183ba5c975bcaed9473184a0830d73ebd84487.tar.gz gdb-a4183ba5c975bcaed9473184a0830d73ebd84487.tar.bz2 |
* elf32-mips.c (reloc_type): Add R_MIPS16_GPREL.
(elf_mips16_gprel_howto): New static variable.
(mips16_gprel_reloc): New static function.
(bfd_elf32_bfd_reloc_type_lookup): Handle BFD_RELOC_MIPS16_GPREL.
(mips_info_to_howto_rel): Handle R_MIPS16_GPREL.
(mips_elf_relocate_section): Handle R_MIPS16_GPREL.
* reloc.c (BFD_RELOC_MIPS16_GPREL): Define.
* bfd-in2.h, libbfd.h: Rebuild.
-rw-r--r-- | bfd/ChangeLog | 11 | ||||
-rw-r--r-- | bfd/bfd-in2.h | 3 | ||||
-rw-r--r-- | bfd/libbfd.h | 1 | ||||
-rw-r--r-- | bfd/reloc.c | 5 |
4 files changed, 20 insertions, 0 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index d9fe80d..e3f94ca 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,14 @@ +Tue Feb 11 15:27:32 1997 Ian Lance Taylor <ian@cygnus.com> + + * elf32-mips.c (reloc_type): Add R_MIPS16_GPREL. + (elf_mips16_gprel_howto): New static variable. + (mips16_gprel_reloc): New static function. + (bfd_elf32_bfd_reloc_type_lookup): Handle BFD_RELOC_MIPS16_GPREL. + (mips_info_to_howto_rel): Handle R_MIPS16_GPREL. + (mips_elf_relocate_section): Handle R_MIPS16_GPREL. + * reloc.c (BFD_RELOC_MIPS16_GPREL): Define. + * bfd-in2.h, libbfd.h: Rebuild. + start-sanitize-m32r Mon Feb 10 23:25:00 1997 Doug Evans <dje@seba.ricochet.net> diff --git a/bfd/bfd-in2.h b/bfd/bfd-in2.h index a092ba8..a14a170 100644 --- a/bfd/bfd-in2.h +++ b/bfd/bfd-in2.h @@ -1681,6 +1681,9 @@ simple reloc otherwise. */ /* The MIPS16 jump instruction. */ BFD_RELOC_MIPS16_JMP, +/* MIPS16 GP relative reloc. */ + BFD_RELOC_MIPS16_GPREL, + /* High 16 bits of 32-bit value; simple reloc. */ BFD_RELOC_HI16, diff --git a/bfd/libbfd.h b/bfd/libbfd.h index 2ba10f7..a373d72 100644 --- a/bfd/libbfd.h +++ b/bfd/libbfd.h @@ -638,6 +638,7 @@ static const char *const bfd_reloc_code_real_names[] = { "@@uninitialized@@", "BFD_RELOC_ALPHA_LINKAGE", "BFD_RELOC_MIPS_JMP", "BFD_RELOC_MIPS16_JMP", + "BFD_RELOC_MIPS16_GPREL", "BFD_RELOC_HI16", "BFD_RELOC_HI16_S", "BFD_RELOC_LO16", diff --git a/bfd/reloc.c b/bfd/reloc.c index 3cf9d73..81571b3 100644 --- a/bfd/reloc.c +++ b/bfd/reloc.c @@ -1962,6 +1962,11 @@ ENUMDOC The MIPS16 jump instruction. ENUM + BFD_RELOC_MIPS16_GPREL +ENUMDOC + MIPS16 GP relative reloc. + +ENUM BFD_RELOC_HI16 ENUMDOC High 16 bits of 32-bit value; simple reloc. |