Add support for MIPS R6.
[deliverable/binutils-gdb.git] / bfd / ChangeLog
index af83e3e1d70302ec7a3767b9ec4b0898c7cd7411..ca5f7b72757685c261bfaf430eba47e76f6bb16c 100644 (file)
@@ -1,3 +1,56 @@
+2014-09-15  Andrew Bennett  <andrew.bennett@imgtec.com>
+           Matthew Fortune  <matthew.fortune@imgtec.com>
+
+       * aoutx.h (NAME (aout, machine_type)): Add mips32r6 and mips64r6.
+       * archures.c (bfd_architecture): Likewise.
+       * bfd-in2.h (bfd_architecture): Likewise.
+       (bfd_reloc_code_real): Add relocs BFD_RELOC_MIPS_21_PCREL_S2,
+       BFD_RELOC_MIPS_26_PCREL_S2, BFD_RELOC_MIPS_18_PCREL_S3 and
+       BFD_RELOC_MIPS_19_PCREL_S2.
+       * cpu-mips.c (arch_info_struct): Add mips32r6 and mips64r6.
+       * elf32-mips.c: Define relocs R_MIPS_PC21_S2, R_MIPS_PC26_S2
+       R_MIPS_PC18_S3, R_MIPS_PC19_S2, R_MIPS_PCHI16 and R_MIPS_PCLO16.
+       (mips_reloc_map): Add entries for BFD_RELOC_MIPS_21_PCREL_S2,
+       BFD_RELOC_MIPS_26_PCREL_S2, BFD_RELOC_MIPS_18_PCREL_S3,
+       BFD_RELOC_MIPS_19_PCREL_S2, BFD_RELOC_HI16_S_PCREL and
+       BFD_RELOC_LO16_PCREL.
+       * elf64-mips.c: Define REL, and RELA relocations R_MIPS_PC21_S2,
+       R_MIPS_PC26_S2, R_MIPS_PC18_S3, R_MIPS_PC19_S2, R_MIPS_PCHI16
+       and R_MIPS_PCLO16.
+       (mips_reloc_map): Add entries for BFD_RELOC_MIPS_21_PCREL_S2,
+       BFD_RELOC_MIPS_26_PCREL_S2, BFD_RELOC_MIPS_18_PCREL_S3,
+       BFD_RELOC_MIPS_19_PCREL_S2, BFD_RELOC_HI16_S_PCREL and
+       BFD_RELOC_LO16_PCREL.
+       * elfn32-mips.c: Likewise.
+       * elfxx-mips.c (MIPSR6_P): New define.
+       (mipsr6_exec_plt_entry): New array.
+       (hi16_reloc_p): Add support for R_MIPS_PCHI16.
+       (lo16_reloc_p): Add support for R_MIPS_PCLO16.
+       (aligned_pcrel_reloc_p): New function.
+       (mips_elf_relocation_needs_la25_stub): Add support for relocs:
+       R_MIPS_PC21_S2 and R_MIPS_PC26_S2.
+       (mips_elf_calculate_relocation): Add support for relocs:
+       R_MIPS_PC21_S2, R_MIPS_PC26_S2, R_MIPS_PC18_S3, R_MIPS_PC19_S2,
+       R_MIPS_PCHI16 and R_MIPS_PCLO16.
+       (_bfd_elf_mips_mach): Add support for mips32r6 and mips64r6.
+       (mips_elf_add_lo16_rel_addend): Add support for R_MIPS_PCHI16.
+       (_bfd_mips_elf_check_relocs): Add support for relocs:
+       R_MIPS_PC21_S2 and R_MIPS_PC26_S2.
+       (_bfd_mips_elf_relocate_section): Add a check for unaligned
+       pc relative relocs.
+       (_bfd_mips_elf_finish_dynamic_symbol): Add support for MIPS r6
+       plt entry.
+       (mips_set_isa_flags): Add support for mips32r6 and mips64r6.
+       (_bfd_mips_elf_print_private_bfd_data): Likewise.
+       (mips_32bit_flags_p): Add support for mips32r6.
+       * libbfd.h (bfd_reloc_code_real_names): Add entries for
+       BFD_RELOC_MIPS_21_PCREL_S2, BFD_RELOC_MIPS_26_PCREL_S2,
+       BFD_RELOC_MIPS_18_PCREL_S3 and BFD_RELOC_MIPS_19_PCREL_S2.
+       * reloc.c: Document relocs BFD_RELOC_MIPS_21_PCREL_S2,
+       BFD_RELOC_MIPS_26_PCREL_S2, BFD_RELOC_MIPS_18_PCREL_S3 and
+       BFD_RELOC_MIPS_19_PCREL_S2.
+       * config.bfd: Add mips*-img-elf* target triple.
+
 2014-09-12  Andrew Bennett  <andrew.bennett@imgtec.com>
 
        * config.bfd: Add mips*-img-elf* target triple.
This page took 0.025166 seconds and 4 git commands to generate.