[AArch64] Add ARMv8.3 pointer authentication key registers
[deliverable/binutils-gdb.git] / opcodes / ChangeLog
index 3092e223200aa334d22edae08bf540e733754e96..5000976da561aa0cc54ccc59e1f9aae0b75e7019 100644 (file)
@@ -1,3 +1,243 @@
+2016-11-11  Szabolcs Nagy  <szabolcs.nagy@arm.com>
+
+       * aarch64-opc.c (aarch64_sys_regs): Add apiakeylo_el1, apiakeyhi_el1,
+       apibkeylo_el1, apibkeyhi_el1, apdakeylo_el1, apdakeyhi_el1,
+       apdbkeylo_el1, apdbkeyhi_el1, apgakeylo_el1 and apgakeyhi_el1.
+       (aarch64_sys_reg_supported_p): Add feature test for new registers.
+
+2016-11-11  Szabolcs Nagy  <szabolcs.nagy@arm.com>
+
+       * aarch64-tbl.h (aarch64_feature_v8_3, ARMV8_3, V8_3_INSN): New.
+       (arch64_opcode_table): Add xpaclri, pacia1716, pacib1716, autia1716,
+       autib1716, paciaz, paciasp, pacibz, pacibsp, autiaz, autiasp, autibz,
+       autibsp.
+       * aarch64-asm-2.c: Regenerate.
+       * aarch64-dis-2.c: Regenerate.
+
+2016-11-11  Szabolcs Nagy  <szabolcs.nagy@arm.com>
+
+       * aarch64-gen.c (find_alias_opcode): Increase max_num_aliases to 32.
+
+2016-11-09  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR binutils/20799
+       * i386-dis-evex.h (evex_table): Replace EdqwS with Edqw.
+       * i386-dis.c (EdqwS): Removed.
+       (dqw_swap_mode): Likewise.
+       (intel_operand_size): Don't check dqw_swap_mode.
+       (OP_E_register): Likewise.
+       (OP_E_memory): Likewise.
+       (OP_G): Likewise.
+       (OP_EX): Likewise.
+       * i386-opc.tbl: Remove "S" from EVEX vpextrw.
+       * i386-tbl.h: Regerated.
+
+2016-11-09  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * i386-opc.tbl: Merge AVX512F vmovq.
+       * i386-tbl.h: Regerated.
+
+2016-11-08  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR binutils/20701
+       * i386-dis.c (THREE_BYTE_0F7A): Removed.
+       (dis386_twobyte): Don't use THREE_BYTE_0F7A.
+       (three_byte_table): Remove THREE_BYTE_0F7A.
+
+2016-11-07  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR binutils/20775
+       * i386-dis.c (FGRPd9_2): Replace 0 with 1.
+       (FGRPd9_4): Replace 1 with 2.
+       (FGRPd9_5): Replace 2 with 3.
+       (FGRPd9_6): Replace 3 with 4.
+       (FGRPd9_7): Replace 4 with 5.
+       (FGRPda_5): Replace 5 with 6.
+       (FGRPdb_4): Replace 6 with 7.
+       (FGRPde_3): Replace 7 with 8.
+       (FGRPdf_4): Replace 8 with 9.
+       (fgrps): Add an entry for Bad_Opcode.
+
+2016-11-04  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * arc-opc.c (arc_flag_operands): Add F_DI14.
+       (arc_flag_classes): Add C_DI14.
+       * arc-nps400-tbl.h: Add new exc instructions.
+
+2016-11-03  Graham Markall  <graham.markall@embecosm.com>
+
+       * arc-dis.c (arc_insn_length): Return length 8 for instructions with
+       major opcode 0xa.
+       * arc-nps-400-tbl.h: Add dcmac instruction.
+       * arc-opc.c (arc_operands): Added operands for dcmac instruction.
+       (insert_nps_rbdouble_64): Added.
+       (extract_nps_rbdouble_64): Added.
+       (insert_nps_proto_size): Added.
+       (extract_nps_proto_size): Added.
+
+2016-11-03  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * arc-dis.c (struct arc_operand_iterator): Remove all fields
+       relating to long instruction processing, add new limm field.
+       (OPCODE): Rename to...
+       (OPCODE_32BIT_INSN): ...this.
+       (OPCODE_AC): Delete.
+       (skip_this_opcode): Handle different instruction lengths, update
+       macro name.
+       (special_flag_p): Update parameter type.
+       (find_format_from_table): Update for more instruction lengths.
+       (find_format_long_instructions): Delete.
+       (find_format): Update for more instruction lengths.
+       (arc_insn_length): Likewise.
+       (extract_operand_value): Update for more instruction lengths.
+       (operand_iterator_next): Remove code relating to long
+       instructions.
+       (arc_opcode_to_insn_type): New function.
+       (print_insn_arc):Update for more instructions lengths.
+       * arc-ext.c (extInstruction_t): Change argument type.
+       * arc-ext.h (extInstruction_t): Change argument type.
+       * arc-fxi.h: Change type unsigned to unsigned long long
+       extensively throughout.
+       * arc-nps400-tbl.h: Add long instructions taken from
+       arc_long_opcodes table in arc-opc.c.
+       * arc-opc.c: Update parameter types on insert/extract handlers.
+       (arc_long_opcodes): Delete.
+       (arc_num_long_opcodes): Delete.
+       (arc_opcode_len): Update for more instruction lengths.
+
+2016-11-03  Graham Markall  <graham.markall@embecosm.com>
+
+       * arc-dis.c (print_insn_arc): Swap highbyte and lowbyte.
+
+2016-11-03  Graham Markall  <graham.markall@embecosm.com>
+
+       * arc-dis.c (find_format_from_table): Replace use of ARC_SHORT
+       with arc_opcode_len.
+       (find_format_long_instructions): Likewise.
+       * arc-opc.c (arc_opcode_len): New function.
+
+2016-11-03  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * arc-nps400-tbl.h: Fix some instruction masks.
+
+2016-11-03  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * i386-dis.c (REG_82): Removed.
+       (X86_64_82_REG_0): Likewise.
+       (X86_64_82_REG_1): Likewise.
+       (X86_64_82_REG_2): Likewise.
+       (X86_64_82_REG_3): Likewise.
+       (X86_64_82_REG_4): Likewise.
+       (X86_64_82_REG_5): Likewise.
+       (X86_64_82_REG_6): Likewise.
+       (X86_64_82_REG_7): Likewise.
+       (X86_64_82): New.
+       (dis386): Use X86_64_82 instead of REG_82.
+       (reg_table): Remove REG_82.
+       (x86_64_table): Add X86_64_82.  Remove X86_64_82_REG_0,
+       X86_64_82_REG_1, X86_64_82_REG_2, X86_64_82_REG_3,
+       X86_64_82_REG_4, X86_64_82_REG_5, X86_64_82_REG_6 and
+       X86_64_82_REG_7.
+
+2016-11-03  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR binutils/20754
+       * i386-dis.c (REG_82): New.
+       (X86_64_82_REG_0): Likewise.
+       (X86_64_82_REG_1): Likewise.
+       (X86_64_82_REG_2): Likewise.
+       (X86_64_82_REG_3): Likewise.
+       (X86_64_82_REG_4): Likewise.
+       (X86_64_82_REG_5): Likewise.
+       (X86_64_82_REG_6): Likewise.
+       (X86_64_82_REG_7): Likewise.
+       (dis386): Use REG_82.
+       (reg_table): Add REG_82.
+       (x86_64_table): Add X86_64_82_REG_0, X86_64_82_REG_1,
+       X86_64_82_REG_2, X86_64_82_REG_3, X86_64_82_REG_4,
+       X86_64_82_REG_5, X86_64_82_REG_6 and X86_64_82_REG_7.
+
+2016-11-03  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * i386-dis.c (REG_82): Renamed to ...
+       (REG_83): This.
+       (dis386): Updated.
+       (reg_table): Likewise.
+
+2016-11-02  Igor Tsimbalist  <igor.v.tsimbalist@intel.com>
+
+       * i386-dis.c (enum): Add PREFIX_EVEX_0F3852, PREFIX_EVEX_0F3853.
+       * i386-dis-evex.h (evex_table): Updated.
+       * i386-gen.c (cpu_flag_init): Add CPU_AVX512_4VNNIW_FLAGS,
+       CPU_ANY_AVX512_4VNNIW_FLAGS. Update CPU_ANY_AVX512F_FLAGS.
+       (cpu_flags): Add CpuAVX512_4VNNIW.
+       * i386-opc.h (enum): (AVX512_4VNNIW): New.
+       (i386_cpu_flags): Add cpuavx512_4vnniw.
+       * i386-opc.tbl: Add Intel AVX512_4VNNIW instructions.
+       * i386-init.h: Regenerate.
+       * i386-tbl.h: Ditto.
+
+2016-11-02  Igor Tsimbalist  <igor.v.tsimbalist@intel.com>
+
+       * i386-dis.c. (enum): Add PREFIX_EVEX_0F389A,
+       PREFIX_EVEX_0F389B, PREFIX_EVEX_0F38AA, PREFIX_EVEX_0F38AB.
+       * i386-dis-evex.h (evex_table): Updated.
+       * i386-gen.c (cpu_flag_init): Add CPU_AVX512_4FMAPS_FLAGS,
+       CPU_ANY_AVX512_4FMAPS_FLAGS. Update CPU_ANY_AVX512F_FLAGS.
+       (cpu_flags): Add CpuAVX512_4FMAPS.
+       (opcode_modifiers): Add ImplicitQuadGroup modifier.
+       * i386-opc.h (AVX512_4FMAP): New.
+       (i386_cpu_flags): Add cpuavx512_4fmaps.
+       (ImplicitQuadGroup): New.
+       (i386_opcode_modifier): Add implicitquadgroup.
+       * i386-opc.tbl: Add Intel AVX512_4FMAPS instructions.
+       * i386-init.h: Regenerate.
+       * i386-tbl.h: Ditto.
+
+2016-11-01  Palmer Dabbelt  <palmer@dabbelt.com>
+           Andrew Waterman <andrew@sifive.com>
+
+       Add support for RISC-V architecture.
+       * configure.ac: Add entry for bfd_riscv_arch.
+       * configure: Regenerate.
+       * disassemble.c (disassembler): Add support for riscv.
+       (disassembler_usage): Likewise.
+       * riscv-dis.c: New file.
+       * riscv-opc.c: New file.
+
+2016-10-21  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * i386-dis.c (PREFIX_RM_0_0FAE_REG_7): Removed.
+       (prefix_table): Remove the PREFIX_RM_0_0FAE_REG_7 entry.
+       (rm_table): Update the RM_0FAE_REG_7 entry.
+       * i386-gen.c (cpu_flag_init): Remove CPU_PCOMMIT_FLAGS.
+       (cpu_flags): Remove CpuPCOMMIT.
+       * i386-opc.h (CpuPCOMMIT): Removed.
+       (i386_cpu_flags): Remove cpupcommit.
+       * i386-opc.tbl: Remove pcommit.
+       * i386-init.h: Regenerated.
+       * i386-tbl.h: Likewise.
+
+2016-10-20  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR binutis/20705
+       * i386-dis.c (get_valid_dis386): Ignore the REX_B bit and
+       the highest bit in VEX.vvvv for the 3-byte VEX prefix in
+       32-bit mode.  Don't check vex.register_specifier in 32-bit
+       mode.
+       (OP_VEX): Check for invalid mask registers.
+
+2016-10-18  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR binutis/20699
+       * i386-dis.c (OP_E_memory): Check addr32flag in stead of
+       sizeflag.
+
+2016-10-18  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR binutis/20704
+       * i386-dis.c (three_byte_table): Remove the remaining SSE5 support.
+
 2016-10-18  Maciej W. Rozycki  <macro@imgtec.com>
 
        * aarch64-dis.c (aarch64_ext_sve_addr_rr_lsl): Rename `index'
This page took 0.026483 seconds and 4 git commands to generate.