2015-07-14 15:39:12 +00:00
|
|
|
|
2015-07-14 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* configure: Regenerated.
|
|
|
|
|
|
Remove ppc860, ppc750cl, ppc7450 insns from common ppc.
Back in the day support for these processors was added, we probably
didn't want to waste PPC_OPCODE bits on minor variations. I've had a
complaint that disassembly of mfspr/mtspr was wrong for power8. This
patch fixes that problem.
Note that since -m860/-m850/-m821 are new gas options enabling the
mpc8xx specific mfspr/mtspr variants it is possible that this change
will break some mpc8xx assembly code. ie. you might need to modify
makefiles to pass -m860 to gas.
include/opcode/
* ppc.h (PPC_OPCODE_750, PPC_OPCODE_7450, PPC_OPCODE_860): Define.
opcodes/
* ppc-opc.c (PPC750, PPC7450, PPC860): Define using PPC_OPCODE_*.
* ppc-dis.c (ppc_opts): Add 821, 850 and 860 entries. Add
PPC_OPCODE_7450 to 7450 entry. Add PPC_OPCODE_750 to 750cl entry.
gas/
* config/tc-ppc.c (md_show_usage): Add -m821, -m850, -m860.
* doc/c-ppc.texi (PowerPC-Opts): Likewise.
gas/testsuite/
* gas/ppc/titan.d: Correct mfmcsrr0 disassembly.
2015-07-03 01:26:26 +00:00
|
|
|
|
2015-07-03 Alan Modra <amodra@gmail.com>
|
|
|
|
|
|
|
|
|
|
* ppc-opc.c (PPC750, PPC7450, PPC860): Define using PPC_OPCODE_*.
|
|
|
|
|
* ppc-dis.c (ppc_opts): Add 821, 850 and 860 entries. Add
|
|
|
|
|
PPC_OPCODE_7450 to 7450 entry. Add PPC_OPCODE_750 to 750cl entry.
|
|
|
|
|
|
Opcodes and assembler support for Nios II R2
2015-07-01 Sandra Loosemore <sandra@codesourcery.com>
Cesar Philippidis <cesar@codesourcery.com>
gas/
* config/tc-nios2.c (nios2_min_align): New.
(nop): Replace with....
(nop_r1, nop_r2, nop_r2_cdx, nop32, nop16): New.
(nios2_align): Handle alignment on 2-byte boundaries when CDX
instructions may be present.
(s_nios2_align): Adjust reference to nop.
(CDXBRANCH, IS_CDXBRANCH): New.
(CDX_UBRANCH_SUBTYPE, CDX_CBRANCH_SUBTYPE): New.
(nios2_relax_subtype_size): Handle 2-byte CDX branches.
(nios2_relax_frag): Likewise.
(md_convert_frag): Handle R2 encodings.
(nios2_check_overflow): Check that low-order bits are zero
before applying rightshift from howto.
(nios2_check_overflow): Correct negative overflow calculation.
(nios2_diagnose_overflow): Handle signed_immed12_overflow. Issue
generic overflow messages for miscellaneous instruction formats.
(md_apply_fix): Recognize new R2 relocations. For pc_relative
relocations, store fixup in *valP.
(nios2_reglist_mask, nios2_reglist_dir): New.
(nios2_parse_reglist): New.
(nios2_parse_base_register): New.
(nios2_assemble_expression): Handle constant expressions designated
by BFD_RELOC_NONE.
(nios2_assemble_reg3): New.
(nios2_assemble_arg_c): Handle R2 instruction formats.
(nios2_assemble_arg_d): Likewise.
(nios2_assemble_arg_s): Likewise.
(nios2_assemble_arg_t): Likewise.
(nios2_assemble_arg_D): New.
(nios2_assemble_arg_S): New.
(nios2_assemble_arg_T): New.
(nios2_assemble_arg_i): Handle R2 instruction formats.
(nios2_assemble_arg_I): New.
(nios2_assemble_arg_u): Handle R2 instruction formats.
(nios2_assemble_arg_U): New.
(nios2_assemble_arg_V): New.
(nios2_assemble_arg_W): New.
(nios2_assemble_arg_X): New.
(nios2_assemble_arg_Y): New.
(nios2_assemble_arg_o): Handle R2 instruction formats.
(nios2_assemble_arg_O): New.
(nios2_assemble_arg_P): New.
(nios2_assemble_arg_j): Handle R2 instruction formats.
(nios2_assemble_arg_k): New.
(nios2_assemble_arg_l): Handle R2 instruction formats.
(nios2_assemble_arg_m): Likewise.
(nios2_assemble_arg_M): New.
(nios2_assemble_arg_N): New.
(nios2_assemble_arg_e): New.
(nios2_assemble_arg_f): New.
(nios2_assemble_arg_g): New.
(nios2_assemble_arg_h): New.
(nios2_assemble_arg_R): New.
(nios2_assemble_arg_B): New.
(nios2_assemble_args): Handle new argument letters.
(nios2_consume_arg): Likewise.
(nios2_translate_pseudo_insn): Avoid dereferencing null pointer
in error message.
(nios2_ps_insn_info_structs): Add nop.n.
(output_ubranch): Handle CDX branches.
(output_cbranch): Likewise.
(output_call): Handle R2 encodings.
(output_movia): Likewise.
(md_begin): Initialize nios2_min_align.
(md_assemble): Align to nios2_min_align. Adjust nios2_min_align
if a 16-bit instruction is seen.
(nios2_cons_align): Use appropriate nop pattern.
include/opcode/
* nios2.h (enum iw_format_type): Add R2 formats.
(enum overflow_type): Add signed_immed12_overflow and
enumeration_overflow for R2.
(struct nios2_opcode): Document new argument letters for R2.
(REG_3BIT, REG_LDWM, REG_POP): Define.
(includes): Include nios2r2.h.
(nios2_r2_opcodes, nios2_num_r2_opcodes): Declare.
(nios2_r2_asi_n_mappings, nios2_num_r2_asi_n_mappings): Declare.
(nios2_r2_shi_n_mappings, nios2_num_r2_shi_n_mappings): Declare.
(nios2_r2_andi_n_mappings, nios2_num_r2_andi_n_mappings): Declare.
(nios2_r2_reg3_mappings, nios2_num_r2_reg3_mappings): Declare.
(nios2_r2_reg_range_mappings, nios2_num_r2_reg_range_mappings):
Declare.
* nios2r2.h: New file.
opcodes/
* nios2-dis.c (nios2_extract_opcode): New.
(nios2_disassembler_state): New.
(nios2_find_opcode_hash): Use mach parameter to select correct
disassembler state.
(nios2_print_insn_arg): Extend to support new R2 argument letters
and formats.
(print_insn_nios2): Check for 16-bit instruction at end of memory.
* nios2-opc.c (nios2_builtin_regs): Add R2 register attributes.
(NIOS2_NUM_OPCODES): Rename to...
(NIOS2_NUM_R1_OPCODES): This.
(nios2_r2_opcodes): New.
(NIOS2_NUM_R2_OPCODES): New.
(nios2_num_r2_opcodes): New.
(nios2_r2_asi_n_mappings, nios2_num_r2_asi_n_mappings): New.
(nios2_r2_shi_n_mappings, nios2_num_r2_shi_n_mappings): New.
(nios2_r2_andi_n_mappings, nios2_num_r2_andi_n_mappings): New.
(nios2_r2_reg3_mappings, nios2_num_r2_reg3_mappings): New.
(nios2_r2_reg_range_mappings, nios2_num_r2_reg_range_mappings): New.
2015-07-01 23:08:03 +00:00
|
|
|
|
2015-07-01 Sandra Loosemore <sandra@codesourcery.com>
|
|
|
|
|
Cesar Philippidis <cesar@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* nios2-dis.c (nios2_extract_opcode): New.
|
|
|
|
|
(nios2_disassembler_state): New.
|
|
|
|
|
(nios2_find_opcode_hash): Use mach parameter to select correct
|
|
|
|
|
disassembler state.
|
|
|
|
|
(nios2_print_insn_arg): Extend to support new R2 argument letters
|
|
|
|
|
and formats.
|
|
|
|
|
(print_insn_nios2): Check for 16-bit instruction at end of memory.
|
|
|
|
|
* nios2-opc.c (nios2_builtin_regs): Add R2 register attributes.
|
|
|
|
|
(NIOS2_NUM_OPCODES): Rename to...
|
|
|
|
|
(NIOS2_NUM_R1_OPCODES): This.
|
|
|
|
|
(nios2_r2_opcodes): New.
|
|
|
|
|
(NIOS2_NUM_R2_OPCODES): New.
|
|
|
|
|
(nios2_num_r2_opcodes): New.
|
|
|
|
|
(nios2_r2_asi_n_mappings, nios2_num_r2_asi_n_mappings): New.
|
|
|
|
|
(nios2_r2_shi_n_mappings, nios2_num_r2_shi_n_mappings): New.
|
|
|
|
|
(nios2_r2_andi_n_mappings, nios2_num_r2_andi_n_mappings): New.
|
|
|
|
|
(nios2_r2_reg3_mappings, nios2_num_r2_reg3_mappings): New.
|
|
|
|
|
(nios2_r2_reg_range_mappings, nios2_num_r2_reg_range_mappings): New.
|
|
|
|
|
|
2015-06-30 06:41:52 +00:00
|
|
|
|
2015-06-30 Amit Pawar <Amit.Pawar@amd.com>
|
|
|
|
|
|
|
|
|
|
* i386-dis.c (OP_Mwaitx): New.
|
|
|
|
|
(rm_table): Add monitorx/mwaitx.
|
|
|
|
|
* i386-gen.c (cpu_flag_init): Add CpuMWAITX to CPU_BDVER4_FLAGS
|
|
|
|
|
and CPU_ZNVER1_FLAGS. Add CPU_MWAITX_FLAGS.
|
|
|
|
|
(operand_type_init): Add CpuMWAITX.
|
|
|
|
|
* i386-opc.h (CpuMWAITX): New.
|
|
|
|
|
(i386_cpu_flags): Add cpumwaitx.
|
|
|
|
|
* i386-opc.tbl: Add monitorx and mwaitx.
|
|
|
|
|
* i386-init.h: Regenerated.
|
|
|
|
|
* i386-tbl.h: Likewise.
|
|
|
|
|
|
2015-06-22 19:55:24 +00:00
|
|
|
|
2015-06-22 Peter Bergner <bergner@vnet.ibm.com>
|
|
|
|
|
|
|
|
|
|
* ppc-opc.c (insert_ls): Test for invalid LS operands.
|
|
|
|
|
(insert_esync): New function.
|
|
|
|
|
(LS, WC): Use insert_ls.
|
|
|
|
|
(ESYNC): Use insert_esync.
|
|
|
|
|
|
2015-06-22 15:53:27 +00:00
|
|
|
|
2015-06-22 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
* dis-buf.c (buffer_read_memory): Fail is stop_vma is set and the
|
|
|
|
|
requested region lies beyond it.
|
|
|
|
|
* bfin-dis.c (print_insn_bfin): Ignore sysop instructions when
|
|
|
|
|
looking for 32-bit insns.
|
|
|
|
|
* mcore-dis.c (print_insn_mcore): Disable stop_vma when reading
|
|
|
|
|
data.
|
|
|
|
|
* sh-dis.c (print_insn_sh): Likewise.
|
|
|
|
|
* tic6x-dis.c (print_insn_tic6x): Disable stop_vma when reading
|
|
|
|
|
blocks of instructions.
|
|
|
|
|
* vax-dis.c (print_insn_vax): Check that the requested address
|
|
|
|
|
does not clash with the stop_vma.
|
|
|
|
|
|
2015-06-19 22:17:07 +00:00
|
|
|
|
2015-06-19 Peter Bergner <bergner@vnet.ibm.com>
|
|
|
|
|
|
|
|
|
|
* ppc-dis.h (skip_optional_operands): Use ppc_optional_operand_value.
|
|
|
|
|
* ppc-opc.c (FXM4): Add non-zero optional value.
|
|
|
|
|
(TBR): Likewise.
|
|
|
|
|
(SXL): Likewise.
|
|
|
|
|
(insert_fxm): Handle new default operand value.
|
|
|
|
|
(extract_fxm): Likewise.
|
|
|
|
|
(insert_tbr): Likewise.
|
|
|
|
|
(extract_tbr): Likewise.
|
|
|
|
|
|
2015-06-16 13:15:54 +00:00
|
|
|
|
2015-06-16 Matthew Wahab <matthew.wahab@arm.com>
|
|
|
|
|
|
|
|
|
|
* arch64-opc.c (aarch64_sys_regs): Add "id_mmfr4_el1".
|
|
|
|
|
|
2015-06-16 12:35:33 +00:00
|
|
|
|
2015-06-16 Szabolcs Nagy <szabolcs.nagy@arm.com>
|
|
|
|
|
|
|
|
|
|
* arm-dis.c (print_insn_coprocessor): Avoid negative shift.
|
|
|
|
|
|
2015-06-12 20:06:07 +00:00
|
|
|
|
2015-06-12 Peter Bergner <bergner@vnet.ibm.com>
|
|
|
|
|
|
|
|
|
|
* ppc-opc.c: Add comment accidentally removed by old commit.
|
|
|
|
|
(MTMSRD_L): Delete.
|
|
|
|
|
|
2015-07-10 10:36:25 +00:00
|
|
|
|
2015-06-04 Peter Bergner <bergner@vnet.ibm.com>
|
|
|
|
|
|
|
|
|
|
* ppc-opc.c: (powerpc_opcodes) <hwsync>: New extended mnemonic.
|
|
|
|
|
|
2015-06-04 15:33:12 +00:00
|
|
|
|
2015-06-04 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR 18474
|
|
|
|
|
* msp430-dis.c (msp430_nooperands): Fix check for emulated insns.
|
|
|
|
|
|
2015-06-02 11:30:38 +00:00
|
|
|
|
2015-06-02 Matthew Wahab <matthew.wahab@arm.com>
|
|
|
|
|
|
|
|
|
|
* arm-dis.c (arm_opcodes): Add "setpan".
|
|
|
|
|
(thumb_opcodes): Add "setpan".
|
|
|
|
|
|
2015-06-02 11:24:24 +00:00
|
|
|
|
2015-06-02 Matthew Wahab <matthew.wahab@arm.com>
|
|
|
|
|
|
|
|
|
|
* arm-dis.c (select_arm_features): Rework to avoid used of redefined
|
|
|
|
|
macros.
|
|
|
|
|
|
2015-06-02 11:20:00 +00:00
|
|
|
|
2015-06-02 Matthew Wahab <matthew.wahab@arm.com>
|
|
|
|
|
|
|
|
|
|
* aarch64-tbl.h (aarch64_feature_rdma): New.
|
|
|
|
|
(RDMA): New.
|
|
|
|
|
(aarch64_opcode_table): Add "sqrmlah" and "sqrdmlsh" instructions.
|
|
|
|
|
* aarch64-asm-2.c: Regenerate.
|
|
|
|
|
* aarch64-dis-2.c: Regenerate.
|
|
|
|
|
* aarch64-opc-2.c: Regenerate.
|
|
|
|
|
|
2015-06-02 10:29:15 +00:00
|
|
|
|
2015-06-02 Matthew Wahab <matthew.wahab@arm.com>
|
|
|
|
|
|
|
|
|
|
* aarch64-tbl.h (aarch64_feature_lor): New.
|
|
|
|
|
(LOR): New.
|
|
|
|
|
(aarch64_opdocde_table): Add "ldlar", "ldlarb", "ldlarh", "stllr",
|
|
|
|
|
"stllrb", "stllrh".
|
|
|
|
|
* aarch64-asm-2.c: Regenerate.
|
|
|
|
|
* aarch64-dis-2.c: Regenerate.
|
|
|
|
|
* aarch64-opc-2.c: Regenerate.
|
|
|
|
|
|
2015-06-01 15:00:28 +00:00
|
|
|
|
2015-06-01 Matthew Wahab <matthew.wahab@arm.com>
|
|
|
|
|
|
|
|
|
|
* aarch64-opc.c (F_ARCHEXT): New.
|
|
|
|
|
(aarch64_sys_regs): Add "pan".
|
|
|
|
|
(aarch64_sys_reg_supported_p): New.
|
|
|
|
|
(aarch64_pstatefields): Add "pan".
|
|
|
|
|
(aarch64_pstatefield_supported_p): New.
|
|
|
|
|
|
2015-06-01 09:40:28 +00:00
|
|
|
|
2015-06-01 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* i386-tbl.h: Regenerate.
|
|
|
|
|
|
2015-06-01 07:51:28 +00:00
|
|
|
|
2015-06-01 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* i386-dis.c (print_insn): Swap rounding mode specifier and
|
|
|
|
|
general purpose register in Intel mode.
|
|
|
|
|
|
2015-06-01 07:50:00 +00:00
|
|
|
|
2015-06-01 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* i386-opc.tbl: New IntelSyntax entries for vcvt{,u}si2s{d,s}.
|
|
|
|
|
* i386-tbl.h: Regenerate.
|
|
|
|
|
|
2015-05-18 11:17:12 +00:00
|
|
|
|
2015-05-18 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* i386-opc.tbl: Remove Disp32 from AMD64 direct call/jmp.
|
|
|
|
|
* i386-init.h: Regenerated.
|
|
|
|
|
|
2015-05-15 16:47:39 +00:00
|
|
|
|
2015-05-15 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR binutis/18386
|
|
|
|
|
* i386-dis.c: Add comments for '@'.
|
|
|
|
|
(x86_64_table): Use '@' on call/jmp for X86_64_E8/X86_64_E9.
|
|
|
|
|
(enum x86_64_isa): New.
|
|
|
|
|
(isa64): Likewise.
|
|
|
|
|
(print_i386_disassembler_options): Add amd64 and intel64.
|
|
|
|
|
(print_insn): Handle amd64 and intel64.
|
|
|
|
|
(putop): Handle '@'.
|
|
|
|
|
(OP_J): Don't ignore the operand size prefix for AMD64 in 64-bit.
|
|
|
|
|
* i386-gen.c (cpu_flags): Add CpuAMD64 and CpuIntel64.
|
|
|
|
|
* i386-opc.h (AMD64): New.
|
|
|
|
|
(CpuIntel64): Likewise.
|
|
|
|
|
(i386_cpu_flags): Add cpuamd64 and cpuintel64.
|
|
|
|
|
* i386-opc.tbl: Add direct call/jmp with Disp16|Disp32 for AMD64.
|
|
|
|
|
Mark direct call/jmp without Disp16|Disp32 as Intel64.
|
|
|
|
|
* i386-init.h: Regenerated.
|
|
|
|
|
* i386-tbl.h: Likewise.
|
|
|
|
|
|
2015-05-15 01:57:50 +00:00
|
|
|
|
2015-05-14 Peter Bergner <bergner@vnet.ibm.com>
|
|
|
|
|
|
|
|
|
|
* ppc-opc.c (IH) New define.
|
|
|
|
|
(powerpc_opcodes) <wait>: Do not enable for POWER7.
|
|
|
|
|
<tlbie>: Add RS operand for POWER7.
|
|
|
|
|
<slbia>: Add IH operand for POWER6.
|
|
|
|
|
|
2015-05-11 21:20:37 +00:00
|
|
|
|
2015-05-11 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* opcodes/i386-opc.tbl (call): Remove Disp16|Disp32 from 64-bit
|
|
|
|
|
direct branch.
|
|
|
|
|
(jmp): Likewise.
|
|
|
|
|
* i386-tbl.h: Regenerated.
|
|
|
|
|
|
2015-05-11 17:47:55 +00:00
|
|
|
|
2015-05-11 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* configure.ac: Support bfd_iamcu_arch.
|
|
|
|
|
* disassemble.c (disassembler): Support bfd_iamcu_arch.
|
|
|
|
|
* i386-gen.c (cpu_flag_init): Add CPU_IAMCU_FLAGS and
|
|
|
|
|
CPU_IAMCU_COMPAT_FLAGS.
|
|
|
|
|
(cpu_flags): Add CpuIAMCU.
|
|
|
|
|
* i386-opc.h (CpuIAMCU): New.
|
|
|
|
|
(i386_cpu_flags): Add cpuiamcu.
|
|
|
|
|
* configure: Regenerated.
|
|
|
|
|
* i386-init.h: Likewise.
|
|
|
|
|
* i386-tbl.h: Likewise.
|
|
|
|
|
|
2015-05-13 11:33:45 +00:00
|
|
|
|
2015-05-08 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR binutis/18386
|
|
|
|
|
* i386-dis.c (X86_64_E8): New.
|
|
|
|
|
(X86_64_E9): Likewise.
|
|
|
|
|
Update comments on 'T', 'U', 'V'. Add comments for '^'.
|
|
|
|
|
(dis386): Replace callT/jmpT with X86_64_E8/X86_64_E9.
|
|
|
|
|
(x86_64_table): Add X86_64_E8 and X86_64_E9.
|
|
|
|
|
(mod_table): Replace {T|} with ^ on Jcall/Jmp.
|
|
|
|
|
(putop): Handle '^'.
|
|
|
|
|
(OP_J): Ignore the operand size prefix in 64-bit. Don't check
|
|
|
|
|
REX_W.
|
|
|
|
|
|
2015-04-30 19:25:49 +00:00
|
|
|
|
2015-04-30 DJ Delorie <dj@redhat.com>
|
|
|
|
|
|
|
|
|
|
* disassemble.c (disassembler): Choose suitable disassembler based
|
|
|
|
|
on E_ABI.
|
|
|
|
|
* rl78-decode.opc (rl78_decode_opcode): Take ISA parameter. Use
|
|
|
|
|
it to decode mul/div insns.
|
|
|
|
|
* rl78-decode.c: Regenerate.
|
|
|
|
|
* rl78-dis.c (print_insn_rl78): Rename to...
|
|
|
|
|
(print_insn_rl78_common): ...this, take ISA parameter.
|
|
|
|
|
(print_insn_rl78): New.
|
|
|
|
|
(print_insn_rl78_g10): New.
|
|
|
|
|
(print_insn_rl78_g13): New.
|
|
|
|
|
(print_insn_rl78_g14): New.
|
|
|
|
|
(rl78_get_disassembler): New.
|
|
|
|
|
|
2015-04-29 15:24:52 +00:00
|
|
|
|
2015-04-29 Nick Clifton <nickc@redhat.com>
|
|
|
|
|
|
|
|
|
|
* po/fr.po: Updated French translation.
|
|
|
|
|
|
2015-04-27 16:06:54 +00:00
|
|
|
|
2015-04-27 Peter Bergner <bergner@vnet.ibm.com>
|
|
|
|
|
|
|
|
|
|
* ppc-opc.c (DCBT_EO): New define.
|
|
|
|
|
(powerpc_opcodes) <lbarx>: Enable for POWER8 and later.
|
|
|
|
|
<lharx>: Likewise.
|
|
|
|
|
<stbcx.>: Likewise.
|
|
|
|
|
<sthcx.>: Likewise.
|
|
|
|
|
<waitrsv>: Do not enable for POWER7 and later.
|
|
|
|
|
<waitimpl>: Likewise.
|
|
|
|
|
<dcbt>: Default to the two operand form of the instruction for all
|
|
|
|
|
"old" cpus. For "new" cpus, use the operand ordering that matches
|
|
|
|
|
whether the cpu is server or embedded.
|
|
|
|
|
<dcbtst>: Likewise.
|
|
|
|
|
|
2015-04-27 08:29:16 +00:00
|
|
|
|
2015-04-27 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
|
|
|
|
|
|
|
|
|
|
* s390-opc.c: New instruction type VV0UU2.
|
|
|
|
|
* s390-opc.txt: Fix instruction types for VFCE, VLDE, VFSQ, WFK,
|
|
|
|
|
and WFC.
|
|
|
|
|
|
x86: disambiguate disassembly of certain AVX512 insns
Certain conversion operations as well as vfpclassp{d,s} are ambiguous
when the input operand is in memory and no broadcast is being used.
While in Intel mode this gets resolved by printing suitable operand
size modifiers, AT&T mode need mnemonic suffixes to be added.
gas/testsuite/
2015-04-23 Jan Beulich <jbeulich@suse.com>
* gas/i386/avx512dq.d: Add 'z' suffix to vfpclassp{d,s} non-
register, non-broadcast cases.
* gas/i386/x86-64-avx512dq.d: Likewise.
* gas/i386/avx512dq_vl.d: Add 'x' and 'y' suffixes to
vcvt{,u}qq2ps and vfpclassp{d,s} non-register, non-broadcast
cases.
* gas/i386/x86-64-avx512dq_vl.d: Likewise.
* gas/i386/avx512f_vl.d: Add 'x' and 'y' suffixes to
vcvt{,t}pd2{,u}dq and vcvtpd2ps non-register, non-broadcast
cases.
* gas/i386/x86-64-avx512f_vl.d: Likewise.
opcodes/
2015-04-23 Jan Beulich <jbeulich@suse.com>
* i386-dis.c (putop): Extend "XY" handling to AVX512. Handle "XZ".
* i386-dis-evex.h.c (vcvtpd2ps, vcvtqq2ps, vcvttpd2udq,
vcvtpd2udq, vcvtuqq2ps, vcvttpd2dq, vcvtpd2dq): Add %XY.
(vfpclasspd, vfpclassps): Add %XZ.
2015-04-23 14:42:40 +00:00
|
|
|
|
2015-04-23 Jan Beulich <jbeulich@suse.com>
|
|
|
|
|
|
|
|
|
|
* i386-dis.c (putop): Extend "XY" handling to AVX512. Handle "XZ".
|
|
|
|
|
* i386-dis-evex.h.c (vcvtpd2ps, vcvtqq2ps, vcvttpd2udq,
|
|
|
|
|
vcvtpd2udq, vcvtuqq2ps, vcvttpd2dq, vcvtpd2dq): Add %XY.
|
|
|
|
|
(vfpclasspd, vfpclassps): Add %XZ.
|
|
|
|
|
|
2015-04-15 22:58:45 +00:00
|
|
|
|
2015-04-15 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* i386-dis.c (PREFIX_UD_SHIFT): Removed.
|
|
|
|
|
(PREFIX_UD_REPZ): Likewise.
|
|
|
|
|
(PREFIX_UD_REPNZ): Likewise.
|
|
|
|
|
(PREFIX_UD_DATA): Likewise.
|
|
|
|
|
(PREFIX_UD_ADDR): Likewise.
|
|
|
|
|
(PREFIX_UD_LOCK): Likewise.
|
|
|
|
|
|
2015-04-15 18:28:16 +00:00
|
|
|
|
2015-04-15 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* i386-dis.c (prefix_requirement): Removed.
|
|
|
|
|
(print_insn): Don't set prefix_requirement. Check
|
|
|
|
|
dp->prefix_requirement instead of prefix_requirement.
|
|
|
|
|
|
2015-04-15 16:53:13 +00:00
|
|
|
|
2015-04-15 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
PR binutils/17898
|
|
|
|
|
* i386-dis.c (PREFIX_0FC7_REG_6): Renamed to ...
|
|
|
|
|
(PREFIX_MOD_0_0FC7_REG_6): This.
|
|
|
|
|
(PREFIX_MOD_3_0FC7_REG_6): New.
|
|
|
|
|
(PREFIX_MOD_3_0FC7_REG_7): Likewise.
|
|
|
|
|
(prefix_table): Replace PREFIX_0FC7_REG_6 with
|
|
|
|
|
PREFIX_MOD_0_0FC7_REG_6. Add PREFIX_MOD_3_0FC7_REG_6 and
|
|
|
|
|
PREFIX_MOD_3_0FC7_REG_7.
|
|
|
|
|
(mod_table): Replace PREFIX_0FC7_REG_6 with
|
|
|
|
|
PREFIX_MOD_0_0FC7_REG_6. Use PREFIX_MOD_3_0FC7_REG_6 and
|
|
|
|
|
PREFIX_MOD_3_0FC7_REG_7.
|
|
|
|
|
|
2015-04-15 16:24:45 +00:00
|
|
|
|
2015-04-15 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* i386-dis.c (PREFIX_MANDATORY_REPZ): Removed.
|
|
|
|
|
(PREFIX_MANDATORY_REPNZ): Likewise.
|
|
|
|
|
(PREFIX_MANDATORY_DATA): Likewise.
|
|
|
|
|
(PREFIX_MANDATORY_ADDR): Likewise.
|
|
|
|
|
(PREFIX_MANDATORY_LOCK): Likewise.
|
|
|
|
|
(PREFIX_MANDATORY): Likewise.
|
|
|
|
|
(PREFIX_UD_SHIFT): Set to 8
|
|
|
|
|
(PREFIX_UD_REPZ): Updated.
|
|
|
|
|
(PREFIX_UD_REPNZ): Likewise.
|
|
|
|
|
(PREFIX_UD_DATA): Likewise.
|
|
|
|
|
(PREFIX_UD_ADDR): Likewise.
|
|
|
|
|
(PREFIX_UD_LOCK): Likewise.
|
|
|
|
|
(PREFIX_IGNORED_SHIFT): New.
|
|
|
|
|
(PREFIX_IGNORED_REPZ): Likewise.
|
|
|
|
|
(PREFIX_IGNORED_REPNZ): Likewise.
|
|
|
|
|
(PREFIX_IGNORED_DATA): Likewise.
|
|
|
|
|
(PREFIX_IGNORED_ADDR): Likewise.
|
|
|
|
|
(PREFIX_IGNORED_LOCK): Likewise.
|
|
|
|
|
(PREFIX_OPCODE): Likewise.
|
|
|
|
|
(PREFIX_IGNORED): Likewise.
|
|
|
|
|
(Bad_Opcode): Replace PREFIX_MANDATORY with 0.
|
|
|
|
|
(dis386_twobyte): Replace PREFIX_MANDATORY with PREFIX_OPCODE.
|
|
|
|
|
(three_byte_table): Likewise.
|
|
|
|
|
(mod_table): Likewise.
|
|
|
|
|
(mandatory_prefix): Renamed to ...
|
|
|
|
|
(prefix_requirement): This.
|
|
|
|
|
(prefix_table): Replace PREFIX_MANDATORY with PREFIX_OPCODE.
|
|
|
|
|
Update PREFIX_90 entry.
|
|
|
|
|
(get_valid_dis386): Check prefix_requirement to see if a prefix
|
|
|
|
|
should be ignored.
|
|
|
|
|
(print_insn): Replace mandatory_prefix with prefix_requirement.
|
|
|
|
|
|
2015-04-15 16:44:03 +00:00
|
|
|
|
2015-04-15 Renlin Li <renlin.li@arm.com>
|
|
|
|
|
|
|
|
|
|
* arm-dis.c (thumb32_opcodes): Define 'D' format control code,
|
|
|
|
|
use it for ssat and ssat16.
|
|
|
|
|
(print_insn_thumb32): Add handle case for 'D' control code.
|
|
|
|
|
|
x86: Use individual prefix control for each opcode.
2015-04-06 Ilya Tocar <ilya.tocar@intel.com>
H.J. Lu <hongjiu.lu@intel.com>
* i386-dis-evex.h (evex_table): Fill prefix_requirement field.
* i386-dis.c (PREFIX_MANDATORY_REPZ, PREFIX_MANDATORY_REPNZ,
PREFIX_MANDATORY_DATA, PREFIX_MANDATORY_ADDR, PREFIX_MANDATORY_LOCK,
PREFIX_UD_SHIFT, PREFIX_UD_REPZ, REFIX_UD_REPNZ, PREFIX_UD_DATA,
PREFIX_UD_ADDR, PREFIX_UD_LOCK, PREFIX_OPTIONAL, PREFIX_MANDATORY):
Define.
(Bad_Opcode, FLOAT, DIS386, DIS386_PREFIX, THREE_BYTE_TABLE_PREFIX):
Fill prefix_requirement field.
(struct dis386): Add prefix_requirement field.
(dis386): Fill prefix_requirement field.
(dis386_twobyte): Ditto.
(twobyte_has_mandatory_prefix_: Remove.
(reg_table): Fill prefix_requirement field.
(prefix_table): Ditto.
(x86_64_table): Ditto.
(three_byte_table): Ditto.
(xop_table): Ditto.
(vex_table): Ditto.
(vex_len_table): Ditto.
(vex_w_table): Ditto.
(mod_table): Ditto.
(bad_opcode): Ditto.
(print_insn): Use prefix_requirement.
(FGRPd9_2, FGRPd9_4, FGRPd9_5, FGRPd9_6, FGRPd9_7, FGRPda_5, FGRPdb_4,
FGRPde_3, FGRPdf_4): Fill prefix_requirement field.
(float_reg): Ditto.
2015-04-06 16:33:01 +00:00
|
|
|
|
2015-04-06 Ilya Tocar <ilya.tocar@intel.com>
|
|
|
|
|
H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* i386-dis-evex.h (evex_table): Fill prefix_requirement field.
|
|
|
|
|
* i386-dis.c (PREFIX_MANDATORY_REPZ, PREFIX_MANDATORY_REPNZ,
|
|
|
|
|
PREFIX_MANDATORY_DATA, PREFIX_MANDATORY_ADDR, PREFIX_MANDATORY_LOCK,
|
|
|
|
|
PREFIX_UD_SHIFT, PREFIX_UD_REPZ, REFIX_UD_REPNZ, PREFIX_UD_DATA,
|
|
|
|
|
PREFIX_UD_ADDR, PREFIX_UD_LOCK, PREFIX_MANDATORY): Define.
|
|
|
|
|
(Bad_Opcode, FLOAT, DIS386, DIS386_PREFIX, THREE_BYTE_TABLE_PREFIX):
|
|
|
|
|
Fill prefix_requirement field.
|
|
|
|
|
(struct dis386): Add prefix_requirement field.
|
|
|
|
|
(dis386): Fill prefix_requirement field.
|
|
|
|
|
(dis386_twobyte): Ditto.
|
|
|
|
|
(twobyte_has_mandatory_prefix_: Remove.
|
|
|
|
|
(reg_table): Fill prefix_requirement field.
|
|
|
|
|
(prefix_table): Ditto.
|
|
|
|
|
(x86_64_table): Ditto.
|
|
|
|
|
(three_byte_table): Ditto.
|
|
|
|
|
(xop_table): Ditto.
|
|
|
|
|
(vex_table): Ditto.
|
|
|
|
|
(vex_len_table): Ditto.
|
|
|
|
|
(vex_w_table): Ditto.
|
|
|
|
|
(mod_table): Ditto.
|
|
|
|
|
(bad_opcode): Ditto.
|
|
|
|
|
(print_insn): Use prefix_requirement.
|
|
|
|
|
(FGRPd9_2, FGRPd9_4, FGRPd9_5, FGRPd9_6, FGRPd9_7, FGRPda_5, FGRPdb_4,
|
|
|
|
|
FGRPde_3, FGRPdf_4): Fill prefix_requirement field.
|
|
|
|
|
(float_reg): Ditto.
|
|
|
|
|
|
2015-03-30 05:40:09 +00:00
|
|
|
|
2015-03-30 Mike Frysinger <vapier@gentoo.org>
|
|
|
|
|
|
|
|
|
|
* d10v-opc.c (d10v_reg_name_cnt): Convert old style prototype.
|
|
|
|
|
|
2015-03-29 14:46:30 +00:00
|
|
|
|
2015-03-29 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* Makefile.in: Regenerated.
|
|
|
|
|
|
2015-03-25 02:44:28 +00:00
|
|
|
|
2015-03-25 Anton Blanchard <anton@samba.org>
|
|
|
|
|
|
|
|
|
|
* ppc-dis.c (disassemble_init_powerpc): Only initialise
|
|
|
|
|
powerpc_opcd_indices and vle_opcd_indices once.
|
|
|
|
|
|
2015-03-25 02:43:18 +00:00
|
|
|
|
2015-03-25 Anton Blanchard <anton@samba.org>
|
|
|
|
|
|
|
|
|
|
* ppc-opc.c (powerpc_opcodes): Add slbfee.
|
|
|
|
|
|
2015-03-24 06:08:08 +00:00
|
|
|
|
2015-03-24 Terry Guo <terry.guo@arm.com>
|
|
|
|
|
|
|
|
|
|
* arm-dis.c (opcode32): Updated to use new arm feature struct.
|
|
|
|
|
(opcode16): Likewise.
|
|
|
|
|
(coprocessor_opcodes): Replace bit with feature struct.
|
|
|
|
|
(neon_opcodes): Likewise.
|
|
|
|
|
(arm_opcodes): Likewise.
|
|
|
|
|
(thumb_opcodes): Likewise.
|
|
|
|
|
(thumb32_opcodes): Likewise.
|
|
|
|
|
(print_insn_coprocessor): Likewise.
|
|
|
|
|
(print_insn_arm): Likewise.
|
|
|
|
|
(select_arm_features): Follow new feature struct.
|
|
|
|
|
|
2015-03-17 16:19:15 +00:00
|
|
|
|
2015-03-17 Ganesh Gopalasubramanian <Ganesh.Gopalasubramanian@amd.com>
|
|
|
|
|
|
|
|
|
|
* i386-dis.c (rm_table): Add clzero.
|
|
|
|
|
* i386-gen.c (cpu_flag_init): Add new CPU_ZNVER1_FLAGS.
|
|
|
|
|
Add CPU_CLZERO_FLAGS.
|
|
|
|
|
(cpu_flags): Add CpuCLZERO.
|
|
|
|
|
* i386-opc.h: Add CpuCLZERO.
|
|
|
|
|
* i386-opc.tbl: Add clzero.
|
|
|
|
|
* i386-init.h: Re-generated.
|
|
|
|
|
* i386-tbl.h: Re-generated.
|
|
|
|
|
|
2015-03-13 22:42:55 +00:00
|
|
|
|
2015-03-13 Andrew Bennett <andrew.bennett@imgtec.com>
|
|
|
|
|
|
|
|
|
|
* mips-opc.c (decode_mips_operand): Fix constraint issues
|
|
|
|
|
with u and y operands.
|
|
|
|
|
|
2015-03-13 22:02:16 +00:00
|
|
|
|
2015-03-13 Andrew Bennett <andrew.bennett@imgtec.com>
|
|
|
|
|
|
|
|
|
|
* mips-opc.c (mips_builtin_opcodes): Add evp and dvp instructions.
|
|
|
|
|
|
2015-03-10 11:44:54 +00:00
|
|
|
|
2015-03-10 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
|
|
|
|
|
|
|
|
|
|
* s390-opc.c: Add new IBM z13 instructions.
|
|
|
|
|
* s390-opc.txt: Likewise.
|
|
|
|
|
|
2015-03-10 11:27:56 +00:00
|
|
|
|
2015-03-10 Renlin Li <renlin.li@arm.com>
|
|
|
|
|
|
|
|
|
|
* aarch64-tbl.h (aarch64_opcode_table): Remove strub, ldurb, ldursb,
|
|
|
|
|
stur, ldur, sturh, ldurh, ldursh, ldursw, prfum F_HAS_ALIAS flag and
|
|
|
|
|
related alias.
|
|
|
|
|
* aarch64-asm-2.c: Regenerate.
|
|
|
|
|
* aarch64-dis-2.c: Likewise.
|
|
|
|
|
* aarch64-opc-2.c: Likewise.
|
|
|
|
|
|
2015-03-03 15:00:59 +00:00
|
|
|
|
2015-03-03 Jiong Wang <jiong.wang@arm.com>
|
|
|
|
|
|
|
|
|
|
* arm-dis.c (arm_symbol_is_valid): Skip ARM private symbols.
|
|
|
|
|
|
2015-02-25 20:22:54 +00:00
|
|
|
|
2015-02-25 Oleg Endo <olegendo@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
* sh-opc.h (clrs, sets): Mark as arch_sh3_nommu_up instead of
|
|
|
|
|
arch_sh_up.
|
|
|
|
|
(pref): Mark as arch_sh2a_nofpu_or_sh3_nommu_up instead of
|
|
|
|
|
arch_sh2a_nofpu_or_sh4_nommu_nofpu_up.
|
|
|
|
|
|
2015-02-23 17:16:30 +00:00
|
|
|
|
2015-02-23 Vinay <Vinay.G@kpit.com>
|
|
|
|
|
|
|
|
|
|
* rl78-decode.opc (MOV): Added space between two operands for
|
|
|
|
|
'mov' instruction in index addressing mode.
|
|
|
|
|
* rl78-decode.c: Regenerate.
|
|
|
|
|
|
2015-02-12 09:59:03 +00:00
|
|
|
|
2015-02-19 Pedro Alves <palves@redhat.com>
|
|
|
|
|
|
|
|
|
|
* microblaze-dis.h [__cplusplus]: Wrap in extern "C".
|
|
|
|
|
|
opcodes/microblaze: Rename 'or', 'and', 'xor' to avoid C++ conflict
Building GDB as a C++ program, we see:
In file included from gdb/microblaze-tdep.c:37:0:
gdb/../opcodes/../opcodes/microblaze-opcm.h: At global scope:
gdb/../opcodes/../opcodes/microblaze-opcm.h:32:51: error: expected identifier before ‘or’ token
ncget, ncput, muli, bslli, bsrai, bsrli, mului, or, and, xor,
^
gdb/../opcodes/../opcodes/microblaze-opcm.h:32:51: error: expected ‘}’ before ‘or’ token
gdb/../opcodes/../opcodes/microblaze-opcm.h:32:51: error: expected unqualified-id before ‘or’ token
gdb/../opcodes/../opcodes/microblaze-opcm.h:60:1: error: expected declaration before ‘}’ token
};
^
opcodes/ChangeLog:
2015-02-10 Pedro Alves <palves@redhat.com>
Tom Tromey <tromey@redhat.com>
* microblaze-opcm.h (or, and, xor): Rename to microblaze_or,
microblaze_and, microblaze_xor.
* microblaze-opc.h (opcodes): Adjust.
2015-02-10 18:09:39 +00:00
|
|
|
|
2015-02-10 Pedro Alves <palves@redhat.com>
|
|
|
|
|
Tom Tromey <tromey@redhat.com>
|
|
|
|
|
|
|
|
|
|
* microblaze-opcm.h (or, and, xor): Rename to microblaze_or,
|
|
|
|
|
microblaze_and, microblaze_xor.
|
|
|
|
|
* microblaze-opc.h (opcodes): Adjust.
|
|
|
|
|
|
2015-01-28 05:06:43 +00:00
|
|
|
|
2015-01-28 James Bowman <james.bowman@ftdichip.com>
|
|
|
|
|
|
|
|
|
|
* Makefile.am: Add FT32 files.
|
|
|
|
|
* configure.ac: Handle FT32.
|
|
|
|
|
* disassemble.c (disassembler): Call print_insn_ft32.
|
|
|
|
|
* ft32-dis.c: New file.
|
|
|
|
|
* ft32-opc.c: New file.
|
|
|
|
|
* Makefile.in: Regenerate.
|
|
|
|
|
* configure: Regenerate.
|
|
|
|
|
* po/POTFILES.in: Regenerate.
|
|
|
|
|
|
2015-01-28 01:12:59 +00:00
|
|
|
|
2015-01-28 Kuan-Lin Chen <kuanlinchentw@gmail.com>
|
|
|
|
|
|
|
|
|
|
* nds32-asm.c (keyword_sr): Add new system registers.
|
|
|
|
|
|
2015-01-16 11:19:21 +00:00
|
|
|
|
2015-01-16 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
|
|
|
|
|
|
|
|
|
|
* s390-dis.c (s390_extract_operand): Support vector register
|
|
|
|
|
operands.
|
|
|
|
|
(s390_print_insn_with_opcode): Support new operands types and add
|
|
|
|
|
new handling of optional operands.
|
|
|
|
|
* s390-mkopc.c (s390_opcode_mode_val, s390_opcode_cpu_val): Remove
|
|
|
|
|
and include opcode/s390.h instead.
|
|
|
|
|
(struct op_struct): New field `flags'.
|
|
|
|
|
(insertOpcode, insertExpandedMnemonic): New parameter `flags'.
|
|
|
|
|
(dumpTable): Dump flags.
|
|
|
|
|
(main): Parse flags from the s390-opc.txt file. Add z13 as cpu
|
|
|
|
|
string.
|
|
|
|
|
* s390-opc.c: Add new operands types, instruction formats, and
|
|
|
|
|
instruction masks.
|
|
|
|
|
(s390_opformats): Add new formats for .insn.
|
|
|
|
|
* s390-opc.txt: Add new instructions.
|
|
|
|
|
|
2015-01-01 14:15:26 +00:00
|
|
|
|
2015-01-01 Alan Modra <amodra@gmail.com>
|
2014-12-27 15:57:04 +00:00
|
|
|
|
|
2015-01-01 14:15:26 +00:00
|
|
|
|
Update year range in copyright notice of all files.
|
2014-12-27 15:57:04 +00:00
|
|
|
|
|
2015-01-01 14:15:26 +00:00
|
|
|
|
For older changes see ChangeLog-2014
|
1999-05-03 07:29:11 +00:00
|
|
|
|
|
2015-01-01 14:15:26 +00:00
|
|
|
|
Copyright (C) 2015 Free Software Foundation, Inc.
|
2012-12-10 12:48:03 +00:00
|
|
|
|
|
|
|
|
|
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.
|
|
|
|
|
|
1999-05-03 07:29:11 +00:00
|
|
|
|
Local Variables:
|
2001-01-11 19:01:42 +00:00
|
|
|
|
mode: change-log
|
|
|
|
|
left-margin: 8
|
|
|
|
|
fill-column: 74
|
1999-05-03 07:29:11 +00:00
|
|
|
|
version-control: never
|
|
|
|
|
End:
|