X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=opcodes%2FChangeLog;h=2d1c9d3f7d4eec49ccf0f32bfeb7a36596336cf0;hb=cf950fd4dd4581849a445a76b57514d72074927d;hp=9e771dbbf7d26c9a098a35b96ca5aa902cd4d24c;hpb=3528c362d9471524cfe8a76c692081838b292d64;p=deliverable%2Fbinutils-gdb.git diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog index 9e771dbbf7..2d1c9d3f7d 100644 --- a/opcodes/ChangeLog +++ b/opcodes/ChangeLog @@ -1,3 +1,343 @@ +2019-12-16 Alan Modra + + * moxie-dis.c (INST2OFFSET): Don't left shift a signed value. + (print_insn_moxie): Remove unnecessary cast. + +2019-12-12 Alan Modra + + * csky-dis.c (csky_chars_to_number): Remove abort and unnecessary + mask. + +2019-12-11 Alan Modra + + * arc-dis.c (BITS): Don't truncate high bits with shifts. + * nios2-dis.c (nios2_print_insn_arg): Don't sign extend with shifts. + * tic54x-dis.c (print_instruction): Likewise. + * tilegx-opc.c (parse_insn_tilegx): Likewise. + * tilepro-opc.c (parse_insn_tilepro): Likewise. + * visium-dis.c (disassem_class0): Likewise. + * pdp11-dis.c (sign_extend): Likewise. + (SIGN_BITS): Delete. + * epiphany-ibld.c: Regenerate. + * lm32-ibld.c: Regenerate. + * m32c-ibld.c: Regenerate. + +2019-12-11 Alan Modra + + * ns32k-dis.c (sign_extend): Correct last patch. + +2019-12-11 Alan Modra + + * vax-dis.c (NEXTLONG): Avoid signed overflow. + +2019-12-11 Alan Modra + + * v850-dis.c (get_operand_value): Use unsigned arithmetic. Don't + sign extend using shifts. + +2019-12-11 Alan Modra + + * tic6x-dis.c (tic6x_extract_32): Avoid signed overflow. + +2019-12-11 Alan Modra + + * tic4x-dis.c (tic4x_print_register): Formatting. Don't segfault + on NULL registertable entry. + (tic4x_hash_opcode): Use unsigned arithmetic. + +2019-12-11 Alan Modra + + * s12z-opc.c (z_decode_signed_value): Avoid signed overflow. + +2019-12-11 Alan Modra + + * ns32k-dis.c (bit_extract): Use unsigned arithmetic. + (bit_extract_simple, sign_extend): Likewise. + +2019-12-11 Alan Modra + + * nios2-dis.c (nios2_print_insn_arg): Use 1u << 31. + +2019-12-11 Alan Modra + + * moxie-dis.c (INST2OFFSET): Don't sign extend using shifts. + +2019-12-11 Alan Modra + + * m68k-dis.c (COERCE32): Cast value first. + (NEXTLONG, NEXTULONG): Avoid signed overflow. + +2019-12-11 Alan Modra + + * h8300-dis.c (extract_immediate): Avoid signed overflow. + (bfd_h8_disassemble): Likewise. + +2019-12-11 Alan Modra + + * d30v-dis.c (print_insn): Make opind unsigned. Don't access + past end of operands array. + +2019-12-11 Alan Modra + + * csky-dis.c (csky_chars_to_number): Rewrite. Avoid signed + overflow when collecting bytes of a number. + +2019-12-11 Alan Modra + + * cris-dis.c (print_with_operands): Avoid signed integer + overflow when collecting bytes of a 32-bit integer. + +2019-12-11 Alan Modra + + * cr16-dis.c (EXTRACT, SBM): Rewrite. + (cr16_match_opcode): Delete duplicate bcond test. + +2019-12-11 Alan Modra + + * bfin-dis.c (HOST_LONG_WORD_SIZE, XFIELD): Delete. + (SIGNBIT): New. + (MASKBITS, SIGNEXTEND): Rewrite. + (fmtconst): Don't use ? expression now that SIGNEXTEND uses + unsigned arithmetic, instead assign result of SIGNEXTEND back + to x. + (fmtconst_val): Use 1u in shift expression. + +2019-12-11 Alan Modra + + * arc-dis.c (find_format_from_table): Use ull constant when + shifting by up to 32. + +2019-12-11 Alan Modra + + PR 25270 + * aarch64-dis.c (aarch64_decode_variant_using_iclass): Return + false when field is zero for sve_size_tsz_bhs. + +2019-12-11 Alan Modra + + * epiphany-ibld.c: Regenerate. + +2019-12-10 Alan Modra + + PR 24960 + * disassemble.c (disassemble_free_target): New function. + +2019-12-10 Alan Modra + + * cgen-dis.in (print_insn_@arch@): Replace insn_sets with private_data. + * disassemble.c (disassemble_init_for_target): Likewise. + * bpf-dis.c: Regenerate. + * epiphany-dis.c: Regenerate. + * fr30-dis.c: Regenerate. + * frv-dis.c: Regenerate. + * ip2k-dis.c: Regenerate. + * iq2000-dis.c: Regenerate. + * lm32-dis.c: Regenerate. + * m32c-dis.c: Regenerate. + * m32r-dis.c: Regenerate. + * mep-dis.c: Regenerate. + * mt-dis.c: Regenerate. + * or1k-dis.c: Regenerate. + * xc16x-dis.c: Regenerate. + * xstormy16-dis.c: Regenerate. + +2019-12-10 Alan Modra + + * ppc-dis.c (private): Delete variable. + (get_powerpc_dialect): Don't segfault on NULL info->private_data. + (powerpc_init_dialect): Don't use global private. + +2019-12-10 Alan Modra + + * s12z-opc.c: Formatting. + +2019-12-08 Alan Modra + + * s12z-opc.c (exg_sex_discrim): Don't leak memory on invalid + registers. + +2019-12-05 Jan Beulich + + * aarch64-tbl.h (aarch64_feature_crypto, + aarch64_feature_crypto_v8_2, CRYPTO, CRYPTO_V8_2, CRYP_INSN, + CRYPTO_V8_2_INSN): Delete. + +2019-12-05 Alan Modra + + PR 25249 + * microblaze-dis.c (NUM_STRBUFS, STRBUF_SIZE): Define. + (struct string_buf): New. + (strbuf): New function. + (get_field): Use strbuf rather than strdup of local temp. + (get_field_imm, get_field_imm5, get_field_imm5_mbar): Likewise. + (get_field_rfsl, get_field_imm15): Likewise. + (get_field_rd, get_field_r1, get_field_r2): Update macros. + (get_field_special): Likewise. Don't strcpy spr. Formatting. + (print_insn_microblaze): Formatting. Init and pass string_buf to + get_field functions. + +2019-12-04 Jan Beulich + + * i386-opc.tbl (lfs, lgs, lss): Drop No_qSuf. + * i386-tbl.h: Re-generate. + +2019-12-04 Jan Beulich + + * i386-dis.c (mod_table): Use Ev instead of Em for movdiri. + +2019-12-04 Jan Beulich + + * i386-opc.tbl (push, pop): Drop DefaultSize from GPR-only + forms. + (xbegin): Drop DefaultSize. + * i386-tbl.h: Re-generate. + +2019-11-22 Mihail Ionescu + + * opcodes/arm-dis.c (arm_opcodes, thumb32_opcodes): + Change the coproc CRC conditions to use the extension + feature set, second word, base on ARM_EXT2_CRC. + +2019-11-14 Jan Beulich + + * i386-opc.tbl (syscall, sysret): Drop Cpu64 forms. + * i386-tbl.h: Re-generate. + +2019-11-14 Jan Beulich + + * i386-gen.c (opcode_modifiers): Remove JumpDword, JumpByte, + JumpInterSegment, and JumpAbsolute entries. + * i386-opc.h (JUMP, JUMP_DWORD, JUMP_BYTE, JUMP_INTERSEGMENT, + JUMP_ABSOLUTE): Define. + (struct i386_opcode_modifier): Extend jump field to 3 bits. + Remove jumpdword, jumpbyte, jumpintersegment, and jumpabsolute + fields. + * i386-opc.tbl (JumpByte, JumpDword, JumpAbsolute, + JumpInterSegment): Define. + * i386-tbl.h: Re-generate. + +2019-11-14 Jan Beulich + + * i386-gen.c (operand_type_init): Remove + OPERAND_TYPE_JUMPABSOLUTE entry. + (opcode_modifiers): Add JumpAbsolute entry. + (operand_types): Remove JumpAbsolute entry. + * i386-opc.h (JumpAbsolute): Move between enums. + (struct i386_opcode_modifier): Add jumpabsolute field. + (union i386_operand_type): Remove jumpabsolute field. + * i386-opc.tbl (call, lcall, jmp, ljmp): Move JumpAbsolute. + * i386-init.h, i386-tbl.h: Re-generate. + +2019-11-14 Jan Beulich + + * i386-gen.c (opcode_modifiers): Add AnySize entry. + (operand_types): Remove AnySize entry. + * i386-opc.h (AnySize): Move between enums. + (struct i386_opcode_modifier): Add anysize field. + (OTUnused): Un-comment. + (union i386_operand_type): Remove anysize field. + * i386-opc.tbl (lea, invlpg, clflush, prefetchnta, prefetcht0, + prefetcht1, prefetcht2, prefetchtw, bndmk, bndcl, bndcu, bndcn, + bndstx, bndldx, prefetchwt1, clflushopt, clwb, cldemote): Move + AnySize. + * i386-tbl.h: Re-generate. + +2019-11-12 Nelson Chu + + * riscv-opc.c (riscv_insn_types): Replace the INSN_CLASS_I with + INSN_CLASS_F and the INSN_CLASS_C with INSN_CLASS_F_AND_C if we + use the floating point register (FPR). + +2019-11-12 Mihail Ionescu + + * opcodes/arm-dis.c (mve_opcodes): Enable VMOV imm to vec with + cmode 1101. + (is_mve_encoding_conflict): Update cmode conflict checks for + MVE_VMVN_IMM. + +2019-11-12 Jan Beulich + + * i386-gen.c (operand_type_init): Remove OPERAND_TYPE_ESSEG + entry. + (operand_types): Remove EsSeg entry. + (main): Replace stale use of OTMax. + * i386-opc.h (IS_STRING_ES_OP0, IS_STRING_ES_OP1): Define. + (struct i386_opcode_modifier): Expand isstring field to 2 bits. + (EsSeg): Delete. + (OTUnused): Comment out. + (union i386_operand_type): Remove esseg field. + * i386-opc.tbl (IsStringEsOp0, IsStringEsOp1): Define. + (cmps, scmp, scas, ssca, cmpsd): Add IsStringEsOp0. + (ins, movs, smov, movsd): Add IsStringEsOpOp1. + (stos, ssto): Add IsStringEsOp0/IsStringEsOpOp1. + * i386-init.h, i386-tbl.h: Re-generate. + +2019-11-12 Jan Beulich + + * i386-gen.c (operand_instances): Add RegB entry. + * i386-opc.h (enum operand_instance): Add RegB. + * i386-opc.tbl (RegC, RegD, RegB): Define. + (Acc, ShiftCount, InOutPortReg): Adjust definitions. + (monitor, mwait, invlpga, skinit, vmload, vmrun, vmsave, clzero, + monitorx, mwaitx): Drop ImmExt and convert encodings + accordingly. + * i386-reg.tbl (ecx, rcx): Add Instance=RegC. + (edx, rdx): Add Instance=RegD. + (ebx, rbx): Add Instance=RegB. + * i386-tbl.h: Re-generate. + +2019-11-12 Jan Beulich + + * i386-gen.c (operand_type_init): Adjust + OPERAND_TYPE_INOUTPORTREG, OPERAND_TYPE_SHIFTCOUNT, + OPERAND_TYPE_FLOATACC, OPERAND_TYPE_ACC8, OPERAND_TYPE_ACC16, + OPERAND_TYPE_ACC32, and OPERAND_TYPE_ACC64 entries. + (operand_instances): New. + (operand_types): Drop InOutPortReg, ShiftCount, and Acc entries. + (output_operand_type): New parameter "instance". Process it. + (process_i386_operand_type): New local variable "instance". + (main): Adjust static assertions. + * i386-opc.h (INSTANCE_WIDTH): Define. + (enum operand_instance): New. + (Acc, InOutPortReg, ShiftCount): Replace by ClassInstance. + (union i386_operand_type): Replace acc, inoutportreg, and + shiftcount by instance. + * i386-opc.tbl (Acc, InOutPortReg, ShiftCount): Define. + * i386-reg.tbl (st, al, cl, ax, dx, eax, rax, xmm0, st(0)): + Add Instance=. + * i386-init.h, i386-tbl.h: Re-generate. + +2019-11-11 Jan Beulich + + * aarch64-tbl.h (aarch64_opcode_table): Switch SVE2's + smaxp/sminp entries' "tied_operand" field to 2. + +2019-11-11 Jan Beulich + + * aarch64-opc.c (operand_general_constraint_met_p): Replace + "index" local variable by that of the already existing "num". + +2019-11-08 H.J. Lu + + PR gas/25167 + * i386-opc.tbl: Remove IgnoreSize from cmpsd and movsd. + * i386-tbl.h: Regenerated. + +2019-11-08 Jan Beulich + + * i386-gen.c (operand_type_init): Add Class= to + OPERAND_TYPE_REGMASK and OPERAND_TYPE_REGBND entries. Move up + OPERAND_TYPE_REGBND entry. + (operand_classes): Add RegMask and RegBND entries. + (operand_types): Drop RegMask and RegBND entry. + * i386-opc.h (enum operand_class): Add RegMask and RegBND. + (RegMask, RegBND): Delete. + (union i386_operand_type): Remove regmask and regbnd fields. + * i386-opc.tbl (RegMask, RegBND): Define. + * i386-reg.tbl: Replace RegMask by Class=RegMask and RegBND by + Class=RegBND. + * i386-init.h, i386-tbl.h: Re-generate. + 2019-11-08 Jan Beulich * i386-gen.c (operand_type_init): Add Class= to