Specification: https://dmz-portal.mips.com/wiki/MIPS_O32_ABI_-_FR0_and_FR1_Interlinking include/ * elf/mips.h (PT_MIPS_ABIFLAGS, SHT_MIPS_ABIFLAGS): Define. (Val_GNU_MIPS_ABI_FP_OLD_64): Rename from Val_GNU_MIPS_ABI_FP_64. (Val_GNU_MIPS_ABI_FP_64): Redefine. (Val_GNU_MIPS_ABI_FP_XX): Define. (Elf_External_ABIFlags_v0, Elf_Internal_ABIFlags_v0): New structures. (AFL_REG_NONE, AFL_REG_32, AFL_REG_64, AFL_REG_128): Define. (AFL_ASE_DSP, AFL_ASE_DSPR2, AFL_ASE_EVA, AFL_ASE_MCU): Likewise. (AFL_ASE_MDMX, AFL_ASE_MIPS3D, AFL_ASE_MT, AFL_ASE_SMARTMIPS): Likewise. (AFL_ASE_VIRT, AFL_ASE_MSA, AFL_ASE_MIPS16): Likewise. (AFL_ASE_MICROMIPS, AFL_ASE_XPA): Likewise. (AFL_EXT_XLR, AFL_EXT_OCTEON2, AFL_EXT_OCTEONP): Likewise. (AFL_EXT_LOONGSON_3A, AFL_EXT_OCTEON, AFL_EXT_5900): Likewise. (AFL_EXT_4650, AFL_EXT_4010, AFL_EXT_4100, AFL_EXT_3900): Likewise. (AFL_EXT_10000, AFL_EXT_SB1, AFL_EXT_4111, AFL_EXT_4120): Likewise. (AFL_EXT_5400, AFL_EXT_5500, AFL_EXT_LOONGSON_2E): Likewise. (AFL_EXT_LOONGSON_2F): Likewise. (bfd_mips_elf_swap_abiflags_v0_in): Prototype. (bfd_mips_elf_swap_abiflags_v0_out): Likewise. (bfd_mips_isa_ext): Likewise. bfd/ * elfxx-mips.c (ABI_O32_P, MIPS_ELF_ABIFLAGS_SECTION_NAME_P): New macro. (mips_elf_obj_tdata): Add abiflags and abiflags_valid fields. (bfd_mips_elf_swap_abiflags_v0_in): New function. (bfd_mips_elf_swap_abiflags_v0_out): Likewise. (_bfd_mips_elf_section_from_shdr): Handle SHT_MIPS_ABIFLAGS. (_bfd_mips_elf_fake_sections): Likewise. (_bfd_mips_elf_always_size_sections): Handle .MIPS.abiflags. (_bfd_mips_elf_additional_program_headers): Account for new PT_MIPS_ABIFLAGS program header. (_bfd_mips_elf_modify_segment_map): Create PT_MIPS_ABIFLAGS segment and associate with .MIPS.abiflags. (_bfd_mips_elf_gc_mark_extra_sections): New function. (bfd_mips_isa_ext, update_mips_abiflags_isa): New static function. (infer_mips_abiflags): Likewise. (_bfd_mips_elf_final_link): Handle .MIPS.abiflags. (mips_32bit_flags_p): Moved higher. (mips_elf_merge_obj_attributes, _bfd_mips_fp_abi_string): Error checking for FP ABIs. (_bfd_mips_elf_merge_private_bfd_data): Restructure and add abiflags checks. Check EF_MIPS_FP64 flag consistency. (print_mips_ases, print_mips_isa_ext): New static function. (print_mips_fp_abi_value, get_mips_reg_size): Likewise. (_bfd_mips_elf_print_private_bfd_data): Display abiflags data. (_bfd_mips_post_process_headers): Set EI_ABIVERSION = 3 for Val_GNU_MIPS_ABI_FP_64 or Val_GNU_MIPS_ABI_FP_64A. * elfxx-mips.h (_bfd_mips_elf_gc_mark_extra_sections): New prototype. * elf32-mips.c (elf_backend_gc_mark_extra_sections): Implement. * elfn32-mips.c (elf_backend_gc_mark_extra_sections): Implement. * elf64-mips.c (elf_backend_gc_mark_extra_sections): Implement. binutils/ * readelf.c (get_mips_segment_type): Display name for PT_MIPS_ABIFLAGS. (get_mips_section_type_name): Display name for SHT_MIPS_ABIFLAGS. (display_mips_gnu_attribute): Abstracted fp abi printing to... (print_mips_fp_abi_value): New static function. Handle new FP ABIs. (print_mips_ases, print_mips_isa_ext): New static functions. (get_mips_reg_size): Likewise. (process_mips_specific): Display abiflags data. elfcpp/ * elfcpp.h (PT_MIPS_ABIFLAGS): New program header type. gas/ * config/tc-mips.c (mips_flags_frag): New static global. (struct mips_set_options): Add oddspreg field. (file_mips_opts, mips_opts): Initialize oddspreg. (ISA_HAS_ODD_SINGLE_FPR): Add CPU argument and update for R5900 and Loongson-3a. (enum options, md_longopts, md_parse_option): Add -mfpxx, -modd-spreg and -mno-odd-spreg options. (md_begin): Create .MIPS.abiflags section. (fpabi_incompatible_with, fpabi_requires): New static function. (check_fpabi): Likewise. (mips_check_options): Handle fp=xx and oddspreg restrictions. (file_mips_check_options): Set oddspreg by default for fp=xx. (mips_oddfpreg_ok): Re-write function. (check_regno): Check odd numbered registers regardless of FPR size. For fp != 32 use as_bad instead of as_warn. (match_float_constant): Rewrite check regarding FP register width. Add support for generating constants when MXHC1 is present. Handle fp=xx to comply with the ABI. (macro): Update M_LI_DD similarly to match_float_constant. Generate MTHC1 when available. Check that correct code can be generated for fp=xx and fp=64 ABIs. (parse_code_option, s_mipsset): Add fp=xx, oddspreg and nooddspreg options. (mips_convert_ase_flags): New static function. (mips_elf_final_processing): Use fpabi == Val_GNU_MIPS_ABI_FP_OLD_64 to determine when to add the EF_MIPS_FP64 flag. Populate the .MIPS.abiflags section. (md_mips_end): Update .gnu_attribute based on command line and .module as applicable. Use check_fpabi to ensure .gnu.attribute and command line/.module options are consistent. * doc/as.texinfo: Add missing -mgp64/-mfp64 options and document new -mfpxx, -modd-spreg and -mno-odd-spreg options. * doc/c-mips.texi: Document -mfpxx, -modd-spreg, -mno-odd-spreg, gnu_attribute values and FP ABIs. ld/ * emulparams/elf32bmip.sh: Add .MIPS.abiflags. * emulparams/elf32bmipn32-defs.sh: Likewise. * emulparams/elf64bmip-defs.sh: Likewise. opcodes/ * micromips-opc.c (COD, LCD) New macros. (cfc1, ctc1): Remove FP_S attribute. (dmfc1, mfc1, mfhc1): Add LCD attribute. (dmtc1, mtc1, mthc1): Add COD attribute. * mips-opc.c (cfc1, cftc1, ctc, cttc1): Remove FP_S attribute. binutils/testsuite/ * binutils-all/readelf.s: Account for .MIPS.abiflags and .gnu.attributes. * binutils-all/readelf.ss-tmips: Likewise. * binutils-all/strip-3.d: Likewise. gas/testsuite/ * gas/mips/attr-gnu-4-0.d: New. * gas/mips/attr-gnu-4-0.s: Likewise. * gas/mips/attr-gnu-4-1-mfp32.l: Likewise. * gas/mips/attr-gnu-4-1-mfp32.s: Likewise. * gas/mips/attr-gnu-4-1-mfp64.l: Likewise. * gas/mips/attr-gnu-4-1-mfp64.s: Likewise. * gas/mips/attr-gnu-4-1-mfpxx.s: Likewise. * gas/mips/attr-gnu-4-1-msingle-float.l: Likewise. * gas/mips/attr-gnu-4-1-msingle-float.s: Likewise. * gas/mips/attr-gnu-4-1-msoft-float.l: Likewise. * gas/mips/attr-gnu-4-1-msoft-float.s: Likewise. * gas/mips/attr-gnu-4-1.d: Likewise. * gas/mips/attr-gnu-4-1.s: Likewise. * gas/mips/attr-gnu-4-2-mdouble-float.l: Likewise. * gas/mips/attr-gnu-4-2-mdouble-float.s: Likewise. * gas/mips/attr-gnu-4-2-msoft-float.l: Likewise. * gas/mips/attr-gnu-4-2-msoft-float.s: Likewise. * gas/mips/attr-gnu-4-2.d: Likewise. * gas/mips/attr-gnu-4-2.s: Likewise. * gas/mips/attr-gnu-4-3-mhard-float.l: Likewise. * gas/mips/attr-gnu-4-3-mhard-float.s: Likewise. * gas/mips/attr-gnu-4-3.d: Likewise. * gas/mips/attr-gnu-4-3.s: Likewise. * gas/mips/attr-gnu-4-4.l: Likewise. * gas/mips/attr-gnu-4-4.s: Likewise. * gas/mips/attr-gnu-4-5-64.l: Likewise. * gas/mips/attr-gnu-4-5-64.s: Likewise. * gas/mips/attr-gnu-4-5.d: Likewise. * gas/mips/attr-gnu-4-5.l: Likewise. * gas/mips/attr-gnu-4-5.s: Likewise. * gas/mips/attr-gnu-4-6-64.l: Likewise. * gas/mips/attr-gnu-4-6-64.s: Likewise. * gas/mips/attr-gnu-4-6.d: Likewise. * gas/mips/attr-gnu-4-6.l: Likewise. * gas/mips/attr-gnu-4-6.s: Likewise. * gas/mips/attr-gnu-4-6-msingle-float.l: Likewise. * gas/mips/attr-gnu-4-6-msingle-float.s: Likewise. * gas/mips/attr-gnu-4-6-msoft-float.l: Likewise. * gas/mips/attr-gnu-4-6-msoft-float.s: Likewise. * gas/mips/attr-gnu-4-6-noodd.l: Likewise. * gas/mips/attr-gnu-4-6-noodd.s: Likewise. * gas/mips/attr-gnu-4-7-64.l: Likewise. * gas/mips/attr-gnu-4-7-64.s: Likewise. * gas/mips/attr-gnu-4-7-msingle-float.l: Likewise. * gas/mips/attr-gnu-4-7-msingle-float.s: Likewise. * gas/mips/attr-gnu-4-7-msoft-float.l: Likewise. * gas/mips/attr-gnu-4-7-msoft-float.s: Likewise. * gas/mips/attr-gnu-4-7-odd.l: Likewise. * gas/mips/attr-gnu-4-7-odd.s: Likewise. * gas/mips/attr-gnu-4-7.d: Likewise. * gas/mips/attr-gnu-4-7.l: Likewise. * gas/mips/attr-gnu-4-7.s: Likewise. * gas/mips/attr-none-double.d: Likewise. * gas/mips/attr-none-o32-fp64.d: Likewise. * gas/mips/attr-none-o32-fp64-nooddspreg.d * gas/mips/attr-none-o32-fpxx.d: Likewise. * gas/mips/attr-none-single-float.d: Likewise. * gas/mips/attr-none-soft-float.d: Likewise. * gas/mips/elf_arch_mips32r3.d: Likewise. * gas/mips/elf_arch_mips32r5.d: Likewise. * gas/mips/elf_arch_mips64r3.d: Likewise. * gas/mips/elf_arch_mips64r5.d: Likewise. * gas/mips/li-d.d: Likewise. * gas/mips/li-d.s: Likewise. * gas/mips/module-check-warn.l: Likewise. * gas/mips/module-check-warn.s: Likewise. * gas/mips/module-check.d: Likewise. * gas/mips/module-check.s: Likewise. * gas/mips/module-mfp32.d: Likewise. * gas/mips/module-mfp32.s: Likewise. * gas/mips/module-mfp64.d: Likewise. * gas/mips/module-mfp64.s: Likewise. * gas/mips/module-mfp64-noodd.d: Likewise. * gas/mips/module-mfp64-noodd.s: Likewise. * gas/mips/module-mfpxx.d: Likewise. * gas/mips/module-mfpxx.s: Likewise. * gas/mips/module-msingle-float.d: Likewise. * gas/mips/module-msingle-float.s: Likewise. * gas/mips/module-msoft-float.d: Likewise. * gas/mips/module-msoft-float.s: Likewise. * gas/mips/module-set-mfpxx.d: Likewise. * gas/mips/module-set-mfpxx.s: Likewise. * gas/mips/fpxx-oddfpreg.d: Likewise. * gas/mips/fpxx-oddfpreg.l: Likewise. * gas/mips/fpxx-oddfpreg.s: Likewise. * gas/mips/no-odd-spreg.d: Likewise. * gas/mips/odd-spreg.d: Likewise. * gas/elf/section2.e-mips: Adjust expected output. * gas/mips/attr-gnu-abi-fp-1.d: Likewise. * gas/mips/attr-gnu-abi-msa-1.d: Likewise. * gas/mips/call-nonpic-1.d: Likewise. * gas/mips/elf_arch_mips1.d: Likewise. * gas/mips/elf_arch_mips2.d: Likewise. * gas/mips/elf_arch_mips3.d: Likewise. * gas/mips/elf_arch_mips32.d: Likewise. * gas/mips/elf_arch_mips32r2.d: Likewise. * gas/mips/elf_arch_mips4.d: Likewise. * gas/mips/elf_arch_mips5.d: Likewise. * gas/mips/elf_arch_mips64.d: Likewise. * gas/mips/elf_arch_mips64r2.d: Likewise. * gas/mips/elf_ase_micromips-2.d: Likewise. * gas/mips/elf_ase_micromips.d: Likewise. * gas/mips/elf_ase_mips16-2.d: Likewise. * gas/mips/elf_ase_mips16.d: Likewise. * gas/mips/module-defer-warn1.d: Likewise. * gas/mips/module-override.d: Likewise. * gas/mips/n32-consec.d: Likewise. * gas/mips/nan-2008-1.d: Likewise. * gas/mips/nan-2008-2.d: Likewise. * gas/mips/nan-2008-3.d: Likewise. * gas/mips/nan-2008-4.d: Likewise. * gas/mips/nan-legacy-1.d: Likewise. * gas/mips/nan-legacy-2.d: Likewise. * gas/mips/nan-legacy-3.d: Likewise. * gas/mips/nan-legacy-4.d: Likewise. * gas/mips/nan-legacy-5.d: Likewise. * gas/mips/tmips16-e.d: Likewise. * gas/mips/tmips16-f.d: Likewise. * gas/mips/tmipsel16-e.d: Likewise. * gas/mips/tmipsel16-f.d: Likewise. * gas/testsuite/gas/mips/mips.exp: Add new tests. ld/testsuite/ * ld-mips-elf/abiflags-strip1-ph.d: New. * ld-mips-elf/abiflags-strip2-ph.d: Likewise. * ld-mips-elf/abiflags-strip3-ph.d: Likewise. * ld-mips-elf/abiflags-strip4-ph.d: Likewise. * ld-mips-elf/abiflags-strip5-ph.d: Likewise. * ld-mips-elf/abiflags-strip6-ph.d: Likewise. * ld-mips-elf/abiflags-strip7-ph.d: Likewise. * ld-mips-elf/abiflags-strip8-ph.d: Likewise. * ld-mips-elf/abiflags-strip9-ph.d: Likewise. * ld-mips-elf/attr-gnu-4-0-n32-ph.d: Likewise. * ld-mips-elf/attr-gnu-4-0-n64-ph.d: Likewise. * ld-mips-elf/attr-gnu-4-0-ph.d: Likewise. * ld-mips-elf/attr-gnu-4-06.d: Likewise. * ld-mips-elf/attr-gnu-4-07.d: Likewise. * ld-mips-elf/attr-gnu-4-08.d: Likewise. * ld-mips-elf/attr-gnu-4-1-n32-ph.d: Likewise. * ld-mips-elf/attr-gnu-4-1-n64-ph.d: Likewise. * ld-mips-elf/attr-gnu-4-1-ph.d: Likewise. * ld-mips-elf/attr-gnu-4-16.d: Likewise. * ld-mips-elf/attr-gnu-4-17.d: Likewise. * ld-mips-elf/attr-gnu-4-18.d: Likewise. * ld-mips-elf/attr-gnu-4-2-n32-ph.d: Likewise. * ld-mips-elf/attr-gnu-4-2-n64-ph.d: Likewise. * ld-mips-elf/attr-gnu-4-2-ph.d: Likewise. * ld-mips-elf/attr-gnu-4-26.d: Likewise. * ld-mips-elf/attr-gnu-4-27.d: Likewise. * ld-mips-elf/attr-gnu-4-28.d: Likewise. * ld-mips-elf/attr-gnu-4-3-n32-ph.d: Likewise. * ld-mips-elf/attr-gnu-4-3-n64-ph.d: Likewise. * ld-mips-elf/attr-gnu-4-3-ph.d: Likewise. * ld-mips-elf/attr-gnu-4-36.d: Likewise. * ld-mips-elf/attr-gnu-4-37.d: Likewise. * ld-mips-elf/attr-gnu-4-38.d: Likewise. * ld-mips-elf/attr-gnu-4-4-ph.d: Likewise. * ld-mips-elf/attr-gnu-4-46.d: Likewise. * ld-mips-elf/attr-gnu-4-47.d: Likewise. * ld-mips-elf/attr-gnu-4-48.d: Likewise. * ld-mips-elf/attr-gnu-4-5-ph.d: Likewise. * ld-mips-elf/attr-gnu-4-50.d: Likewise. * ld-mips-elf/attr-gnu-4-52.d: Likewise. * ld-mips-elf/attr-gnu-4-53.d: Likewise. * ld-mips-elf/attr-gnu-4-54.d: Likewise. * ld-mips-elf/attr-gnu-4-55.d: Likewise. * ld-mips-elf/attr-gnu-4-56.d: Likewise. * ld-mips-elf/attr-gnu-4-57.d: Likewise. * ld-mips-elf/attr-gnu-4-58.d: Likewise. * ld-mips-elf/attr-gnu-4-6-ph.d: Likewise. * ld-mips-elf/attr-gnu-4-6.s: Likewise. * ld-mips-elf/attr-gnu-4-60.d: Likewise. * ld-mips-elf/attr-gnu-4-61.d: Likewise. * ld-mips-elf/attr-gnu-4-62.d: Likewise. * ld-mips-elf/attr-gnu-4-63.d: Likewise. * ld-mips-elf/attr-gnu-4-64.d: Likewise. * ld-mips-elf/attr-gnu-4-65.d: Likewise. * ld-mips-elf/attr-gnu-4-66.d: Likewise. * ld-mips-elf/attr-gnu-4-67.d: Likewise. * ld-mips-elf/attr-gnu-4-68.d: Likewise. * ld-mips-elf/attr-gnu-4-7-ph.d: Likewise. * ld-mips-elf/attr-gnu-4-7.s: Likewise. * ld-mips-elf/attr-gnu-4-70.d: Likewise. * ld-mips-elf/attr-gnu-4-71.d: Likewise. * ld-mips-elf/attr-gnu-4-72.d: Likewise. * ld-mips-elf/attr-gnu-4-73.d: Likewise. * ld-mips-elf/attr-gnu-4-74.d: Likewise. * ld-mips-elf/attr-gnu-4-75.d: Likewise. * ld-mips-elf/attr-gnu-4-76.d: Likewise. * ld-mips-elf/attr-gnu-4-77.d: Likewise. * ld-mips-elf/attr-gnu-4-78.d: Likewise. * ld-mips-elf/attr-gnu-4-8.s: Likewise. * ld-mips-elf/attr-gnu-4-81.d: Likewise. * ld-mips-elf/empty.s: Likewise. * ld-mips-elf/attr-gnu-4-00.d: Adjust expected output. * ld-mips-elf/attr-gnu-4-01.d: Likewise. * ld-mips-elf/attr-gnu-4-02.d: Likewise. * ld-mips-elf/attr-gnu-4-03.d: Likewise. * ld-mips-elf/attr-gnu-4-04.d: Likewise. * ld-mips-elf/attr-gnu-4-05.d: Likewise. * ld-mips-elf/attr-gnu-4-10.d: Likewise. * ld-mips-elf/attr-gnu-4-11.d: Likewise. * ld-mips-elf/attr-gnu-4-14.d: Likewise. * ld-mips-elf/attr-gnu-4-15.d: Likewise. * ld-mips-elf/attr-gnu-4-2.s: Likewise. * ld-mips-elf/attr-gnu-4-20.d: Likewise. * ld-mips-elf/attr-gnu-4-22.d: Likewise. * ld-mips-elf/attr-gnu-4-24.d: Likewise. * ld-mips-elf/attr-gnu-4-25.d: Likewise. * ld-mips-elf/attr-gnu-4-3.s: Likewise. * ld-mips-elf/attr-gnu-4-30.d: Likewise. * ld-mips-elf/attr-gnu-4-33.d: Likewise. * ld-mips-elf/attr-gnu-4-34.d: Likewise. * ld-mips-elf/attr-gnu-4-35.d: Likewise. * ld-mips-elf/attr-gnu-4-40.d: Likewise. * ld-mips-elf/attr-gnu-4-41.d: Likewise. * ld-mips-elf/attr-gnu-4-42.d: Likewise. * ld-mips-elf/attr-gnu-4-43.d: Likewise. * ld-mips-elf/attr-gnu-4-44.d: Likewise. * ld-mips-elf/attr-gnu-4-45.d: Likewise. * ld-mips-elf/attr-gnu-4-5.s: Likewise. * ld-mips-elf/attr-gnu-4-51.d: Likewise. * ld-mips-elf/attr-gnu-8-00.d: Likewise. * ld-mips-elf/attr-gnu-8-01.d: Likewise. * ld-mips-elf/attr-gnu-8-02.d: Likewise. * ld-mips-elf/attr-gnu-8-10.d: Likewise. * ld-mips-elf/attr-gnu-8-11.d: Likewise. * ld-mips-elf/attr-gnu-8-20.d: Likewise. * ld-mips-elf/attr-gnu-8-22.d: Likewise. * ld-mips-elf/jalx-2.dd: Likewise. * ld-mips-elf/mips16-pic-1.gd: Likewise. * ld-mips-elf/mips16-pic-2.gd: Likewise. * ld-mips-elf/mips16-pic-3.gd: Likewise. * ld-mips-elf/mips16-pic-4a.gd: Likewise. * ld-mips-elf/multi-got-no-shared.d: Likewise. * ld-mips-elf/nan-2008.d: Likewise. * ld-mips-elf/nan-legacy.d: Rework test. * ld-mips-elf/pic-and-nonpic-3a.gd: Likewise. * ld-mips-elf/pic-and-nonpic-3b.gd: Likewise. * ld-mips-elf/pic-and-nonpic-5b.gd: Likewise. * ld-mips-elf/pic-and-nonpic-6.ld: Likewise. * ld-mips-elf/rel32-n32.d: Likewise. * ld-mips-elf/rel32-o32.d: Likewise. * ld-mips-elf/rel64.d: Likewise. * ld-mips-elf/tls-multi-got-1.r: Likewise. * ld-elf/group.ld: Discard .MIPS.abiflags and .gnu.attributes. * ld-elf/orphan-region.ld: Likewise. * ld-elf/orphan.ld: Likewise. * ld-mips-elf/compressed-plt-1.ld: Likewise. * ld-mips-elf/dyn-sec64.ld: Likewise. * ld-mips-elf/got-dump-1.ld: Likewise. * ld-mips-elf/got-dump-2.ld: Likewise. * ld-mips-elf/got-page-1.ld: Likewise. * ld-mips-elf/mips-dyn.ld: Likewise. * ld-mips-elf/mips-lib.ld: Likewise. * ld-mips-elf/pic-and-nonpic-3a.ld: Likewise. * ld-mips-elf/pic-and-nonpic-3b.ld: Likewise. * ld-mips-elf/pic-and-nonpic-4b.ld: Likewise. * ld-mips-elf/pic-and-nonpic-5b.ld: Likewise. * ld-mips-elf/region1.t: Likewise. * ld-mips-elf/stub-dynsym-1.ld: Likewise. * ld-mips-elf/tls-hidden3.ld: Likewise. * ld-mips-elf/vxworks1.ld: Likewise. * ld-scripts/overlay-size.t: Likewise. * ld-mips-elf/elf-rel-got-n32-embed.d: Remove .MIPS.abiflags from objects. * ld-mips-elf/elf-rel-got-n32.d: Likewise. * ld-mips-elf/elf-rel-got-n64-embed.d: Likewise. * ld-mips-elf/elf-rel-got-n64-linux.d: Likewise. * ld-mips-elf/elf-rel-got-n64.d: Likewise. * ld-mips-elf/elf-rel-xgot-n32.d: Likewise. * ld-mips-elf/elf-rel-xgot-n32-embed.d: Likewise. * ld-mips-elf/elf-rel-xgot-n64.d: Likewise. * ld-mips-elf/elf-rel-xgot-n64-linux.d: Likewise. * ld-mips-elf/elf-rel-xgot-n64-embed.d: Likewise. * ld-mips-elf/mips-elf.exp: Add new tests.
523 lines
19 KiB
Plaintext
523 lines
19 KiB
Plaintext
2014-07-29 Matthew Fortune <matthew.fortune@imgtec.com>
|
||
|
||
* micromips-opc.c (COD, LCD) New macros.
|
||
(cfc1, ctc1): Remove FP_S attribute.
|
||
(dmfc1, mfc1, mfhc1): Add LCD attribute.
|
||
(dmtc1, mtc1, mthc1): Add COD attribute.
|
||
* mips-opc.c (cfc1, cftc1, ctc, cttc1): Remove FP_S attribute.
|
||
|
||
2014-07-22 Sergey Guriev <sergey.s.guriev@intel.com>
|
||
Alexander Ivchenko <alexander.ivchenko@intel.com>
|
||
Maxim Kuznetsov <maxim.kuznetsov@intel.com>
|
||
Sergey Lega <sergey.s.lega@intel.com>
|
||
Anna Tikhonova <anna.tikhonova@intel.com>
|
||
Ilya Tocar <ilya.tocar@intel.com>
|
||
Andrey Turetskiy <andrey.turetskiy@intel.com>
|
||
Ilya Verbin <ilya.verbin@intel.com>
|
||
Kirill Yukhin <kirill.yukhin@intel.com>
|
||
Michael Zolotukhin <michael.v.zolotukhin@intel.com>
|
||
|
||
* i386-dis-evex.h: Updated.
|
||
* i386-dis.c (PREFIX enum): Add PREFIX_EVEX_0F54, PREFIX_EVEX_0F55,
|
||
PREFIX_EVEX_0F56, PREFIX_EVEX_0F57, PREFIX_EVEX_0F3A16,
|
||
PREFIX_EVEX_0F3A22, PREFIX_EVEX_0F3A50, PREFIX_EVEX_0F3A51,
|
||
PREFIX_EVEX_0F3A56, PREFIX_EVEX_0F3A57, PREFIX_EVEX_0F3A66,
|
||
PREFIX_EVEX_0F3A67.
|
||
(VEX_LEN enum): Add VEX_LEN_0F92_P_2, VEX_LEN_0F93_P_2,
|
||
VEX_W_0F92_P_2_LEN_0, VEX_W_0F93_P_2_LEN_0.
|
||
(VEX_W enum): Add EVEX_W_0F54_P_0, EVEX_W_0F54_P_2, EVEX_W_0F55_P_0,
|
||
EVEX_W_0F55_P_2, EVEX_W_0F56_P_0, EVEX_W_0F56_P_2, EVEX_W_0F57_P_0,
|
||
EVEX_W_0F57_P_2, EVEX_W_0F78_P_2, EVEX_W_0F79_P_2, EVEX_W_0F7A_P_2,
|
||
EVEX_W_0F7B_P_2, EVEX_W_0F3838_P_1, EVEX_W_0F3839_P_1,
|
||
EVEX_W_0F3A16_P_2, EVEX_W_0F3A22_P_2, EVEX_W_0F3A50_P_2,
|
||
EVEX_W_0F3A51_P_2, EVEX_W_0F3A56_P_2, EVEX_W_0F3A57_P_2,
|
||
EVEX_W_0F3A66_P_2, EVEX_W_0F3A67_P_2.
|
||
(prefix_table): Add entries for new instructions.
|
||
(vex_len_table): Ditto.
|
||
(vex_w_table): Ditto.
|
||
(OP_E_memory): Update xmmq_mode handling.
|
||
* i386-gen.c (cpu_flag_init): Add CPU_AVX512DQ_FLAGS.
|
||
(cpu_flags): Add CpuAVX512DQ.
|
||
* i386-init.h: Regenerared.
|
||
* i386-opc.h (CpuAVX512DQ): New.
|
||
(i386_cpu_flags): Add cpuavx512dq.
|
||
* i386-opc.tbl: Add AVX512DQ instructions.
|
||
* i386-tbl.h: Regenerate.
|
||
|
||
2014-07-22 Sergey Guriev <sergey.s.guriev@intel.com>
|
||
Alexander Ivchenko <alexander.ivchenko@intel.com>
|
||
Maxim Kuznetsov <maxim.kuznetsov@intel.com>
|
||
Sergey Lega <sergey.s.lega@intel.com>
|
||
Anna Tikhonova <anna.tikhonova@intel.com>
|
||
Ilya Tocar <ilya.tocar@intel.com>
|
||
Andrey Turetskiy <andrey.turetskiy@intel.com>
|
||
Ilya Verbin <ilya.verbin@intel.com>
|
||
Kirill Yukhin <kirill.yukhin@intel.com>
|
||
Michael Zolotukhin <michael.v.zolotukhin@intel.com>
|
||
|
||
* i386-dis-evex.h: Add new instructions (prefixes bellow).
|
||
* i386-dis.c (fetch_data): Add EdqwS, Edb, Edw, MaskBDE.
|
||
(enum): Add dqw_swap_mode, db_mode, dw_mode, mask_bd_mode, REG_EVEX_0F71.
|
||
(PREFIX enum): Add PREFIX_VEX_0F4A, PREFIX_VEX_0F99, PREFIX_VEX_0F3A31,
|
||
PREFIX_VEX_0F3A33, PREFIX_EVEX_0F60, PREFIX_EVEX_0F61, PREFIX_EVEX_0F63,
|
||
PREFIX_EVEX_0F64, PREFIX_EVEX_0F65, PREFIX_EVEX_0F67, PREFIX_EVEX_0F68,
|
||
PREFIX_EVEX_0F69, PREFIX_EVEX_0F6B, PREFIX_EVEX_0F71_REG_2, PREFIX_EVEX_0F71_REG_4,
|
||
PREFIX_EVEX_0F71_REG_6, PREFIX_EVEX_0F73_REG_3, PREFIX_EVEX_0F73_REG_7,
|
||
PREFIX_EVEX_0F74, PREFIX_EVEX_0F75, PREFIX_EVEX_0FC4, PREFIX_EVEX_0FC5,
|
||
PREFIX_EVEX_0FD1, PREFIX_EVEX_0FD5, PREFIX_EVEX_0FD8, PREFIX_EVEX_0FD9,
|
||
PREFIX_EVEX_0FDA, PREFIX_EVEX_0FDC, PREFIX_EVEX_0FDD, PREFIX_EVEX_0FDE,
|
||
PREFIX_EVEX_0FE0, PREFIX_EVEX_0FE1, PREFIX_EVEX_0FE3, PREFIX_EVEX_0FE4,
|
||
PREFIX_EVEX_0FE5, PREFIX_EVEX_0FE8, PREFIX_EVEX_0FE9, PREFIX_EVEX_0FEA,
|
||
PREFIX_EVEX_0FEC, PREFIX_EVEX_0FED, PREFIX_EVEX_0FEE, PREFIX_EVEX_0FF1,
|
||
PREFIX_EVEX_0FF5, PREFIX_EVEX_0FF6, PREFIX_EVEX_0FF8, PREFIX_EVEX_0FF9,
|
||
PREFIX_EVEX_0FFC, PREFIX_EVEX_0FFD, PREFIX_EVEX_0F3800, PREFIX_EVEX_0F3804,
|
||
PREFIX_EVEX_0F380B, PREFIX_EVEX_0F3810, PREFIX_EVEX_0F381C, PREFIX_EVEX_0F381D,
|
||
PREFIX_EVEX_0F3820, PREFIX_EVEX_0F3826, PREFIX_EVEX_0F382B, PREFIX_EVEX_0F3830,
|
||
PREFIX_EVEX_0F3838, PREFIX_EVEX_0F383C, PREFIX_EVEX_0F383E, PREFIX_EVEX_0F3866,
|
||
PREFIX_EVEX_0F3875, PREFIX_EVEX_0F3878, PREFIX_EVEX_0F3879, PREFIX_EVEX_0F387A,
|
||
PREFIX_EVEX_0F387B, PREFIX_EVEX_0F387D, PREFIX_EVEX_0F388D, PREFIX_EVEX_0F3A0F,
|
||
PREFIX_EVEX_0F3A14, PREFIX_EVEX_0F3A15, PREFIX_EVEX_0F3A20, PREFIX_EVEX_0F3A3E,
|
||
PREFIX_EVEX_0F3A3F, PREFIX_EVEX_0F3A42.
|
||
(VEX_LEN enum): Add VEX_LEN_0F41_P_2, VEX_LEN_0F42_P_2, VEX_LEN_0F44_P_2,
|
||
VEX_LEN_0F45_P_2, VEX_LEN_0F46_P_2, VEX_LEN_0F47_P_2, VEX_LEN_0F4A_P_0,
|
||
VEX_LEN_0F4A_P_2, VEX_LEN_0F4B_P_0, VEX_LEN_0F90_P_2, VEX_LEN_0F91_P_2,
|
||
VEX_LEN_0F92_P_3, VEX_LEN_0F93_P_3, VEX_LEN_0F98_P_2, VEX_LEN_0F99_P_0,
|
||
VEX_LEN_0F99_P_2, VEX_LEN_0F3A31_P_2, VEX_LEN_0F3A33_P_2, VEX_W_0F41_P_2_LEN_1,
|
||
VEX_W_0F42_P_2_LEN_1, VEX_W_0F44_P_2_LEN_0, VEX_W_0F45_P_2_LEN_1,
|
||
VEX_W_0F46_P_2_LEN_1, VEX_W_0F47_P_2_LEN_1, VEX_W_0F4A_P_0_LEN_1,
|
||
VEX_W_0F4A_P_2_LEN_1, VEX_W_0F4B_P_0_LEN_1, VEX_W_0F90_P_2_LEN_0,
|
||
VEX_W_0F91_P_2_LEN_0, VEX_W_0F92_P_3_LEN_0, VEX_W_0F93_P_3_LEN_0,
|
||
VEX_W_0F98_P_2_LEN_0, VEX_W_0F99_P_0_LEN_0, VEX_W_0F99_P_2_LEN_0,
|
||
VEX_W_0F3A31_P_2_LEN_0, VEX_W_0F3A33_P_2_LEN_0.
|
||
(VEX_W enum): Add EVEX_W_0F6B_P_2, EVEX_W_0F6F_P_3, EVEX_W_0F7F_P_3,
|
||
EVEX_W_0F3810_P_1, EVEX_W_0F3810_P_2, EVEX_W_0F3811_P_2, EVEX_W_0F3812_P_2,
|
||
EVEX_W_0F3820_P_1, EVEX_W_0F3826_P_1, EVEX_W_0F3826_P_2, EVEX_W_0F3828_P_1,
|
||
EVEX_W_0F3829_P_1, EVEX_W_0F382B_P_2, EVEX_W_0F3830_P_1, EVEX_W_0F3866_P_2,
|
||
EVEX_W_0F3875_P_2, EVEX_W_0F3878_P_2, EVEX_W_0F3879_P_2, EVEX_W_0F387A_P_2,
|
||
EVEX_W_0F387B_P_2, EVEX_W_0F387D_P_2, EVEX_W_0F388D_P_2, EVEX_W_0F3A3E_P_2,
|
||
EVEX_W_0F3A3F_P_2, EVEX_W_0F3A42_P_2.
|
||
(prefix_table): Add entries for new instructions.
|
||
(vex_table) : Ditto.
|
||
(vex_len_table): Ditto.
|
||
(vex_w_table): Ditto.
|
||
(intel_operand_size): Add db_mode, dw_mode, dqw_swap_mode,
|
||
mask_bd_mode handling.
|
||
(OP_E_register): Add dqw_swap_mode, dw_mode, db_mode, mask_bd_mode
|
||
handling.
|
||
(OP_E_memory): Add dqw_mode, dw_mode, dqw_swap_mode, dqb_mode, db_mode
|
||
handling.
|
||
(OP_G): Add db_mode, dw_mode, dqw_swap_mode, mask_bd_mode handling.
|
||
(OP_EX): Add dqw_swap_mode handling.
|
||
(OP_VEX): Add mask_bd_mode handling.
|
||
(OP_Mask): Add mask_bd_mode handling.
|
||
* i386-gen.c (cpu_flag_init): Add CPU_AVX512BW_FLAGS.
|
||
(cpu_flags): Add CpuAVX512BW.
|
||
* i386-init.h: Regenerated.
|
||
* i386-opc.h (CpuAVX512BW): New.
|
||
(i386_cpu_flags): Add cpuavx512bw.
|
||
* i386-opc.tbl: Add AVX512BW instructions.
|
||
* i386-tbl.h: Regenerate.
|
||
|
||
2014-07-22 Sergey Guriev <sergey.s.guriev@intel.com>
|
||
Alexander Ivchenko <alexander.ivchenko@intel.com>
|
||
Maxim Kuznetsov <maxim.kuznetsov@intel.com>
|
||
Sergey Lega <sergey.s.lega@intel.com>
|
||
Anna Tikhonova <anna.tikhonova@intel.com>
|
||
Ilya Tocar <ilya.tocar@intel.com>
|
||
Andrey Turetskiy <andrey.turetskiy@intel.com>
|
||
Ilya Verbin <ilya.verbin@intel.com>
|
||
Kirill Yukhin <kirill.yukhin@intel.com>
|
||
Michael Zolotukhin <michael.v.zolotukhin@intel.com>
|
||
|
||
* i386-opc.tbl: Add AVX512VL and AVX512CD instructions.
|
||
* i386-tbl.h: Regenerate.
|
||
|
||
2014-07-22 Sergey Guriev <sergey.s.guriev@intel.com>
|
||
Alexander Ivchenko <alexander.ivchenko@intel.com>
|
||
Maxim Kuznetsov <maxim.kuznetsov@intel.com>
|
||
Sergey Lega <sergey.s.lega@intel.com>
|
||
Anna Tikhonova <anna.tikhonova@intel.com>
|
||
Ilya Tocar <ilya.tocar@intel.com>
|
||
Andrey Turetskiy <andrey.turetskiy@intel.com>
|
||
Ilya Verbin <ilya.verbin@intel.com>
|
||
Kirill Yukhin <kirill.yukhin@intel.com>
|
||
Michael Zolotukhin <michael.v.zolotukhin@intel.com>
|
||
|
||
* i386-dis.c (intel_operand_size): Support 128/256 length in
|
||
vex_vsib_q_w_dq_mode.
|
||
(OP_E_memory): Add ymmq_mode handling, handle new broadcast.
|
||
* i386-gen.c (cpu_flag_init): Add CPU_AVX512VL_FLAGS.
|
||
(cpu_flags): Add CpuAVX512VL.
|
||
* i386-init.h: Regenerated.
|
||
* i386-opc.h (CpuAVX512VL): New.
|
||
(i386_cpu_flags): Add cpuavx512vl.
|
||
(BROADCAST_1TO4, BROADCAST_1TO2): Define.
|
||
* i386-opc.tbl: Add AVX512VL instructions.
|
||
* i386-tbl.h: Regenerate.
|
||
|
||
2014-07-20 Stefan Kristiansson <stefan.kristiansson@saunalahti.fi>
|
||
|
||
* or1k-desc.c, * or1k-desc.h, * or1k-opc.c, * or1k-opc.h,
|
||
* or1k-opinst.c: Regenerate.
|
||
|
||
2014-07-08 Ilya Tocar <ilya.tocar@intel.com>
|
||
|
||
* i386-dis-evex.h (EVEX_W_0F10_P_1_M_1): Fix vmovss.
|
||
(EVEX_W_0F10_P_3_M_1): Fix vmovsd.
|
||
|
||
2014-07-04 Alan Modra <amodra@gmail.com>
|
||
|
||
* configure.ac: Rename from configure.in.
|
||
* Makefile.in: Regenerate.
|
||
* config.in: Regenerate.
|
||
|
||
2014-07-04 Alan Modra <amodra@gmail.com>
|
||
|
||
* configure.in: Include bfd/version.m4.
|
||
(AC_INIT, AM_INIT_AUTOMAKE): Use modern form.
|
||
(BFD_VERSION): Delete.
|
||
* Makefile.am (CONFIG_STATUS_DEPENDENCIES): Remove bfd/configure.in.
|
||
* configure: Regenerate.
|
||
* Makefile.in: Regenerate.
|
||
|
||
2014-07-01 Barney Stratford <barney_stratford@fastmail.fm>
|
||
Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com>
|
||
Pitchumani Sivanupandi <pitchumani.s@atmel.com>
|
||
Soundararajan <Sounderarajan.D@atmel.com>
|
||
|
||
* avr-dis.c (avr_operand): Handle constraint j for 16 bit lds/sts.
|
||
(print_insn_avr): Do not select opcode if insn ISA is avrtiny and
|
||
machine is not avrtiny.
|
||
|
||
2014-06-26 Philippe De Muyter <phdm@macqel.be>
|
||
|
||
* or1k-desc.h (spr_field_masks): Add U suffix to the end of long
|
||
constants.
|
||
|
||
2014-06-12 Alan Modra <amodra@gmail.com>
|
||
|
||
* or1k-asm.c, * or1k-desc.c, * or1k-desc.h, * or1k-dis.c,
|
||
* or1k-ibld.c, * or1k-opc.c, * or1k-opc.h, * or1k-opinst.c: Regenerate.
|
||
|
||
2014-06-10 H.J. Lu <hongjiu.lu@intel.com>
|
||
|
||
* i386-dis.c (fwait_prefix): New.
|
||
(ckprefix): Set fwait_prefix.
|
||
(print_insn): Properly print prefixes before fwait.
|
||
|
||
2014-06-07 Alan Modra <amodra@gmail.com>
|
||
|
||
* ppc-opc.c (UISIGNOPT): Define and use with cmpli.
|
||
|
||
2014-06-05 Joel Brobecker <brobecker@adacore.com>
|
||
|
||
* Makefile.am (CONFIG_STATUS_DEPENDENCIES): Add dependency on
|
||
bfd's development.sh.
|
||
* Makefile.in, configure: Regenerate.
|
||
|
||
2014-06-03 Nick Clifton <nickc@redhat.com>
|
||
|
||
* msp430-dis.c (msp430_doubleoperand): Use extension_word to
|
||
decide when extended addressing is being used.
|
||
|
||
2014-06-02 Eric Botcazou <ebotcazou@adacore.com>
|
||
|
||
* sparc-opc.c (cas): Disable for LEON.
|
||
(casl): Likewise.
|
||
|
||
2014-05-20 Alan Modra <amodra@gmail.com>
|
||
|
||
* m68k-dis.c: Don't include setjmp.h.
|
||
|
||
2014-05-09 H.J. Lu <hongjiu.lu@intel.com>
|
||
|
||
* i386-dis.c (ADDR16_PREFIX): Removed.
|
||
(ADDR32_PREFIX): Likewise.
|
||
(DATA16_PREFIX): Likewise.
|
||
(DATA32_PREFIX): Likewise.
|
||
(prefix_name): Updated.
|
||
(print_insn): Simplify data and address size prefixes processing.
|
||
|
||
2014-05-08 Stefan Kristiansson <stefan.kristiansson@saunalahti.fi>
|
||
|
||
* or1k-desc.c: Regenerated.
|
||
* or1k-desc.h: Likewise.
|
||
* or1k-opc.c: Likewise.
|
||
* or1k-opc.h: Likewise.
|
||
* or1k-opinst.c: Likewise.
|
||
|
||
2014-05-07 Andrew Bennett <andrew.bennett@imgtec.com>
|
||
|
||
* mips-opc.c (mips_builtin_opcodes): Add MIPS32r5 eretnc instruction.
|
||
(I34): New define.
|
||
(I36): New define.
|
||
(I66): New define.
|
||
(I68): New define.
|
||
* mips-dis.c (mips_arch_choices): Add mips32r3, mips32r5, mips64r3 and
|
||
mips64r5.
|
||
(parse_mips_dis_option): Update MSA and virtualization support to
|
||
allow mips64r3 and mips64r5.
|
||
|
||
2014-05-07 Andrew Bennett <andrew.bennett@imgtec.com>
|
||
|
||
* mips-opc.c (G3): Remove I4.
|
||
|
||
2014-05-05 H.J. Lu <hongjiu.lu@intel.com>
|
||
|
||
PR binutils/16893
|
||
* i386-dis.c (twobyte_has_mandatory_prefix): New variable.
|
||
(end_codep): Likewise.
|
||
(mandatory_prefix): Likewise.
|
||
(active_seg_prefix): Likewise.
|
||
(ckprefix): Set active_seg_prefix to the active segment register
|
||
prefix.
|
||
(seg_prefix): Removed.
|
||
(get_valid_dis386): Use the last of PREFIX_REPNZ and PREFIX_REPZ
|
||
for prefix index. Ignore the index if it is invalid and the
|
||
mandatory prefix isn't required.
|
||
(print_insn): Set mandatory_prefix if the PREFIX_XXX prefix is
|
||
mandatory. Don't set PREFIX_REPZ/PREFIX_REPNZ/PREFIX_LOCK bits
|
||
in used_prefixes here. Don't print unused prefixes. Check
|
||
active_seg_prefix for the active segment register prefix.
|
||
Restore the DFLAG bit in sizeflag if the data size prefix is
|
||
unused. Check the unused mandatory PREFIX_XXX prefixes
|
||
(append_seg): Only print the segment register which gets used.
|
||
(OP_E_memory): Check active_seg_prefix for the segment register
|
||
prefix.
|
||
(OP_OFF): Likewise.
|
||
(OP_OFF64): Likewise.
|
||
(OP_DSreg): Set active_seg_prefix to PREFIX_DS if it is unset.
|
||
|
||
2014-05-02 H.J. Lu <hongjiu.lu@intel.com>
|
||
|
||
PR binutils/16886
|
||
* config.in: Regenerated.
|
||
* configure: Likewise.
|
||
* configure.in: Check if sigsetjmp is available.
|
||
* h8500-dis.c (private): Replace jmp_buf with OPCODES_SIGJMP_BUF.
|
||
(fetch_data): Replace longjmp with OPCODES_SIGLONGJMP.
|
||
(print_insn_h8500): Replace setjmp with OPCODES_SIGSETJMP.
|
||
* i386-dis.c (dis_private): Replace jmp_buf with OPCODES_SIGJMP_BUF.
|
||
(fetch_data): Replace longjmp with OPCODES_SIGLONGJMP.
|
||
(print_insn): Replace setjmp with OPCODES_SIGSETJMP.
|
||
* ns32k-dis.c (private): Replace jmp_buf with OPCODES_SIGJMP_BUF.
|
||
(fetch_data): Replace longjmp with OPCODES_SIGLONGJMP.
|
||
(print_insn_ns32k): Replace setjmp with OPCODES_SIGSETJMP.
|
||
* sysdep.h (OPCODES_SIGJMP_BUF): New macro.
|
||
(OPCODES_SIGSETJMP): Likewise.
|
||
(OPCODES_SIGLONGJMP): Likewise.
|
||
* vax-dis.c (private): Replace jmp_buf with OPCODES_SIGJMP_BUF.
|
||
(fetch_data): Replace longjmp with OPCODES_SIGLONGJMP.
|
||
(print_insn_vax): Replace setjmp with OPCODES_SIGSETJMP.
|
||
* xtensa-dis.c (dis_private): Replace jmp_buf with
|
||
OPCODES_SIGJMP_BUF.
|
||
(fetch_data): Replace longjmp with OPCODES_SIGLONGJMP.
|
||
(print_insn_xtensa): Replace setjmp with OPCODES_SIGSETJMP.
|
||
* z8k-dis.c(instr_data_s): Replace jmp_buf with OPCODES_SIGJMP_BUF.
|
||
(fetch_data): Replace longjmp with OPCODES_SIGLONGJMP.
|
||
(print_insn_z8k): Replace setjmp with OPCODES_SIGSETJMP.
|
||
|
||
2014-05-01 H.J. Lu <hongjiu.lu@intel.com>
|
||
|
||
PR binutils/16891
|
||
* i386-dis.c (print_insn): Handle prefixes before fwait.
|
||
|
||
2014-04-26 Alan Modra <amodra@gmail.com>
|
||
|
||
* po/POTFILES.in: Regenerate.
|
||
|
||
2014-04-23 Andrew Bennett <andrew.bennett@imgtec.com>
|
||
|
||
* mips-dis.c (mips_arch_choices): Update mips32r2 and mips64r2
|
||
to allow the MIPS XPA ASE.
|
||
(parse_mips_dis_option): Process the -Mxpa option.
|
||
* mips-opc.c (XPA): New define.
|
||
(mips_builtin_opcodes): Add MIPS XPA instructions and move the
|
||
locations of the ctc0 and cfc0 instructions.
|
||
|
||
2014-04-22 Christian Svensson <blue@cmd.nu>
|
||
|
||
* Makefile.am: Remove openrisc and or32 support. Add support for or1k.
|
||
* configure.in: Likewise.
|
||
* disassemble.c: Likewise.
|
||
* or1k-asm.c: New file.
|
||
* or1k-desc.c: New file.
|
||
* or1k-desc.h: New file.
|
||
* or1k-dis.c: New file.
|
||
* or1k-ibld.c: New file.
|
||
* or1k-opc.c: New file.
|
||
* or1k-opc.h: New file.
|
||
* or1k-opinst.c: New file.
|
||
* Makefile.in: Regenerate.
|
||
* configure: Regenerate.
|
||
* openrisc-asm.c: Delete.
|
||
* openrisc-desc.c: Delete.
|
||
* openrisc-desc.h: Delete.
|
||
* openrisc-dis.c: Delete.
|
||
* openrisc-ibld.c: Delete.
|
||
* openrisc-opc.c: Delete.
|
||
* openrisc-opc.h: Delete.
|
||
* or32-dis.c: Delete.
|
||
* or32-opc.c: Delete.
|
||
|
||
2014-04-04 Ilya Tocar <ilya.tocar@intel.com>
|
||
|
||
* i386-dis.c (rm_table): Add encls, enclu.
|
||
* i386-gen.c (cpu_flag_init): Add CPU_SE1_FLAGS,
|
||
(cpu_flags): Add CpuSE1.
|
||
* i386-opc.h (enum): Add CpuSE1.
|
||
(i386_cpu_flags): Add cpuse1.
|
||
* i386-opc.tbl: Add encls, enclu.
|
||
* i386-init.h: Regenerated.
|
||
* i386-tbl.h: Likewise.
|
||
|
||
2014-04-02 Anthony Green <green@moxielogic.com>
|
||
|
||
* moxie-opc.c (moxie_form1_opc_info): Add sign-extension
|
||
instructions, sex.b and sex.s.
|
||
|
||
2014-03-26 Jiong Wang <jiong.wang@arm.com>
|
||
|
||
* aarch64-dis.c (aarch64_ext_ldst_elemlist): Check H/S undefined
|
||
instructions.
|
||
|
||
2014-03-20 Ilya Tocar <ilya.tocar@intel.com>
|
||
|
||
* i386-opc.tbl: Change memory size for vgatherpf0qps, vgatherpf1qps,
|
||
vscatterpf0qps, vscatterpf1qps, vgatherqps, vpgatherqd, vpscatterqd,
|
||
vscatterqps.
|
||
* i386-tbl.h: Regenerate.
|
||
|
||
2014-03-19 Jose E. Marchesi <jose.marchesi@oracle.com>
|
||
|
||
* sparc-dis.c (v9_hpriv_reg_names): Names for %hstick_offset and
|
||
%hstick_enable added.
|
||
|
||
2014-03-19 Nick Clifton <nickc@redhat.com>
|
||
|
||
* rx-decode.opc (bwl): Allow for bogus instructions with a size
|
||
field of 3.
|
||
(sbwl, ubwl, SCALE): Likewise.
|
||
* rx-decode.c: Regenerate.
|
||
|
||
2014-03-12 Alan Modra <amodra@gmail.com>
|
||
|
||
* Makefile.in: Regenerate.
|
||
|
||
2014-03-05 Alan Modra <amodra@gmail.com>
|
||
|
||
Update copyright years.
|
||
|
||
2014-03-04 Heiher <r@hev.cc>
|
||
|
||
* mips-dis.c (mips_arch_choices): Usee ISA_MIPS64R2 for Loongson-3A.
|
||
|
||
2014-03-04 Richard Sandiford <rdsandiford@googlemail.com>
|
||
|
||
* mips-opc.c (mips_builtin_opcodes): Move the udi* instructions
|
||
so that they come after the Loongson extensions.
|
||
|
||
2014-03-03 Alan Modra <amodra@gmail.com>
|
||
|
||
* i386-gen.c (process_copyright): Emit copyright notice on one line.
|
||
|
||
2014-02-28 Alan Modra <amodra@gmail.com>
|
||
|
||
* msp430-decode.c: Regenerate.
|
||
|
||
2014-02-27 Jiong Wang <jiong.wang@arm.com>
|
||
|
||
* aarch64-tbl.h (aarch64_opcode_table): Replace IMM0 with
|
||
FPIMM0 for fcmeq, fcmgt, fcmge, fcmlt and fcmle.
|
||
|
||
2014-02-27 Yufeng Zhang <yufeng.zhang@arm.com>
|
||
|
||
* aarch64-opc.c (print_register_offset_address): Call
|
||
get_int_reg_name to prepare the register name.
|
||
|
||
2014-02-25 Ilya Tocar <ilya.tocar@intel.com>
|
||
|
||
* i386-opc.tbl: Remove wrong variant of vcvtps2ph
|
||
* i386-tbl.h: Regenerate.
|
||
|
||
2014-02-20 Ilya Tocar <ilya.tocar@intel.com>
|
||
|
||
* i386-gen.c (cpu_flag_init): Add CPU_PREFETCHWT1_FLAGS/
|
||
(cpu_flags): Add CpuPREFETCHWT1.
|
||
* i386-init.h: Regenerate.
|
||
* i386-opc.h (CpuPREFETCHWT1): New.
|
||
(i386_cpu_flags): Add cpuprefetchwt1.
|
||
* i386-opc.tbl: Cahnge CPU of prefetchwt1 from CpuAVX512PF to CpuPREFETCHWT1.
|
||
* i386-tbl.h: Regenerate.
|
||
|
||
2014-02-20 Ilya Tocar <ilya.tocar@intel.com>
|
||
|
||
* i386-opc.tbl: Change CPU of vptestnmq, vptestnmd from CpuAVX512CD,
|
||
to CpuAVX512F.
|
||
* i386-tbl.h: Regenerate.
|
||
|
||
2014-02-19 H.J. Lu <hongjiu.lu@intel.com>
|
||
|
||
* i386-gen.c (output_cpu_flags): Don't output trailing space.
|
||
(output_opcode_modifier): Likewise.
|
||
(output_operand_type): Likewise.
|
||
* i386-init.h: Regenerated.
|
||
* i386-tbl.h: Likewise.
|
||
|
||
2014-02-12 Ilya Tocar <ilya.tocar@intel.com>
|
||
|
||
* i386-dis.c (MOD enum): Add MOD_0FC7_REG_3, MOD_0FC7_REG_4,
|
||
MOD_0FC7_REG_5.
|
||
(PREFIX enum): Add PREFIX_0FAE_REG_7.
|
||
(reg_table): Add MOD_0FC7_REG_3, MOD_0FC7_REG_4 MOD_0FC7_REG_5.
|
||
(prefix_table): Add clflusopt.
|
||
(mod_table): Add xrstors, xsavec, xsaves.
|
||
* i386-gen.c (cpu_flag_init): Add CPU_CLFLUSHOPT_FLAGS,
|
||
CPU_XSAVES_FLAGS, CPU_XSAVEC_FLAGS.
|
||
(cpu_flags): Add CpuClflushOpt, CpuXSAVES, CpuXSAVEC.
|
||
* i386-init.h: Regenerate.
|
||
* i386-opc.tbl: Add clflushopt, xrstors, xrstors64, xsaves,
|
||
xsaves64, xsavec, xsavec64.
|
||
* i386-tbl.h: Regenerate.
|
||
|
||
2014-02-10 Alan Modra <amodra@gmail.com>
|
||
|
||
* po/POTFILES.in: Regenerate.
|
||
* po/opcodes.pot: Regenerate.
|
||
|
||
2014-01-30 Michael Zolotukhin <michael.v.zolotukhin@gmail.com>
|
||
Jan Beulich <jbeulich@suse.com>
|
||
|
||
PR binutils/16490
|
||
* i386-dis.c (OP_E_memory): Fix shift computation for
|
||
vex_vsib_q_w_dq_mode.
|
||
|
||
2014-01-09 Bradley Nelson <bradnelson@google.com>
|
||
Roland McGrath <mcgrathr@google.com>
|
||
|
||
* i386-dis.c (print_insn): Do not touch all_prefixes[-1] when
|
||
last_rex_prefix is -1.
|
||
|
||
2014-01-08 H.J. Lu <hongjiu.lu@intel.com>
|
||
|
||
* i386-gen.c (process_copyright): Update copyright year to 2014.
|
||
|
||
2014-01-03 Maciej W. Rozycki <macro@codesourcery.com>
|
||
|
||
* nds32-asm.c (parse_operand): Fix out-of-range integer constant.
|
||
|
||
For older changes see ChangeLog-2013
|
||
|
||
Copyright (C) 2014 Free Software Foundation, Inc.
|
||
|
||
Copying and distribution of this file, with or without modification,
|
||
are permitted in any medium without royalty provided the copyright
|
||
notice and this notice are preserved.
|
||
|
||
Local Variables:
|
||
mode: change-log
|
||
left-margin: 8
|
||
fill-column: 74
|
||
version-control: never
|
||
End:
|