2019-12-30  Alan Modra  <amodra@gmail.com>

	PR 25319
	* tic4x-dis.c (tic4x_print_cond): Correct order of xcalloc args.

2019-12-29  Alan Modra  <amodra@gmail.com>

	* sparc-dis.c (SEX): Don't use left and right shift to sign extend.
	(compare_opcodes): Avoid signed shift left overflow.
	(print_insn_sparc): Likewise.

2019-12-29  Alan Modra  <amodra@gmail.com>

	PR 25319
	* tic4x-dis.c (tic4x_print_cond): Init all of condtable.

2019-12-27  Jan Beulich  <jbeulich@suse.com>

	* i386-dis.c (Jdqw): Define.
	(dqw_mode): Adjust associated comment.
	(rm_table): Use Jdqw for XBEGIN.
	(OP_J): Handle dqw_mode.

2019-12-27  Jan Beulich  <jbeulich@suse.com>

	* i386-gen.c (process_i386_operand_type): Don't set Disp32 for
	Cpu64 templates.
	* i386-opc.tbl (mov): Fold two templates.
	(jcxz, jecxz, jrcxz, loop, loope, loopne, loopnz, loopz): Drop
	Disp16, Disp32, and Disp32S.
	(xbegin): Add Disp32S.
	* i386-tbl.h: Re-generate.

2019-12-26  Alan Modra  <amodra@gmail.com>

	* crx-dis.c (get_number_of_operands): Don't access operands[]
	out of bounds.

2019-12-26  Alan Modra  <amodra@gmail.com>

	* v850-dis.c (disassemble): Avoid signed overflow.  Don't use
	long vars when unsigned int will do.

2019-12-24  Alan Modra  <amodra@gmail.com>

	* arm-dis.c (print_insn_arm): Don't shift by 32 on unsigned int var.

2019-12-23  Jan Beulich  <jbeulich@suse.com>

	* ppc-dis.c (print_insn_powerpc): Rename local variable "spaces"
	to "blanks".
	* ppc-opc.c (D34, SI34, NSI34): Use UINT64_C().

2019-12-23  Alan Modra  <amodra@gmail.com>

	* score-dis.c (print_insn_score32): Avoid signed overflow.
	(print_insn_score48): Likewise.  Don't cast to int when printing
	hex values.

2019-12-23  Alan Modra  <amodra@gmail.com>

	* iq2000-ibld.c: Regenerate.

2019-12-23  Alan Modra  <amodra@gmail.com>

	* d30v-dis.c (extract_value): Make num param a uint64_t, constify
	oper.  Use unsigned vars.
	(print_insn): Make num var uint64_t.  Constify oper and remove now
	unnecessary casts on extract_value calls.
	(print_insn_d30v): Use unsigned vars.  Adjust printf formats.

2019-12-23  Alan Modra  <amodra@gmail.com>

	* wasm32-dis.c (wasm_read_leb128): Don't allow oversize shifts.
	Catch value overflow.  Sign extend only on terminating byte.

2019-12-20  Alan Modra  <amodra@gmail.com>

	PR 25281
	* sh-dis.c (print_insn_ddt): Properly check validity of MOVX_NOPY
	and MOVY_NOPX insns.  For invalid cases include 0xf000 in the word
	printed.  Print .word in more cases.

2019-12-20  Alan Modra  <amodra@gmail.com>

	* or1k-ibld.c: Regenerate.

2019-12-20  Alan Modra  <amodra@gmail.com>

	* hppa-dis.c (extract_16, extract_21, print_insn_hppa): Use
	unsigned variables.

2019-12-20  Alan Modra  <amodra@gmail.com>

	* m68hc11-dis.c (read_memory): Delete forward decls.
	(print_indexed_operand, print_insn): Likewise.
	(print_indexed_operand): Formatting.  Don't rely on short being
	exactly 16 bits, make sign extension explicit.
	(print_insn): Likewise.  Avoid signed overflow.

2019-12-19  Alan Modra  <amodra@gmail.com>

	* vax-dis.c (print_insn_mode): Stop index mode recursion.

2019-12-19  Dr N.W. Filardo  <nwf20@cam.ac.uk>

	PR 25277
	* microblaze-opcm.h (enum microblaze_instr): Prefix fadd, fmul and
	fdiv with "mbi_".
	* microblaze-opc.h (opcodes): Adjust to suit.

2019-12-18  Alan Modra  <amodra@gmail.com>

	* alpha-opc.c (OP): Avoid signed overflow.
	* arm-dis.c (print_insn): Likewise.
	* mcore-dis.c (print_insn_mcore): Likewise.
	* pj-dis.c (get_int): Likewise.
	* ppc-opc.c (EBD15, EBD15BI): Likewise.
	* score7-dis.c (s7_print_insn): Likewise.
	* tic30-dis.c (print_insn_tic30): Likewise.
	* v850-opc.c (insert_SELID): Likewise.
	* vax-dis.c (print_insn_vax): Likewise.
	* arc-ext.c (create_map): Likewise.
	(struct ExtAuxRegister): Make "address" field unsigned int.
	(arcExtMap_auxRegName): Pass unsigned address.
	(dump_ARC_extmap): Adjust.
	* arc-ext.h (arcExtMap_auxRegName): Update prototype.

2019-12-17  Alan Modra  <amodra@gmail.com>

	* visium-dis.c (print_insn_visium): Avoid signed overflow.

2019-12-17  Alan Modra  <amodra@gmail.com>

	* aarch64-opc.c (value_fit_signed_field_p): Avoid signed overflow.
	(value_fit_unsigned_field_p): Likewise.
	(aarch64_wide_constant_p): Likewise.
	(operand_general_constraint_met_p): Likewise.
	* aarch64-opc.h (aarch64_wide_constant_p): Update prototype.

2019-12-17  Alan Modra  <amodra@gmail.com>

	* nds32-dis.c (nds32_mask_opcode): Avoid signed overflow.
	(print_insn_nds32): Use uint64_t for "given" and "given1".

2019-12-17  Alan Modra  <amodra@gmail.com>

	* tic80-dis.c: Delete file.
	* tic80-opc.c: Delete file.
	* disassemble.c: Remove tic80 support.
	* disassemble.h: Likewise.
	* Makefile.am: Likewise.
	* configure.ac: Likewise.
	* Makefile.in: Regenerate.
	* configure: Regenerate.
	* po/POTFILES.in: Regenerate.

2019-12-17  Alan Modra  <amodra@gmail.com>

	* bpf-ibld.c: Regenerate.

2019-12-16  Alan Modra  <amodra@gmail.com>

	* aarch64-dis.c (sign_extend): Return uint64_t.  Rewrite without
	conditional.
	(aarch64_ext_imm): Avoid signed overflow.

2019-12-16  Alan Modra  <amodra@gmail.com>

	* microblaze-dis.c (read_insn_microblaze): Avoid signed overflow.

2019-12-16  Alan Modra  <amodra@gmail.com>

	* nios2-dis.c (nios2_print_insn_arg): Avoid signed overflow

2019-12-16  Alan Modra  <amodra@gmail.com>

	* xstormy16-ibld.c: Regenerate.

2019-12-16  Alan Modra  <amodra@gmail.com>

	* score-dis.c (print_insn_score16): Move rpush/rpop imm field
	value adjustment so that it doesn't affect reg field too.

2019-12-16  Alan Modra  <amodra@gmail.com>

	* crx-dis.c (EXTRACT, SBM): Avoid signed overflow.
	(get_number_of_operands, getargtype, getbits, getregname),
	(getcopregname, getprocregname, gettrapstring, getcinvstring),
	(getregliststring, get_word_at_PC, get_words_at_PC, build_mask),
	(powerof2, match_opcode, make_instruction, print_arguments),
	(print_arg): Delete forward declarations, moving static to..
	(getregname, getcopregname, getregliststring): ..these definitions.
	(build_mask): Return unsigned int mask.
	(match_opcode): Use unsigned int vars.

2019-12-16  Alan Modra  <amodra@gmail.com>

	* bfin-dis.c (fmtconst, fmtconst_val): Avoid signed overflow.

2019-12-16  Alan Modra  <amodra@gmail.com>

	* nds32-dis.c (print_insn16, print_insn32): Remove forward decls.
	(struct objdump_disasm_info): Delete.
	(nds32_parse_audio_ext, nds32_parse_opcode): Cast result of
	N32_IMMS to unsigned before shifting left.

2019-12-16  Alan Modra  <amodra@gmail.com>

	* moxie-dis.c (INST2OFFSET): Don't left shift a signed value.
	(print_insn_moxie): Remove unnecessary cast.

2019-12-12  Alan Modra  <amodra@gmail.com>

	* csky-dis.c (csky_chars_to_number): Remove abort and unnecessary
	mask.

2019-12-11  Alan Modra  <amodra@gmail.com>

	* 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  <amodra@gmail.com>

	* ns32k-dis.c (sign_extend): Correct last patch.

2019-12-11  Alan Modra  <amodra@gmail.com>

	* vax-dis.c (NEXTLONG): Avoid signed overflow.

2019-12-11  Alan Modra  <amodra@gmail.com>

	* v850-dis.c (get_operand_value): Use unsigned arithmetic.  Don't
	sign extend using shifts.

2019-12-11  Alan Modra  <amodra@gmail.com>

	* tic6x-dis.c (tic6x_extract_32): Avoid signed overflow.

2019-12-11  Alan Modra  <amodra@gmail.com>

	* 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  <amodra@gmail.com>

	* s12z-opc.c (z_decode_signed_value): Avoid signed overflow.

2019-12-11  Alan Modra  <amodra@gmail.com>

	* ns32k-dis.c (bit_extract): Use unsigned arithmetic.
	(bit_extract_simple, sign_extend): Likewise.

2019-12-11  Alan Modra  <amodra@gmail.com>

	* nios2-dis.c (nios2_print_insn_arg): Use 1u << 31.

2019-12-11  Alan Modra  <amodra@gmail.com>

	* moxie-dis.c (INST2OFFSET): Don't sign extend using shifts.

2019-12-11  Alan Modra  <amodra@gmail.com>

	* m68k-dis.c (COERCE32): Cast value first.
	(NEXTLONG, NEXTULONG): Avoid signed overflow.

2019-12-11  Alan Modra  <amodra@gmail.com>

	* h8300-dis.c (extract_immediate): Avoid signed overflow.
	(bfd_h8_disassemble): Likewise.

2019-12-11  Alan Modra  <amodra@gmail.com>

	* d30v-dis.c (print_insn): Make opind unsigned.  Don't access
	past end of operands array.

2019-12-11  Alan Modra  <amodra@gmail.com>

	* csky-dis.c (csky_chars_to_number): Rewrite.  Avoid signed
	overflow when collecting bytes of a number.

2019-12-11  Alan Modra  <amodra@gmail.com>

	* cris-dis.c (print_with_operands): Avoid signed integer
	overflow when collecting bytes of a 32-bit integer.

2019-12-11  Alan Modra  <amodra@gmail.com>

	* cr16-dis.c (EXTRACT, SBM): Rewrite.
	(cr16_match_opcode): Delete duplicate bcond test.

2019-12-11  Alan Modra  <amodra@gmail.com>

	* 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  <amodra@gmail.com>

	* arc-dis.c (find_format_from_table): Use ull constant when
	shifting by up to 32.

2019-12-11  Alan Modra  <amodra@gmail.com>

	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  <amodra@gmail.com>

	* epiphany-ibld.c: Regenerate.

2019-12-10  Alan Modra  <amodra@gmail.com>

	PR 24960
	* disassemble.c (disassemble_free_target): New function.

2019-12-10  Alan Modra  <amodra@gmail.com>

	* 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  <amodra@gmail.com>

	* 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  <amodra@gmail.com>

	* s12z-opc.c: Formatting.

2019-12-08  Alan Modra  <amodra@gmail.com>

	* s12z-opc.c (exg_sex_discrim): Don't leak memory on invalid
	registers.

2019-12-05  Jan Beulich  <jbeulich@suse.com>

	* 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  <amodra@gmail.com>

	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  <jbeulich@suse.com>

	* i386-opc.tbl (lfs, lgs, lss): Drop No_qSuf.
	* i386-tbl.h: Re-generate.

2019-12-04  Jan Beulich  <jbeulich@suse.com>

	* i386-dis.c (mod_table): Use Ev instead of Em for movdiri.

2019-12-04  Jan Beulich  <jbeulich@suse.com>

	* i386-opc.tbl (push, pop): Drop DefaultSize from GPR-only
	forms.
	(xbegin): Drop DefaultSize.
	* i386-tbl.h: Re-generate.

2019-11-22  Mihail Ionescu  <mihail.ionescu@arm.com>

	* 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  <jbeulich@suse.com>

	* i386-opc.tbl (syscall, sysret): Drop Cpu64 forms.
	* i386-tbl.h: Re-generate.

2019-11-14  Jan Beulich  <jbeulich@suse.com>

	* 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  <jbeulich@suse.com>

	* 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  <jbeulich@suse.com>

	* 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  <nelson.chu@sifive.com>

	* 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  <mihail.ionescu@arm.com>

	* 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  <jbeulich@suse.com>

	* 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  <jbeulich@suse.com>

	* 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  <jbeulich@suse.com>

	* 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  <jbeulich@suse.com>

	* aarch64-tbl.h (aarch64_opcode_table): Switch SVE2's
	smaxp/sminp entries' "tied_operand" field to 2.

2019-11-11  Jan Beulich  <jbeulich@suse.com>

	* 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  <hongjiu.lu@intel.com>

	PR gas/25167
	* i386-opc.tbl: Remove IgnoreSize from cmpsd and movsd.
	* i386-tbl.h: Regenerated.

2019-11-08  Jan Beulich  <jbeulich@suse.com>

	* 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  <jbeulich@suse.com>

	* i386-gen.c (operand_type_init): Add Class= to
	OPERAND_TYPE_REGMMX, OPERAND_TYPE_REGXMM, OPERAND_TYPE_REGYMM, and
	OPERAND_TYPE_REGZMM entries.
	(operand_classes): Add RegMMX and RegSIMD entries.
	(operand_types): Drop RegMMX and RegSIMD entries.
	* i386-opc.h (enum operand_class): Add RegMMX and RegSIMD.
	(RegMMX, RegSIMD): Delete.
	(union i386_operand_type): Remove regmmx and regsimd fields.
	* i386-opc.tbl (RegMMX): Define.
	(RegXMM, RegYMM, RegZMM): Add Class=.
	* i386-reg.tbl: Replace RegMMX by Class=RegMMX and RegSIMD by
	Class=RegSIMD.
	* i386-init.h, i386-tbl.h: Re-generate.

2019-11-08  Jan Beulich  <jbeulich@suse.com>

	* i386-gen.c (operand_type_init): Add Class= to
	OPERAND_TYPE_CONTROL, OPERAND_TYPE_TEST, and OPERAND_TYPE_DEBUG
	entries.
	(operand_classes): Add RegCR, RegDR, and RegTR entries.
	(operand_types): Drop Control, Debug, and Test entries.
	* i386-opc.h (enum operand_class): Add RegCR, RegDR, and RegTR.
	(Control, Debug, Test): Delete.
	(union i386_operand_type): Remove control, debug, and test
	fields.
	* i386-opc.tbl (Control, Debug, Test): Define.
	* i386-reg.tbl: Replace Control by Class=RegCR, Debug by
	Class=RegDR, and Test by Class=RegTR.
	* i386-init.h, i386-tbl.h: Re-generate.

2019-11-08  Jan Beulich  <jbeulich@suse.com>

	* i386-gen.c (operand_type_init): Add Class= to
	OPERAND_TYPE_SREG entry.
	(operand_classes): Add SReg entry.
	(operand_types): Drop SReg entry.
	* i386-opc.h (enum operand_class): Add SReg.
	(SReg): Delete.
	(union i386_operand_type): Remove sreg field.
	* i386-opc.tbl (SReg): Define.
	* i386-reg.tbl: Replace SReg by Class=SReg.
	* i386-init.h, i386-tbl.h: Re-generate.

2019-11-08  Jan Beulich  <jbeulich@suse.com>

	* i386-gen.c (operand_type_init): Add Class=. New
	OPERAND_TYPE_ANYIMM entry.
	(operand_classes): New.
	(operand_types): Drop Reg entry.
	(output_operand_type): New parameter "class". Process it.
	(process_i386_operand_type): New local variable "class".
	(main): Adjust static assertions.
	* i386-opc.h (CLASS_WIDTH): Define.
	(enum operand_class): New.
	(Reg): Replace by Class. Adjust comment.
	(union i386_operand_type): Replace reg by class.
	* i386-opc.tbl (Reg8, Reg16, Reg32, Reg64, FloatReg): Add
	Class=.
	* i386-reg.tbl: Replace Reg by Class=Reg.
	* i386-init.h: Re-generate.

2019-11-07  Mihail Ionescu  <mihail.ionescu@arm.com>

	* opcodes/aarch64-tbl.h (V8_6_INSN): New macro for v8.6 instructions.
	(aarch64_opcode_table): Add data gathering hint mnemonic.
	* opcodes/aarch64-dis-2.c: Account for new instruction.

2019-11-07  Mihail Ionescu  <mihail.ionescu@arm.com>

	* arm-dis.c (neon_opcodes): Add i8mm SIMD instructions.


2019-11-07  Mihail Ionescu  <mihail.ionescu@arm.com>

	* aarch64-tbl.h (aarch64_feature_i8mm_sve, aarch64_feature_f32mm_sve,
	aarch64_feature_f64mm_sve, aarch64_feature_i8mm, aarch64_feature_f32mm,
	aarch64_feature_f64mm): New feature sets.
	(INT8MATMUL_INSN, F64MATMUL_SVE_INSN, F64MATMUL_INSN,
	F32MATMUL_SVE_INSN, F32MATMUL_INSN): New macros to define matrix multiply
	instructions.
	(I8MM_SVE, F32MM_SVE, F64MM_SVE, I8MM, F32MM, F64MM): New feature set
	macros.
	(QL_MMLA64, OP_SVE_SBB): New qualifiers.
	(OP_SVE_QQQ): New qualifier.
	(INT8MATMUL_SVE_INSNC, F64MATMUL_SVE_INSNC,
	F32MATMUL_SVE_INSNC): New feature set for bfloat16 instructions to support
	the movprfx constraint.
	(aarch64_opcode_table): Support for SVE_ADDR_RI_S4x32.
	(aarch64_opcode_table): Define new instructions smmla,
	ummla, usmmla, usdot, sudot, fmmla, ld1rob, ld1roh, ld1row, ld1rod,
	uzip{1/2}, trn{1/2}.
	* aarch64-opc.c (operand_general_constraint_met_p): Handle
	AARCH64_OPND_SVE_ADDR_RI_S4x32.
	(aarch64_print_operand): Handle AARCH64_OPND_SVE_ADDR_RI_S4x32.
	* aarch64-dis-2.c (aarch64_opcode_lookup_1, aarch64_find_next_opcode):
	Account for new instructions.
	* opcodes/aarch64-asm-2.c (aarch64_insert_operand): Support the new
	S4x32 operand.
	* aarch64-opc-2.c (aarch64_operands): Support the new S4x32 operand.

2019-11-07  Mihail Ionescu  <mihail.ionescu@arm.com>
2019-11-07  Matthew Malcomson  <matthew.malcomson@arm.com>

	* arm-dis.c (select_arm_features): Update bfd_march_arm_8 with
	Armv8.6-A.
	(coprocessor_opcodes): Add bfloat16 vcvt{t,b}.
	(neon_opcodes): Add bfloat SIMD instructions.
	(print_insn_coprocessor): Add new control character %b to print
	condition code without checking cp_num.
	(print_insn_neon): Account for BFloat16 instructions that have no
	special top-byte handling.

2019-11-07  Mihail Ionescu  <mihail.ionescu@arm.com>
2019-11-07  Matthew Malcomson  <matthew.malcomson@arm.com>

	* arm-dis.c (print_insn_coprocessor,
	print_insn_generic_coprocessor): Create wrapper functions around
	the implementation of the print_insn_coprocessor control codes.
	(print_insn_coprocessor_1): Original print_insn_coprocessor
	function that now takes which array to look at as an argument.
	(print_insn_arm): Use both print_insn_coprocessor and
	print_insn_generic_coprocessor.
	(print_insn_thumb32): As above.

2019-11-07  Mihail Ionescu  <mihail.ionescu@arm.com>
2019-11-07  Matthew Malcomson  <matthew.malcomson@arm.com>

	* aarch64-asm.c (aarch64_ins_reglane): Use AARCH64_OPND_QLF_S_2H
	in reglane special case.
	* aarch64-dis-2.c (aarch64_opcode_lookup_1,
	aarch64_find_next_opcode): Account for new instructions.
	* aarch64-dis.c (aarch64_ext_reglane): Use AARCH64_OPND_QLF_S_2H
	in reglane special case.
	* aarch64-opc.c (struct operand_qualifier_data): Add data for
	new AARCH64_OPND_QLF_S_2H qualifier.
	* aarch64-tbl.h (QL_BFDOT QL_BFDOT64, QL_BFDOT64I, QL_BFMMLA2,
	QL_BFCVT64, QL_BFCVTN64, QL_BFCVTN2_64): New qualifiers.
	(aarch64_feature_bfloat16, aarch64_feature_bfloat16_sve): New feature
	sets.
	(BFLOAT_SVE, BFLOAT): New feature set macros.
	(BFLOAT_SVE_INSN, BFLOAT_INSN): New macros to define BFloat16
	instructions.
	(aarch64_opcode_table): Define new instructions bfdot,
	bfmmla, bfcvt, bfcvtnt, bfdot, bfdot, bfcvtn, bfmlal[b/t]
	bfcvtn2, bfcvt.

2019-11-07  Mihail Ionescu  <mihail.ionescu@arm.com>
2019-11-07  Matthew Malcomson  <matthew.malcomson@arm.com>

	* aarch64-tbl.h (ARMV8_6): New macro.

2019-11-07  Jan Beulich  <jbeulich@suse.com>

	* i386-dis.c (prefix_table): Add mcommit.
	(rm_table): Add rdpru.
	* i386-gen.c (cpu_flag_init): Adjust CPU_ZNVER2_FLAGS entry. Add
	CPU_RDPRU_FLAGS and CPU_MCOMMIT_FLAGS entries.
	(cpu_flags): Add CpuRDPRU and CpuMCOMMIT entries.
	* i386-opc.h (CpuRDPRU, CpuMCOMMIT): New.
	(union i386_cpu_flags): Add cpurdpru and cpumcommit fields.
	* i386-opc.tbl (mcommit, rdpru): New.
	* i386-init.h, i386-tbl.h: Re-generate.

2019-11-07  Jan Beulich  <jbeulich@suse.com>

	* i386-dis.c (OP_Mwait): Drop local variable "names", use
	"names32" instead.
	(OP_Monitor): Drop local variable "op1_names", re-purpose
	"names" for it instead, and replace former "names" uses by
	"names32" ones.

2019-11-07  Jan Beulich  <jbeulich@suse.com>

	PR/gas 25167
	* opcodes/i386-opc.tbl (movsd, cmpsd): Drop IgnoreSize from
	operand-less forms.
	* opcodes/i386-tbl.h: Re-generate.

2019-11-05  Jan Beulich  <jbeulich@suse.com>

	* i386-dis.c (OP_Mwaitx): Delete.
	(prefix_table): Use OP_Mwait for mwaitx entry.
	(OP_Mwait): Also handle mwaitx.

2019-11-05  Jan Beulich  <jbeulich@suse.com>

	* i386-dis.c (PREFIX_0F01_REG_7_MOD_3_RM_2,
	PREFIX_0F01_REG_7_MOD_3_RM_3): New.
	(prefix_table): Add respective entries.
	(rm_table): Link to those entries.

2019-11-05  Jan Beulich  <jbeulich@suse.com>

	* i386-dis.c (REG_0F1C_MOD_0): Rename to ...
	(REG_0F1C_P_0_MOD_0): ... this.
	(REG_0F1E_MOD_3): Rename to ...
	(REG_0F1E_P_1_MOD_3): ... this.
	(RM_0F01_REG_5): Rename to ...
	(RM_0F01_REG_5_MOD_3): ... this.
	(RM_0F01_REG_7): Rename to ...
	(RM_0F01_REG_7_MOD_3): ... this.
	(RM_0F1E_MOD_3_REG_7): Rename to ...
	(RM_0F1E_P_1_MOD_3_REG_7): ... this.
	(RM_0FAE_REG_6): Rename to ...
	(RM_0FAE_REG_6_MOD_3_P_0): ... this.
	(RM_0FAE_REG_7): Rename to ...
	(RM_0FAE_REG_7_MOD_3): ... this.
	(PREFIX_MOD_0_0F01_REG_5): Rename to ...
	(PREFIX_0F01_REG_5_MOD_0): ... this.
	(PREFIX_MOD_3_0F01_REG_5_RM_0): Rename to ...
	(PREFIX_0F01_REG_5_MOD_3_RM_0): ... this.
	(PREFIX_MOD_3_0F01_REG_5_RM_2): Rename to ...
	(PREFIX_0F01_REG_5_MOD_3_RM_2): ... this.
	(PREFIX_0FAE_REG_0): Rename to ...
	(PREFIX_0FAE_REG_0_MOD_3): ... this.
	(PREFIX_0FAE_REG_1): Rename to ...
	(PREFIX_0FAE_REG_1_MOD_3): ... this.
	(PREFIX_0FAE_REG_2): Rename to ...
	(PREFIX_0FAE_REG_2_MOD_3): ... this.
	(PREFIX_0FAE_REG_3): Rename to ...
	(PREFIX_0FAE_REG_3_MOD_3): ... this.
	(PREFIX_MOD_0_0FAE_REG_4): Rename to ...
	(PREFIX_0FAE_REG_4_MOD_0): ... this.
	(PREFIX_MOD_3_0FAE_REG_4): Rename to ...
	(PREFIX_0FAE_REG_4_MOD_3): ... this.
	(PREFIX_MOD_0_0FAE_REG_5): Rename to ...
	(PREFIX_0FAE_REG_5_MOD_0): ... this.
	(PREFIX_MOD_3_0FAE_REG_5): Rename to ...
	(PREFIX_0FAE_REG_5_MOD_3): ... this.
	(PREFIX_MOD_0_0FAE_REG_6): Rename to ...
	(PREFIX_0FAE_REG_6_MOD_0): ... this.
	(PREFIX_MOD_1_0FAE_REG_6): Rename to ...
	(PREFIX_0FAE_REG_6_MOD_3): ... this.
	(PREFIX_0FAE_REG_7): Rename to ...
	(PREFIX_0FAE_REG_7_MOD_0): ... this.
	(PREFIX_MOD_0_0FC3): Rename to ...
	(PREFIX_0FC3_MOD_0): ... this.
	(PREFIX_MOD_0_0FC7_REG_6): Rename to ...
	(PREFIX_0FC7_REG_6_MOD_0): ... this.
	(PREFIX_MOD_3_0FC7_REG_6): Rename to ...
	(PREFIX_0FC7_REG_6_MOD_3): ... this.
	(PREFIX_MOD_3_0FC7_REG_7): Rename to ...
	(PREFIX_0FC7_REG_7_MOD_3): ... this.
	(reg_table, prefix_table, mod_table, rm_table): Adjust
	accordingly.

2019-11-04  Nick Clifton  <nickc@redhat.com>

	* v850-dis.c (get_v850_sreg_name): New function.  Returns the name
	of a v850 system register.  Move the v850_sreg_names array into
	this function.
	(get_v850_reg_name): Likewise for ordinary register names.
	(get_v850_vreg_name): Likewise for vector register names.
	(get_v850_cc_name): Likewise for condition codes.
	* get_v850_float_cc_name): Likewise for floating point condition
	codes.
	(get_v850_cacheop_name): Likewise for cache-ops.
	(get_v850_prefop_name): Likewise for pref-ops.
	(disassemble): Use the new accessor functions.

2019-10-30  Delia Burduv   <delia.burduv@arm.com>

	* aarch64-opc.c (print_immediate_offset_address): Don't print the
	immediate for the writeback form of ldraa/ldrab if it is 0.
	* aarch64-tbl.h: Updated the documentation for ADDR_SIMM10.
	* aarch64-opc-2.c: Regenerated.

2019-10-30  Jan Beulich  <jbeulich@suse.com>

	* i386-gen.c (operand_type_shorthands): Delete.
	(operand_type_init): Expand previous shorthands.
	(set_bitfield_from_shorthand): Rename back to ...
	(set_bitfield_from_cpu_flag_init): ... this.  Drop processing
	of operand_type_init[].
	(set_bitfield): Adjust call to the above function.
	* i386-opc.tbl (Reg8, Reg16, Reg32, Reg64, FloatAcc, FloatReg,
	RegXMM, RegYMM, RegZMM): Define.
	* i386-reg.tbl: Expand prior shorthands.

2019-10-30  Jan Beulich  <jbeulich@suse.com>

	* i386-gen.c (output_i386_opcode): Change order of fields
	emitted to output.
	* i386-opc.h (struct insn_template): Move operands field.
	Convert extension_opcode field to unsigned short.
	* i386-tbl.h: Re-generate.

2019-10-30  Jan Beulich  <jbeulich@suse.com>

	* i386-gen.c (process_i386_opcode_modifier): Report bogus uses
	of W.
	* i386-opc.h (W): Extend comment.
	* i386-opc.tbl (mov, movabs, movq): Drop W and adjust opcodes of
	general purpose variants not allowing for byte operands.
	* i386-tbl.h: Re-generate.

2019-10-29  Nick Clifton  <nickc@redhat.com>

	* tic30-dis.c (print_branch): Correct size of operand array.

2019-10-29  Nick Clifton  <nickc@redhat.com>

	* d30v-dis.c (print_insn): Check that operand index is valid
	before attempting to access the operands array.

2019-10-29  Nick Clifton  <nickc@redhat.com>

	* ia64-opc.c (locate_opcode_ent): Prevent a negative shift when
	locating the bit to be tested.

2019-10-29  Nick Clifton  <nickc@redhat.com>

	* s12z-dis.c (opr_emit_disassembly): Check for illegal register
	values.
	(shift_size_table): Use a fixed size defined as S12Z_N_SIZES.
	(print_insn_s12z):  Check for illegal size values.

2019-10-28  Nick Clifton  <nickc@redhat.com>

	* csky-dis.c (csky_chars_to_number): Check for a negative
	count. Use an unsigned integer to construct the return value.

2019-10-28  Nick Clifton  <nickc@redhat.com>

	* tic30-dis.c (OPERAND_BUFFER_LEN): Define.  Use as length of
	operand buffer.  Set value to 15 not 13.
	(get_register_operand): Use OPERAND_BUFFER_LEN.
	(get_indirect_operand): Likewise.
	(print_two_operand): Likewise.
	(print_three_operand): Likewise.
	(print_oar_insn): Likewise.

2019-10-28  Nick Clifton  <nickc@redhat.com>

	* ns32k-dis.c (bit_extract): Add sanitiy check of parameters.
	(bit_extract_simple): Likewise.
	(bit_copy): Likewise.
	(pirnt_insn_ns32k): Ensure that uninitialised elements in the
	index_offset array are not accessed.

2019-10-28  Nick Clifton  <nickc@redhat.com>

	* xgate-dis.c (print_insn): Fix decoding of the XGATE_OP_DYA
	operand.

2019-10-25  Nick Clifton  <nickc@redhat.com>

	* rx-dis.c (print_insn_rx): Use parenthesis to ensure correct
	access to opcodes.op array element.

2019-10-23  Nick Clifton  <nickc@redhat.com>

	* rx-dis.c (get_register_name): Fix spelling typo in error
	message.
	(get_condition_name, get_flag_name, get_double_register_name)
	(get_double_register_high_name, get_double_register_low_name)
	(get_double_control_register_name, get_double_condition_name)
	(get_opsize_name, get_size_name): Likewise.

2019-10-22  Nick Clifton  <nickc@redhat.com>

	* rx-dis.c (get_size_name): New function.  Provides safe
	access to name array.
	(get_opsize_name): Likewise.
	(print_insn_rx): Use the accessor functions.

2019-10-16  Nick Clifton  <nickc@redhat.com>

	* rx-dis.c (get_register_name): New function.  Provides safe
	access to name array.
	(get_condition_name, get_flag_name, get_double_register_name)
	(get_double_register_high_name, get_double_register_low_name)
	(get_double_control_register_name, get_double_condition_name):
	Likewise.
	(print_insn_rx): Use the accessor functions.

2019-10-09  Nick Clifton  <nickc@redhat.com>

	PR 25041
	* avr-dis.c (avr_operand): Fix construction of address for lds/sts
	instructions.

2019-10-07  Jan Beulich  <jbeulich@suse.com>

	* opcodes/i386-opc.tbl (movsd): Add Dword and IgnoreSize.
	(cmpsd): Likewise. Move EsSeg to other operand.
	* opcodes/i386-tbl.h: Re-generate.

2019-09-23  Alan Modra  <amodra@gmail.com>

	* m68k-dis.c: Include cpu-m68k.h

2019-09-23  Alan Modra  <amodra@gmail.com>

	* mips-dis.c: Include elfxx-mips.h.  Move "elf-bfd.h" and
	"elf/mips.h" earlier.

2018-09-20  Jan Beulich  <jbeulich@suse.com>

	PR gas/25012
	* i386-opc.tbl (push, pop): Re-instate distinct Cpu64 templates
	with SReg operand.
	* i386-tbl.h: Re-generate.

2019-09-18  Alan Modra  <amodra@gmail.com>

	* arc-ext.c: Update throughout for bfd section macro changes.

2019-09-18  Simon Marchi  <simon.marchi@polymtl.ca>

	* Makefile.in: Re-generate.
	* configure: Re-generate.

2019-09-17  Maxim Blinov  <maxim.blinov@embecosm.com>

	* riscv-opc.c (riscv_opcodes): Change subset field
	to insn_class field for all instructions.
	(riscv_insn_types): Likewise.

2019-09-16  Phil Blundell  <pb@pbcl.net>

	* configure: Regenerated.

2019-09-10  Miod Vallat  <miod@online.fr>

	PR 24982
	* m68k-opc.c: Correct aliases for tdivsl and tdivul.

2019-09-09  Phil Blundell  <pb@pbcl.net>

	binutils 2.33 branch created.

2019-09-03  Nick Clifton  <nickc@redhat.com>

	PR 24961
	* tic30-dis.c (get_indirect_operand): Check for bufcnt being
	greater than zero before indexing via (bufcnt -1).

2019-09-03  Nick Clifton  <nickc@redhat.com>

	PR 24958
	* mmix-dis.c (MAX_REG_NAME_LEN): Define.
	(MAX_SPEC_REG_NAME_LEN): Define.
	(struct mmix_dis_info): Use defined constants for array lengths.
	(get_reg_name): New function.
	(get_sprec_reg_name): New function.
	(print_insn_mmix): Use new functions.

2019-08-27  Srinath Parvathaneni  <srinath.parvathaneni@arm.com>

	* arm-dis.c (mve_opcodes): Add entry for MVE_VMOV_VEC_TO_VEC.
	(is_mve_undefined): Add case for MVE_VMOV_VEC_TO_VEC.
	(print_insn_mve): Add condition to check Qm==Qn of VORR instruction.

2019-08-22  Kyrylo Tkachov <kyrylo.tkachov@arm.com>

	* aarch64-opc.c (aarch64_sys_regs): Update encoding of tfsre0_el1,
	tfsr_el1, tfsr_el2, tfsr_el3, tfsr_el12.
	(aarch64_sys_reg_supported_p): Update checks for the above.

2019-08-12  Srinath Parvathaneni  <srinath.parvathaneni@arm.com>

	* arm-dis.c (struct mopcode32 mve_opcodes): Modify the mask for
	cases MVE_SQRSHRL and MVE_UQRSHLL.
	(print_insn_mve): Add case for specifier 'k' to check
	specific bit of the instruction.

2019-08-07  Phillipe Antoine  <p.antoine@catenacyber.fr>

	PR 24854
	* arc-dis.c (arc_insn_length): Return 0 rather than aborting when
	encountering an unknown machine type.
	(print_insn_arc): Handle arc_insn_length returning 0.  In error
	cases return -1 rather than calling abort.

2019-08-07  Jan Beulich  <jbeulich@suse.com>

	* i386-opc.tbl (fld, fstp): Drop FloatMF from extended forms.
	(fldcw, fnstcw, fstcw, fnstsw, fstsw): Replace FloatMF by
	IgnoreSize.
	* i386-tbl.h: Re-generate.

2019-08-05  Barnaby Wilks  <barnaby.wilks@arm.com>

	* arm-dis.c: Only accept signed variants of VQ(R)DMLAH and VQ(R)DMLASH
	instructions.

2019-07-30  Mel Chen <mel.chen@sifive.com>

	* riscv-opc.c (riscv_opcodes): Set frsr, fssr, frcsr, fscsr, frrm,
	fsrm, fsrmi, frflags, fsflags, fsflagsi to alias instructions.

	* riscv-opc.c (riscv_opcodes): Adjust order of frsr, frcsr, fssr,
	fscsr.

2019-07-24  Claudiu Zissulescu  <claziss@synopsys.com>

	* arc-dis.c (skip_this_opcode): Check also for 0x07 major opcodes,
	and MPY class instructions.
	(parse_option): Add nps400 option.
	(print_arc_disassembler_options): Add nps400 info.

2019-07-24  Claudiu Zissulescu  <claziss@synopsys.com>

	* arc-ext-tbl.h (bspeek): Remove it, added to main table.
	(bspop): Likewise.
	(modapp): Likewise.
	* arc-opc.c (RAD_CHK): Add.
	* arc-tbl.h: Regenerate.

2019-07-23  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	* aarch64-opc.c (aarch64_sys_regs): Add gmid_el1 entry.
	(aarch64_sys_reg_supported_p): Handle gmid_el1 encoding.

2019-07-22  Barnaby Wilks  <barnaby.wilks@arm.com>

	* arm-dis.c (is_mve_unpredictable): Stop marking some MVE
	instructions as UNPREDICTABLE.

2019-07-19  Jose E. Marchesi  <jose.marchesi@oracle.com>

	* bpf-desc.c: Regenerated.

2019-07-17  Jan Beulich  <jbeulich@suse.com>

	* i386-gen.c (static_assert): Define.
	(main): Use it.
	* i386-opc.h (Opcode_Modifier_Max): Rename to ...
	(Opcode_Modifier_Num): ... this.
	(Mem): Delete.

2019-07-16  Jan Beulich  <jbeulich@suse.com>

	* i386-gen.c (operand_types): Move RegMem ...
	(opcode_modifiers): ... here.
	* i386-opc.h (RegMem): Move to opcode modifer enum.
	(union i386_operand_type): Move regmem field ...
	(struct i386_opcode_modifier): ... here.
	* i386-opc.tbl (RegMem): Define.
	(mov, movq): Move RegMem on segment, control, debug, and test
	register flavors.
	(pextrb): Move RegMem on register only flavors. Add IgnoreSize
	to non-SSE2AVX flavor.
	(extractps, pextrw, vcvtps2ph, vextractps, vpextrb, vpextrw):
	Move RegMem on register only flavors. Drop IgnoreSize from
	legacy encoding flavors.
	(movss, movsd, vmovss, vmovsd): Drop RegMem from register only
	flavors.
	(vpinsrb, vpinsrw): Drop IgnoreSize where still present on
	register only flavors.
	(vmovd): Move RegMem and drop IgnoreSize on register only
	flavor. Change opcode and operand order to store form.
	* opcodes/i386-init.h, i386-tbl.h: Re-generate.

2019-07-16  Jan Beulich  <jbeulich@suse.com>

	* i386-gen.c (operand_type_init, operand_types): Replace SReg
	entries.
	* i386-opc.h (SReg2, SReg3): Replace by ...
	(SReg): ... this.
	(union i386_operand_type): Replace sreg fields.
	* i386-opc.tbl (mov, ): Use SReg.
	(push, pop): Likewies. Drop i386 and x86-64 specific segment
	register flavors.
	* i386-reg.tbl (cs, ds, es, fs, gs, ss, flat): Use SReg.
	* opcodes/i386-init.h, i386-tbl.h: Re-generate.

2019-07-15  Jose E. Marchesi  <jose.marchesi@oracle.com>

	* bpf-desc.c: Regenerate.
	* bpf-opc.c: Likewise.
	* bpf-opc.h: Likewise.

2019-07-14  Jose E. Marchesi  <jose.marchesi@oracle.com>

	* bpf-desc.c: Regenerate.
	* bpf-opc.c: Likewise.

2019-07-10  Hans-Peter Nilsson  <hp@bitrange.com>

	* arm-dis.c (print_insn_coprocessor): Rename index to
	index_operand.

2019-07-05  Kito Cheng <kito.cheng@sifive.com>

	* riscv-opc.c (riscv_insn_types): Add r4 type.

	* riscv-opc.c (riscv_insn_types): Add b and j type.

	* opcodes/riscv-opc.c (riscv_insn_types): Remove incorrect
	format for sb type and correct s type.

2019-07-02  Richard Sandiford  <richard.sandiford@arm.com>

	* aarch64-tbl.h (aarch64_opcode): Set C_SCAN_MOVPRFX for the
	SVE FMOV alias of FCPY.

2019-07-02  Richard Sandiford  <richard.sandiford@arm.com>

	* aarch64-tbl.h (aarch64_opcode_table): Add C_MAX_ELEM flags
	to SVE fcvtzs, fcvtzu, scvtf and ucvtf entries.

2019-07-02  Richard Sandiford  <richard.sandiford@arm.com>

	* aarch64-opc.c (verify_constraints): Skip GPRs when scanning the
	registers in an instruction prefixed by MOVPRFX.

2019-07-01  Matthew Malcomson  <matthew.malcomson@arm.com>

	* aarch64-asm.c (aarch64_encode_variant_using_iclass): Use new
	sve_size_13 icode to account for variant behaviour of
	pmull{t,b}.
	* aarch64-dis-2.c: Regenerate.
	* aarch64-dis.c (aarch64_decode_variant_using_iclass): Use new
	sve_size_13 icode to account for variant behaviour of
	pmull{t,b}.
	* aarch64-tbl.h (OP_SVE_VVV_HD_BS): Add new qualifier.
	(OP_SVE_VVV_Q_D): Add new qualifier.
	(OP_SVE_VVV_QHD_DBS): Remove now unused qualifier.
	(struct aarch64_opcode): Split pmull{t,b} into those requiring
	AES and those not.

2019-07-01  Jan Beulich  <jbeulich@suse.com>

	* opcodes/i386-gen.c (operand_type_init): Remove
	OPERAND_TYPE_VEC_IMM4 entry.
	(operand_types): Remove Vec_Imm4.
	* opcodes/i386-opc.h (Vec_Imm4): Delete.
	(union i386_operand_type): Remove vec_imm4.
	* i386-opc.tbl (vpermil2pd, vpermil2ps): Remove Vec_Imm4.
	* opcodes/i386-init.h, i386-tbl.h: Re-generate.

2019-07-01  Jan Beulich  <jbeulich@suse.com>

	* i386-opc.tbl (lfence, mfence, sfence, monitor, mwait, vmcall,
	vmlaunch, vmresume, vmxoff, vmfunc, xgetbv, xsetbv, swapgs,
	rdtscp, clgi, invlpga, skinit, stgi, vmload, vmmcall, vmrun,
	vmsave, montmul, xsha1, xsha256, xstorerng, xcryptecb,
	xcryptcbc, xcryptctr, xcryptcfb, xcryptofb, xstore, clac, stac,
	monitorx, mwaitx): Drop ImmExt from operand-less forms.
	* i386-tbl.h: Re-generate.

2019-07-01  Jan Beulich  <jbeulich@suse.com>

	* i386-opc.tbl (and, or): Add Optimize to forms allowing two
	register operands.
	* i386-tbl.h: Re-generate.

2019-07-01  Jan Beulich  <jbeulich@suse.com>

	* i386-opc.tbl (C): New.
	(paddb, paddw, paddd, paddq, paddsb, paddsw, paddusb, paddusw,
	pand, pcmpeqb, pcmpeqw, pcmpeqd, pmaddwd, pmulhw, pmullw,
	por, pxor, andps, cmpeqps, cmpeqss, cmpneqps, cmpneqss,
	cmpordps, cmpordss, cmpunordps, cmpunordss, orps, pavgb, pavgw,
	pmaxsw, pmaxub, pminsw, pminub, pmulhuw, xorps, andpd, cmpeqpd,
	cmpeqsd, cmpneqpd, cmpneqsd, cmpordpd, cmpordsd, cmpunordpd,
	cmpunordsd, orpd, xorpd, pmuludq, vandpd, vandps, vcmpeq_ospd,
	vcmpeq_osps, vcmpeq_ossd, vcmpeq_osss, vcmpeqpd, vcmpeqps,
	vcmpeqsd, vcmpeqss, vcmpeq_uqpd, vcmpeq_uqps, vcmpeq_uqsd,
	vcmpeq_uqss, vcmpeq_uspd, vcmpeq_usps, vcmpeq_ussd,
	vcmpeq_usss, vcmpfalse_ospd, vcmpfalse_osps, vcmpfalse_ossd,
	vcmpfalse_osss, vcmpfalsepd, vcmpfalseps, vcmpfalsesd,
	vcmpfalsess, vcmpneq_oqpd, vcmpneq_oqps, vcmpneq_oqsd,
	vcmpneq_oqss, vcmpneq_ospd, vcmpneq_osps, vcmpneq_ossd,
	vcmpneq_osss, vcmpneqpd, vcmpneqps, vcmpneqsd, vcmpneqss,
	vcmpneq_uspd, vcmpneq_usps, vcmpneq_ussd, vcmpneq_usss,
	vcmpordpd, vcmpordps, vcmpordsd, vcmpord_spd, vcmpord_sps,
	vcmpordss, vcmpord_ssd, vcmpord_sss, vcmptruepd, vcmptrueps,
	vcmptruesd, vcmptruess, vcmptrue_uspd, vcmptrue_usps,
	vcmptrue_ussd, vcmptrue_usss, vcmpunordpd, vcmpunordps,
	vcmpunordsd, vcmpunord_spd, vcmpunord_sps, vcmpunordss,
	vcmpunord_ssd, vcmpunord_sss, vorpd, vorps, vpaddsb, vpaddsw,
	vpaddb, vpaddd, vpaddq, vpaddw, vpaddusb, vpaddusw, vpand,
	vpavgb, vpavgw, vpcmpeqb, vpcmpeqd, vpcmpeqw, vpmaddwd,
	vpmaxsw, vpmaxub, vpminsw, vpminub, vpmulhuw, vpmulhw, vpmullw,
	vpmuludq, vpor, vpxor, vxorpd, vxorps): Add C to VEX-encoded
	flavors.
	* i386-tbl.h: Re-generate.

2019-07-01  Jan Beulich  <jbeulich@suse.com>

	* i386-opc.tbl (and, or): Add Optimize to forms allowing two
	register operands.
	* i386-tbl.h: Re-generate.

2019-07-01  Jan Beulich  <jbeulich@suse.com>

	* i386-dis-evex-prefix.h: Use PCLMUL for vpclmulqdq.
	* i386-opc.tbl (vpclmullqlqdq, vpclmulhqlqdq, vpclmullqhqdq,
	vpclmulhqhqdq): Add CpuVPCLMULQDQ flavors.
	* i386-tbl.h: Re-generate.

2019-07-01  Jan Beulich  <jbeulich@suse.com>

	* i386-opc.tbl (vextractps, vpextrw, vpinsrw): Remove
	Disp8MemShift from register only templates.
	* i386-tbl.h: Re-generate.

2019-07-01  Jan Beulich  <jbeulich@suse.com>

	* i386-dis.c (EXdScalarS, MOD_EVEX_0F10_PREFIX_1,
	MOD_EVEX_0F10_PREFIX_3, MOD_EVEX_0F11_PREFIX_1,
	MOD_EVEX_0F11_PREFIX_3, EVEX_W_0F10_P_1_M_0,
	EVEX_W_0F10_P_1_M_1, EVEX_W_0F10_P_3_M_0, EVEX_W_0F10_P_3_M_1,
	EVEX_W_0F11_P_1_M_0, EVEX_W_0F11_P_1_M_1, EVEX_W_0F11_P_3_M_0,
	EVEX_W_0F11_P_3_M_1): Delete.
	(EVEX_W_0F10_P_1, EVEX_W_0F10_P_3, EVEX_W_0F11_P_1,
	EVEX_W_0F11_P_3): New.
	* i386-dis-evex-mod.h: Remove MOD_EVEX_0F10_PREFIX_1,
	MOD_EVEX_0F10_PREFIX_3, MOD_EVEX_0F11_PREFIX_1, and
	MOD_EVEX_0F11_PREFIX_3 table entries.
	* i386-dis-evex-prefix.h: Adjust PREFIX_EVEX_0F10 and
	PREFIX_EVEX_0F11 table entries.
	* i386-dis-evex-w.h: Replace EVEX_W_0F10_P_1_M_{0,1},
	EVEX_W_0F10_P_3_M_{0,1}, EVEX_W_0F11_P_1_M_{0,1}, and
	EVEX_W_0F11_P_3_M_{0,1} table entries.

2019-07-01  Jan Beulich  <jbeulich@suse.com>

	* i386-dis.c (EXdVex, EXdVexS, EXqVex, EXqVexS, XMVex):
	Delete.

2019-06-27  H.J. Lu  <hongjiu.lu@intel.com>

	PR binutils/24719
	* i386-dis-evex-len.h: Add EVEX_LEN_0F38C6_REG_1_PREFIX_2,
	EVEX_LEN_0F38C6_REG_2_PREFIX_2, EVEX_LEN_0F38C6_REG_5_PREFIX_2,
	EVEX_LEN_0F38C6_REG_6_PREFIX_2, EVEX_LEN_0F38C7_R_1_P_2_W_0,
	EVEX_LEN_0F38C7_R_1_P_2_W_1, EVEX_LEN_0F38C7_R_2_P_2_W_0,
	EVEX_LEN_0F38C7_R_2_P_2_W_1, EVEX_LEN_0F38C7_R_5_P_2_W_0,
	EVEX_LEN_0F38C7_R_5_P_2_W_1, EVEX_LEN_0F38C7_R_6_P_2_W_0 and
	EVEX_LEN_0F38C7_R_6_P_2_W_1.
	* i386-dis-evex-prefix.h: Update PREFIX_EVEX_0F38C6_REG_1,
	PREFIX_EVEX_0F38C6_REG_2, PREFIX_EVEX_0F38C6_REG_5 and
	PREFIX_EVEX_0F38C6_REG_6 entries.
	* i386-dis-evex-w.h: Update EVEX_W_0F38C7_R_1_P_2,
	EVEX_W_0F38C7_R_2_P_2, EVEX_W_0F38C7_R_5_P_2 and
	EVEX_W_0F38C7_R_6_P_2 entries.
	* i386-dis.c: Add EVEX_LEN_0F38C6_REG_1_PREFIX_2,
	EVEX_LEN_0F38C6_REG_2_PREFIX_2, EVEX_LEN_0F38C6_REG_5_PREFIX_2,
	EVEX_LEN_0F38C6_REG_6_PREFIX_2, EVEX_LEN_0F38C7_R_1_P_2_W_0,
	EVEX_LEN_0F38C7_R_1_P_2_W_1, EVEX_LEN_0F38C7_R_2_P_2_W_0,
	EVEX_LEN_0F38C7_R_2_P_2_W_1, EVEX_LEN_0F38C7_R_5_P_2_W_0,
	EVEX_LEN_0F38C7_R_5_P_2_W_1, EVEX_LEN_0F38C7_R_6_P_2_W_0 and
	EVEX_LEN_0F38C7_R_6_P_2_W_1 enums.

2019-06-27  Jan Beulich  <jbeulich@suse.com>

	* i386-dis.c (VEX_LEN_0F2A_P_1, VEX_LEN_0F2A_P_3,
	VEX_LEN_0F2C_P_1, VEX_LEN_0F2C_P_3, VEX_LEN_0F2D_P_1,
	VEX_LEN_0F2D_P_3): Delete.
	(vex_len_table): Move vcvtsi2ss, vcvtsi2sd, vcvttss2si,
	vcvttsd2si, vcvtss2si, and vcvtsd2si leaf entries ...
	(prefix_table): ... here.

2019-06-27  Jan Beulich  <jbeulich@suse.com>

	* i386-dis.c (Iq): Delete.
	(Id): New.
	(reg_table): Use it for lwpins, lwpval, and bextr. Use Edq for
	TBM insns.
	(vex_len_table): Use Edq for vcvtsi2ss, vcvtsi2sd. Use Gdq for
	vcvttss2si, vcvttsd2si, vcvtss2si, and vcvtsd2si.
	(OP_E_memory): Also honor needindex when deciding whether an
	address size prefix needs printing.
	(OP_I): Remove handling of q_mode. Add handling of d_mode.

2019-06-26  Jim Wilson  <jimw@sifive.com>

	PR binutils/24739
	* riscv-dis.c (riscv_disasemble_insn): Set info->endian_code.
	Set info->display_endian to info->endian_code.

2019-06-25  Jan Beulich  <jbeulich@suse.com>

	* i386-gen.c (operand_type_init): Correct OPERAND_TYPE_DEBUG
	entry. Drop OPERAND_TYPE_ACC entry. Add OPERAND_TYPE_ACC8 and
	OPERAND_TYPE_ACC16 entries. Adjust OPERAND_TYPE_ACC32 and
	OPERAND_TYPE_ACC64 entries.
	* i386-init.h: Re-generate.

2019-06-25  Jan Beulich  <jbeulich@suse.com>

	* i386-dis.c (Edqa, dqa_mode, EVEX_W_0F2A_P_1, EVEX_W_0F7B_P_1):
	Delete.
	(intel_operand_size, OP_E_register, OP_E_memory): Drop handling
	of dqa_mode.
	* i386-dis-evex-prefix.h: Move vcvtsi2ss and vcvtusi2ss leaf
	entries here.
	* i386-dis-evex-w.h: Drop EVEX_W_0F2A_P_1 and EVEX_W_0F7B_P_1
	entries. Use Edq for vcvtsi2sd and vcvtusi2sd.

2019-06-25  Jan Beulich  <jbeulich@suse.com>

	* i386-dis.c (OP_I64): Forword more cases to OP_I(). Drop local
	variables.

2019-06-25  Jan Beulich  <jbeulich@suse.com>

	* i386-dis.c (prefix_table): Use Edq for cvtsi2ss and cvtsi2sd.
	Use Gdq for cvttss2si, cvttsd2si, cvtss2si, and cvtsd2si, and
	movnti.
	* i386-opc.tbl (movnti): Add IgnoreSize.
	* i386-tbl.h: Re-generate.

2019-06-25  Jan Beulich  <jbeulich@suse.com>

	* i386-opc.tbl (and): Mark Imm8S form for optimization.
	* i386-tbl.h: Re-generate.

2019-06-21  H.J. Lu  <hongjiu.lu@intel.com>

	* i386-dis-evex.h: Break into ...
	* i386-dis-evex-len.h: New file.
	* i386-dis-evex-mod.h: Likewise.
	* i386-dis-evex-prefix.h: Likewise.
	* i386-dis-evex-reg.h: Likewise.
	* i386-dis-evex-w.h: Likewise.
	* i386-dis.c: Include i386-dis-evex-reg.h, i386-dis-evex-prefix.h,
	i386-dis-evex.h, i386-dis-evex-len.h, i386-dis-evex-w.h and
	i386-dis-evex-mod.h.

2019-06-19  H.J. Lu  <hongjiu.lu@intel.com>

	PR binutils/24700
	* i386-dis-evex.h (evex_table): Update EVEX_W_0F3819_P_2,
	EVEX_W_0F381A_P_2, EVEX_W_0F381B_P_2, EVEX_W_0F385A_P_2 and
	EVEX_W_0F385B_P_2.
	(evex_len_table): Add EVEX_LEN_0F3819_P_2_W_0,
	EVEX_LEN_0F3819_P_2_W_1, EVEX_LEN_0F381A_P_2_W_0,
	EVEX_LEN_0F381A_P_2_W_1, EVEX_LEN_0F381B_P_2_W_0,
	EVEX_LEN_0F381B_P_2_W_1, EVEX_LEN_0F385A_P_2_W_0,
	EVEX_LEN_0F385A_P_2_W_1, EVEX_LEN_0F385B_P_2_W_0 and
	EVEX_LEN_0F385B_P_2_W_1.
	* i386-dis.c (EVEX_LEN_0F3819_P_2_W_0): New enum.
	(EVEX_LEN_0F3819_P_2_W_1): Likewise.
	(EVEX_LEN_0F381A_P_2_W_0): Likewise.
	(EVEX_LEN_0F381A_P_2_W_1): Likewise.
	(EVEX_LEN_0F381B_P_2_W_0): Likewise.
	(EVEX_LEN_0F381B_P_2_W_1): Likewise.
	(EVEX_LEN_0F385A_P_2_W_0): Likewise.
	(EVEX_LEN_0F385A_P_2_W_1): Likewise.
	(EVEX_LEN_0F385B_P_2_W_0): Likewise.
	(EVEX_LEN_0F385B_P_2_W_1): Likewise.

2019-06-17  H.J. Lu  <hongjiu.lu@intel.com>

	PR binutils/24691
	* i386-dis-evex.h (evex_table): Update EVEX_W_0F3A23_P_2,
	EVEX_W_0F3A38_P_2, EVEX_W_0F3A39_P_2, EVEX_W_0F3A3A_P_2,
	EVEX_W_0F3A3B_P_2 and EVEX_W_0F3A43_P_2.
	(evex_len_table): Add EVEX_LEN_0F3A23_P_2_W_0,
	EVEX_LEN_0F3A23_P_2_W_1, EVEX_LEN_0F3A38_P_2_W_0,
	EVEX_LEN_0F3A38_P_2_W_1, EVEX_LEN_0F3A39_P_2_W_0,
	EVEX_LEN_0F3A39_P_2_W_1, EVEX_LEN_0F3A3A_P_2_W_0,
	EVEX_LEN_0F3A3A_P_2_W_1, EVEX_LEN_0F3A3B_P_2_W_0,
	EVEX_LEN_0F3A3B_P_2_W_1, EVEX_LEN_0F3A43_P_2_W_0 and
	EVEX_LEN_0F3A43_P_2_W_1.
	* i386-dis.c (EVEX_LEN_0F3A23_P_2_W_0): New enum.
	(EVEX_LEN_0F3A23_P_2_W_1): Likewise.
	(EVEX_LEN_0F3A38_P_2_W_0): Likewise.
	(EVEX_LEN_0F3A38_P_2_W_1): Likewise.
	(EVEX_LEN_0F3A39_P_2_W_0): Likewise.
	(EVEX_LEN_0F3A39_P_2_W_1): Likewise.
	(EVEX_LEN_0F3A3A_P_2_W_0): Likewise.
	(EVEX_LEN_0F3A3A_P_2_W_1): Likewise.
	(EVEX_LEN_0F3A3B_P_2_W_0): Likewise.
	(EVEX_LEN_0F3A3B_P_2_W_1): Likewise.
	(EVEX_LEN_0F3A43_P_2_W_0): Likewise.
	(EVEX_LEN_0F3A43_P_2_W_1): Likewise.

2019-06-14  Nick Clifton  <nickc@redhat.com>

	* po/fr.po; Updated French translation.

2019-06-13  Stafford Horne  <shorne@gmail.com>

	* or1k-asm.c: Regenerated.
	* or1k-desc.c: Regenerated.
	* or1k-desc.h: Regenerated.
	* or1k-dis.c: Regenerated.
	* or1k-ibld.c: Regenerated.
	* or1k-opc.c: Regenerated.
	* or1k-opc.h: Regenerated.
	* or1k-opinst.c: Regenerated.

2019-06-12  Peter Bergner  <bergner@linux.ibm.com>

	* ppc-opc.c (powerpc_opcodes) <ldmx>: Delete mnemonic.

2019-06-05  H.J. Lu  <hongjiu.lu@intel.com>

	PR binutils/24633
	* i386-dis-evex.h (evex_table): Update EVEX_W_0F3A18_P_2,
	EVEX_W_0F3A19_P_2, EVEX_W_0F3A1A_P_2 and EVEX_W_0F3A1B_P_2.
	(evex_len_table): EVEX_LEN_0F3A18_P_2_W_0,
	EVEX_LEN_0F3A18_P_2_W_1, EVEX_LEN_0F3A19_P_2_W_0,
	EVEX_LEN_0F3A19_P_2_W_1, EVEX_LEN_0F3A1A_P_2_W_0,
	EVEX_LEN_0F3A1A_P_2_W_1, EVEX_LEN_0F3A1B_P_2_W_0,
	EVEX_LEN_0F3A1B_P_2_W_1.
	* i386-dis.c (EVEX_LEN_0F3A18_P_2_W_0): New enum.
	(EVEX_LEN_0F3A18_P_2_W_1): Likewise.
	(EVEX_LEN_0F3A19_P_2_W_0): Likewise.
	(EVEX_LEN_0F3A19_P_2_W_1): Likewise.
	(EVEX_LEN_0F3A1A_P_2_W_0): Likewise.
	(EVEX_LEN_0F3A1A_P_2_W_1): Likewise.
	(EVEX_LEN_0F3A1B_P_2_W_0): Likewise.
	(EVEX_LEN_0F3A1B_P_2_W_1): Likewise.

2019-06-04  H.J. Lu  <hongjiu.lu@intel.com>

	PR binutils/24626
	* i386-dis.c (print_insn): Check for unused VEX.vvvv and
	EVEX.vvvv when disassembling VEX and EVEX instructions.
	(OP_VEX): Set vex.register_specifier to 0 after readding
	vex.register_specifier.
	(OP_Vex_2src_1): Likewise.
	(OP_Vex_2src_2): Likewise.
	(OP_LWP_E): Likewise.
	(OP_EX_Vex): Don't check vex.register_specifier.
	(OP_XMM_Vex): Likewise.

2019-06-04  Igor Tsimbalist  <igor.v.tsimbalist@intel.com>
	    Lili Cui  <lili.cui@intel.com>

	* i386-dis.c (enum): Add PREFIX_EVEX_0F3868, EVEX_W_0F3868_P_3.
	* i386-dis-evex.h (evex_table): Add AVX512_VP2INTERSECT
	instructions.
	* i386-gen.c (cpu_flag_init): Add CPU_AVX512_VP2INTERSECT_FLAGS,
	CPU_ANY_AVX512_VP2INTERSECT_FLAGS.
	(cpu_flags): Add CpuAVX512_VP2INTERSECT.
	* i386-opc.h (enum): Add CpuAVX512_VP2INTERSECT.
	(i386_cpu_flags): Add cpuavx512_vp2intersect.
	* i386-opc.tbl: Add AVX512_VP2INTERSECT insns.
	* i386-init.h: Regenerated.
	* i386-tbl.h: Likewise.

2019-06-04  Xuepeng Guo  <xuepeng.guo@intel.com>
	    Lili Cui  <lili.cui@intel.com>

	* doc/c-i386.texi: Document enqcmd.
	* testsuite/gas/i386/enqcmd-intel.d: New file.
	* testsuite/gas/i386/enqcmd-inval.l: Likewise.
	* testsuite/gas/i386/enqcmd-inval.s: Likewise.
	* testsuite/gas/i386/enqcmd.d: Likewise.
	* testsuite/gas/i386/enqcmd.s: Likewise.
	* testsuite/gas/i386/x86-64-enqcmd-intel.d: Likewise.
	* testsuite/gas/i386/x86-64-enqcmd-inval.l: Likewise.
	* testsuite/gas/i386/x86-64-enqcmd-inval.s: Likewise.
	* testsuite/gas/i386/x86-64-enqcmd.d: Likewise.
	* testsuite/gas/i386/x86-64-enqcmd.s: Likewise.
	* testsuite/gas/i386/i386.exp: Run enqcmd-intel, enqcmd-inval,
	enqcmd, x86-64-enqcmd-intel, x86-64-enqcmd-inval,
	and x86-64-enqcmd.

2019-06-04  Alan Hayward  <alan.hayward@arm.com>

	* arm-dis.c (is_mve_unpredictable): Remove spurious paranthesis.

2019-06-03  Alan Modra  <amodra@gmail.com>

	* ppc-dis.c (prefix_opcd_indices): Correct size.

2019-05-28  H.J. Lu  <hongjiu.lu@intel.com>

	PR gas/24625
	* i386-opc.tbl: Add CheckRegSize to AVX512_BF16 instructions with
	Disp8ShiftVL.
	* i386-tbl.h: Regenerated.

2019-05-24  Alan Modra  <amodra@gmail.com>

	* po/POTFILES.in: Regenerate.

2019-05-24  Peter Bergner  <bergner@linux.ibm.com>
	    Alan Modra  <amodra@gmail.com>

	* ppc-opc.c (insert_d34, extract_d34, insert_nsi34, extract_nsi34),
	(insert_pcrel, extract_pcrel, extract_pcrel0): New functions.
	(extract_esync, extract_raq, extract_tbr, extract_sxl): Comment.
	(powerpc_operands <D34, SI34, NSI34, PRA0, PRAQ, PCREL, PCREL0,
	XTOP>): Define and add entries.
	(P8LS, PMLS, P_D_MASK, P_DRAPCREL_MASK): Define.
	(prefix_opcodes): Add pli, paddi, pla, psubi, plwz, plbz, pstw,
	pstb, plhz, plha, psth, plfs, plfd, pstfs, pstfd, plq, plxsd,
	plxssp, pld, plwa, pstxsd, pstxssp, pstxv, pstd, and pstq.

2019-05-24  Peter Bergner  <bergner@linux.ibm.com>
	    Alan Modra  <amodra@gmail.com>

	* ppc-dis.c (ppc_opts): Add "future" entry.
	(PREFIX_OPCD_SEGS): Define.
	(prefix_opcd_indices): New array.
	(disassemble_init_powerpc): Initialize prefix_opcd_indices.
	(lookup_prefix): New function.
	(print_insn_powerpc): Handle 64-bit prefix instructions.
	* ppc-opc.c (PREFIX_OP, PREFIX_FORM, SUFFIX_MASK, PREFIX_MASK),
	(PMRR, POWERXX): Define.
	(prefix_opcodes): New instruction table.
	(prefix_num_opcodes): New constant.

2019-05-23  Jose E. Marchesi  <jose.marchesi@oracle.com>

	* configure.ac (SHARED_DEPENDENCIES): Add case for bfd_bpf_arch.
	* configure: Regenerated.
	* Makefile.am: Add rules for the files generated from cpu/bpf.cpu
	and cpu/bpf.opc.
	(HFILES): Add bpf-desc.h and bpf-opc.h.
	(TARGET_LIBOPCODES_CFILES): Add bpf-asm.c, bpf-desc.c, bpf-dis.c,
	bpf-ibld.c and bpf-opc.c.
	(BPF_DEPS): Define.
	* Makefile.in: Regenerated.
	* disassemble.c (ARCH_bpf): Define.
	(disassembler): Add case for bfd_arch_bpf.
	(disassemble_init_for_target): Likewise.
	(enum epbf_isa_attr): Define.
	* disassemble.h: extern print_insn_bpf.
	* bpf-asm.c: Generated.
	* bpf-opc.h: Likewise.
	* bpf-opc.c: Likewise.
	* bpf-ibld.c: Likewise.
	* bpf-dis.c: Likewise.
	* bpf-desc.h: Likewise.
	* bpf-desc.c: Likewise.

2019-05-21  Sudakshina Das  <sudi.das@arm.com>

	* arm-dis.c (coprocessor_opcodes): New instructions for VMRS
	and VMSR with the new operands.

2019-05-21  Sudakshina Das  <sudi.das@arm.com>

	* arm-dis.c (enum mve_instructions): New enum
	for csinc, csinv, csneg, csel, cset, csetm, cinv, cinv
	and cneg.
	(mve_opcodes): New instructions as above.
	(is_mve_encoding_conflict): Add cases for csinc, csinv,
	csneg and csel.
	(print_insn_mve): Accept new %<bitfield>c and %<bitfield>C.

2019-05-21  Sudakshina Das  <sudi.das@arm.com>

	* arm-dis.c (emun mve_instructions): Updated for new instructions.
	(mve_opcodes): New instructions for asrl, lsll, lsrl, sqrshrl,
	sqrshr, sqshl, sqshll, srshr, srshrl, uqrshll, uqrshl, uqshll,
	uqshl, urshrl and urshr.
	(is_mve_okay_in_it): Add new instructions to TRUE list.
	(is_mve_unpredictable): Add cases for UNPRED_R13 and UNPRED_R15.
	(print_insn_mve): Updated to accept new %j,
	%<bitfield>m and %<bitfield>n patterns.

2019-05-21  Faraz Shahbazker  <fshahbazker@wavecomp.com>

	* mips-opc.c (mips_builtin_opcodes): Change source register
	constraint for DAUI.

2019-05-20  Nick Clifton  <nickc@redhat.com>

	* po/fr.po: Updated French translation.

2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
	    Michael Collison <michael.collison@arm.com>

	* arm-dis.c (thumb32_opcodes): Add new instructions.
	(enum mve_instructions): Likewise.
	(enum mve_undefined): Add new reasons.
	(is_mve_encoding_conflict): Handle new instructions.
	(is_mve_undefined): Likewise.
	(is_mve_unpredictable): Likewise.
	(print_mve_undefined): Likewise.
	(print_mve_size): Likewise.

2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
	    Michael Collison <michael.collison@arm.com>

	* arm-dis.c (thumb32_opcodes): Add new instructions.
	(enum mve_instructions): Likewise.
	(is_mve_encoding_conflict): Handle new instructions.
	(is_mve_undefined): Likewise.
	(is_mve_unpredictable): Likewise.
	(print_mve_size): Likewise.

2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
	    Michael Collison <michael.collison@arm.com>

	* arm-dis.c (thumb32_opcodes): Add new instructions.
	(enum mve_instructions): Likewise.
	(is_mve_encoding_conflict): Likewise.
	(is_mve_unpredictable): Likewise.
	(print_mve_size): Likewise.

2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
	    Michael Collison <michael.collison@arm.com>

	* arm-dis.c (thumb32_opcodes): Add new instructions.
	(enum mve_instructions): Likewise.
	(is_mve_encoding_conflict): Handle new instructions.
	(is_mve_undefined): Likewise.
	(is_mve_unpredictable): Likewise.
	(print_mve_size): Likewise.

2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
	    Michael Collison <michael.collison@arm.com>

	* arm-dis.c (thumb32_opcodes): Add new instructions.
	(enum mve_instructions): Likewise.
	(is_mve_encoding_conflict): Handle new instructions.
	(is_mve_undefined): Likewise.
	(is_mve_unpredictable): Likewise.
	(print_mve_size): Likewise.
	(print_insn_mve): Likewise.

2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
	    Michael Collison <michael.collison@arm.com>

	* arm-dis.c (thumb32_opcodes): Add new instructions.
	(print_insn_thumb32): Handle new instructions.

2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
	    Michael Collison <michael.collison@arm.com>

	* arm-dis.c (enum mve_instructions): Add new instructions.
	(enum mve_undefined): Add new reasons.
	(is_mve_encoding_conflict): Handle new instructions.
	(is_mve_undefined): Likewise.
	(is_mve_unpredictable): Likewise.
	(print_mve_undefined): Likewise.
	(print_mve_size): Likewise.
	(print_mve_shift_n): Likewise.
	(print_insn_mve): Likewise.

2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
	    Michael Collison <michael.collison@arm.com>

	* arm-dis.c (enum mve_instructions): Add new instructions.
	(is_mve_encoding_conflict): Handle new instructions.
	(is_mve_unpredictable): Likewise.
	(print_mve_rotate): Likewise.
	(print_mve_size): Likewise.
	(print_insn_mve): Likewise.

2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
	    Michael Collison <michael.collison@arm.com>

	* arm-dis.c (enum mve_instructions): Add new instructions.
	(is_mve_encoding_conflict): Handle new instructions.
	(is_mve_unpredictable): Likewise.
	(print_mve_size): Likewise.
	(print_insn_mve): Likewise.

2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
	    Michael Collison <michael.collison@arm.com>

	* arm-dis.c (enum mve_instructions): Add new instructions.
	(enum mve_undefined): Add new reasons.
	(is_mve_encoding_conflict): Handle new instructions.
	(is_mve_undefined): Likewise.
	(is_mve_unpredictable): Likewise.
	(print_mve_undefined): Likewise.
	(print_mve_size): Likewise.
	(print_insn_mve): Likewise.

2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
	    Michael Collison <michael.collison@arm.com>

	* arm-dis.c (enum mve_instructions): Add new instructions.
	(is_mve_encoding_conflict): Handle new instructions.
	(is_mve_undefined): Likewise.
	(is_mve_unpredictable): Likewise.
	(print_mve_size): Likewise.
	(print_insn_mve): Likewise.

2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
	    Michael Collison <michael.collison@arm.com>

	* arm-dis.c (enum mve_instructions): Add new instructions.
	(enum mve_unpredictable): Add new reasons.
	(enum mve_undefined): Likewise.
	(is_mve_okay_in_it): Handle new isntructions.
	(is_mve_encoding_conflict): Likewise.
	(is_mve_undefined): Likewise.
	(is_mve_unpredictable): Likewise.
	(print_mve_vmov_index): Likewise.
	(print_simd_imm8): Likewise.
	(print_mve_undefined): Likewise.
	(print_mve_unpredictable): Likewise.
	(print_mve_size): Likewise.
	(print_insn_mve): Likewise.

2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
	    Michael Collison <michael.collison@arm.com>

	* arm-dis.c (enum mve_instructions): Add new instructions.
	(enum mve_unpredictable): Add new reasons.
	(enum mve_undefined): Likewise.
	(is_mve_encoding_conflict): Handle new instructions.
	(is_mve_undefined): Likewise.
	(is_mve_unpredictable): Likewise.
	(print_mve_undefined): Likewise.
	(print_mve_unpredictable): Likewise.
	(print_mve_rounding_mode): Likewise.
	(print_mve_vcvt_size): Likewise.
	(print_mve_size): Likewise.
	(print_insn_mve): Likewise.

2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
	    Michael Collison <michael.collison@arm.com>

	* arm-dis.c (enum mve_instructions): Add new instructions.
	(enum mve_unpredictable): Add new reasons.
	(enum mve_undefined): Likewise.
	(is_mve_undefined): Handle new instructions.
	(is_mve_unpredictable): Likewise.
	(print_mve_undefined): Likewise.
	(print_mve_unpredictable): Likewise.
	(print_mve_size): Likewise.
	(print_insn_mve): Likewise.

2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
	    Michael Collison <michael.collison@arm.com>

	* arm-dis.c (enum mve_instructions): Add new instructions.
	(enum mve_undefined): Add new reasons.
	(insns): Add new instructions.
	(is_mve_encoding_conflict):
	(print_mve_vld_str_addr): New print function.
	(is_mve_undefined): Handle new instructions.
	(is_mve_unpredictable): Likewise.
	(print_mve_undefined): Likewise.
	(print_mve_size): Likewise.
	(print_insn_coprocessor_1): Handle MVE VLDR, VSTR instructions.
	(print_insn_mve):  Handle new operands.

2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
	    Michael Collison <michael.collison@arm.com>

	* arm-dis.c (enum mve_instructions): Add new instructions.
	(enum mve_unpredictable): Add new reasons.
	(is_mve_encoding_conflict): Handle new instructions.
	(is_mve_unpredictable): Likewise.
	(mve_opcodes): Add new instructions.
	(print_mve_unpredictable): Handle new reasons.
	(print_mve_register_blocks): New print function.
	(print_mve_size): Handle new instructions.
	(print_insn_mve): Likewise.

2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
	    Michael Collison <michael.collison@arm.com>

	* arm-dis.c (enum mve_instructions): Add new instructions.
	(enum mve_unpredictable): Add new reasons.
	(enum mve_undefined): Likewise.
	(is_mve_encoding_conflict): Handle new instructions.
	(is_mve_undefined): Likewise.
	(is_mve_unpredictable): Likewise.
	(coprocessor_opcodes): Move NEON VDUP from here...
	(neon_opcodes): ... to here.
	(mve_opcodes): Add new instructions.
	(print_mve_undefined):  Handle new reasons.
	(print_mve_unpredictable): Likewise.
	(print_mve_size): Handle new instructions.
	(print_insn_neon): Handle vdup.
	(print_insn_mve): Handle new operands.

2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
	    Michael Collison <michael.collison@arm.com>

	* arm-dis.c (enum mve_instructions): Add new instructions.
	(enum mve_unpredictable): Add new values.
	(mve_opcodes): Add new instructions.
	(vec_condnames): New array with vector conditions.
	(mve_predicatenames): New array with predicate suffixes.
	(mve_vec_sizename): New array with vector sizes.
	(enum vpt_pred_state): New enum with vector predication states.
	(struct vpt_block): New struct type for vpt blocks.
	(vpt_block_state): Global struct to keep track of state.
	(mve_extract_pred_mask): New helper function.
	(num_instructions_vpt_block): Likewise.
	(mark_outside_vpt_block): Likewise.
	(mark_inside_vpt_block): Likewise.
	(invert_next_predicate_state): Likewise.
	(update_next_predicate_state): Likewise.
	(update_vpt_block_state): Likewise.
	(is_vpt_instruction): Likewise.
	(is_mve_encoding_conflict): Add entries for new instructions.
	(is_mve_unpredictable): Likewise.
	(print_mve_unpredictable): Handle new cases.
	(print_instruction_predicate): Likewise.
	(print_mve_size): New function.
	(print_vec_condition): New function.
	(print_insn_mve): Handle vpt blocks and new print operands.

2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>

	* arm-dis.c (print_insn_coprocessor_1): Disable the use of coprocessors
	8, 14 and 15 for Armv8.1-M Mainline.

2019-05-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>
	    Michael Collison <michael.collison@arm.com>

	* arm-dis.c (enum mve_instructions): New enum.
	(enum mve_unpredictable): Likewise.
	(enum mve_undefined): Likewise.
	(struct mopcode32): New struct.
	(is_mve_okay_in_it): New function.
	(is_mve_architecture): Likewise.
	(arm_decode_field): Likewise.
	(arm_decode_field_multiple): Likewise.
	(is_mve_encoding_conflict): Likewise.
	(is_mve_undefined): Likewise.
	(is_mve_unpredictable): Likewise.
	(print_mve_undefined): Likewise.
	(print_mve_unpredictable): Likewise.
	(print_insn_coprocessor_1): Use arm_decode_field_multiple.
	(print_insn_mve): New function.
	(print_insn_thumb32): Handle MVE architecture.
	(select_arm_features): Force thumb for Armv8.1-m Mainline.

2019-05-10  Nick Clifton  <nickc@redhat.com>

	PR 24538
	* ia64-opc.c (ia64_find_matching_opcode): Check for reaching the
	end of the table prematurely.

2019-05-10  Faraz Shahbazker  <fshahbazker@wavecomp.com>

        * mips-opc.c (mips_opcodes): Enable ADD, SUB, DADD and DSUB
	macros for R6.

2019-05-11  Alan Modra  <amodra@gmail.com>

	* ppc-dis.c (print_insn_powerpc) Don't skip optional operands
	when -Mraw is in effect.

2019-05-09  Matthew Malcomson  <matthew.malcomson@arm.com>

	* aarch64-dis-2.c: Regenerate.
	* aarch64-tbl.h (OP_SVE_BBU): New variant set.
	(OP_SVE_BBB): New variant set.
	(OP_SVE_DDDD): New variant set.
	(OP_SVE_HHH): New variant set.
	(OP_SVE_HHHU): New variant set.
	(OP_SVE_SSS): New variant set.
	(OP_SVE_SSSU): New variant set.
	(OP_SVE_SHH): New variant set.
	(OP_SVE_SBBU): New variant set.
	(OP_SVE_DSS): New variant set.
	(OP_SVE_DHHU): New variant set.
	(OP_SVE_VMV_HSD_BHS): New variant set.
	(OP_SVE_VVU_HSD_BHS): New variant set.
	(OP_SVE_VVVU_SD_BH): New variant set.
	(OP_SVE_VVVU_BHSD): New variant set.
	(OP_SVE_VVV_QHD_DBS): New variant set.
	(OP_SVE_VVV_HSD_BHS): New variant set.
	(OP_SVE_VVV_HSD_BHS2): New variant set.
	(OP_SVE_VVV_BHS_HSD): New variant set.
	(OP_SVE_VV_BHS_HSD): New variant set.
	(OP_SVE_VVV_SD): New variant set.
	(OP_SVE_VVU_BHS_HSD): New variant set.
	(OP_SVE_VZVV_SD): New variant set.
	(OP_SVE_VZVV_BH): New variant set.
	(OP_SVE_VZV_SD): New variant set.
	(aarch64_opcode_table): Add sve2 instructions.

2019-05-09  Matthew Malcomson  <matthew.malcomson@arm.com>

	* aarch64-asm-2.c: Regenerated.
	* aarch64-dis-2.c: Regenerated.
	* aarch64-opc-2.c: Regenerated.
	* aarch64-opc.c (operand_general_constraint_met_p): Constraint checking
	for SVE_SHLIMM_UNPRED_22.
	(aarch64_print_operand): Add printing for SVE_SHLIMM_UNPRED_22.
	* aarch64-tbl.h (AARCH64_OPERANDS): Use new SVE_SHLIMM_UNPRED_22
	operand.

2019-05-09  Matthew Malcomson  <matthew.malcomson@arm.com>

	* aarch64-asm.c (aarch64_encode_variant_using_iclass): Handle
	sve_size_tsz_bhs iclass encode.
	* aarch64-dis.c (aarch64_decode_variant_using_iclass): Handle
	sve_size_tsz_bhs iclass decode.

2019-05-09  Matthew Malcomson  <matthew.malcomson@arm.com>

	* aarch64-asm-2.c: Regenerated.
	* aarch64-dis-2.c: Regenerated.
	* aarch64-opc-2.c: Regenerated.
	* aarch64-opc.c (operand_general_constraint_met_p): Constraint checking
	for SVE_Zm4_11_INDEX.
	(aarch64_print_operand): Add printing for SVE_Zm4_11_INDEX.
	(fields): Handle SVE_i2h field.
	* aarch64-opc.h (enum aarch64_field_kind): New SVE_i2h field.
	* aarch64-tbl.h (AARCH64_OPERANDS): Use new SVE_Zm4_11_INDEX operand.

2019-05-09  Matthew Malcomson  <matthew.malcomson@arm.com>

	* aarch64-asm.c (aarch64_encode_variant_using_iclass): Handle
	sve_shift_tsz_bhsd iclass encode.
	* aarch64-dis.c (aarch64_decode_variant_using_iclass): Handle
	sve_shift_tsz_bhsd iclass decode.

2019-05-09  Matthew Malcomson  <matthew.malcomson@arm.com>

	* aarch64-asm-2.c: Regenerated.
	* aarch64-dis-2.c: Regenerated.
	* aarch64-opc-2.c: Regenerated.
	* aarch64-asm.c (aarch64_ins_sve_shrimm):
	(aarch64_encode_variant_using_iclass): Handle
	sve_shift_tsz_hsd iclass encode.
	* aarch64-dis.c (aarch64_decode_variant_using_iclass): Handle
	sve_shift_tsz_hsd iclass decode.
	* aarch64-opc.c (operand_general_constraint_met_p): Constraint checking
	for SVE_SHRIMM_UNPRED_22.
	(aarch64_print_operand): Add printing for SVE_SHRIMM_UNPRED_22.
	* aarch64-tbl.h (AARCH64_OPERANDS): Use new SVE_SHRIMM_UNPRED_22
	operand.

2019-05-09  Matthew Malcomson  <matthew.malcomson@arm.com>

	* aarch64-asm.c (aarch64_encode_variant_using_iclass): Handle
	sve_size_013 iclass encode.
	* aarch64-dis.c (aarch64_decode_variant_using_iclass): Handle
	sve_size_013 iclass decode.

2019-05-09  Matthew Malcomson  <matthew.malcomson@arm.com>

	* aarch64-asm.c (aarch64_encode_variant_using_iclass): Handle
	sve_size_bh iclass encode.
	* aarch64-dis.c (aarch64_decode_variant_using_iclass): Handle
	sve_size_bh iclass decode.

2019-05-09  Matthew Malcomson  <matthew.malcomson@arm.com>

	* aarch64-asm.c (aarch64_encode_variant_using_iclass): Handle
	sve_size_sd2 iclass encode.
	* aarch64-dis.c (aarch64_decode_variant_using_iclass): Handle
	sve_size_sd2 iclass decode.
	* aarch64-opc.c (fields): Handle SVE_sz2 field.
	* aarch64-opc.h (enum aarch64_field_kind): New SVE_sz2 field.

2019-05-09  Matthew Malcomson  <matthew.malcomson@arm.com>

	* aarch64-asm-2.c: Regenerated.
	* aarch64-dis-2.c: Regenerated.
	* aarch64-opc-2.c: Regenerated.
	* aarch64-opc.c (operand_general_constraint_met_p): Constraint checking
	for SVE_ADDR_ZX.
	(aarch64_print_operand): Add printing for SVE_ADDR_ZX.
	* aarch64-tbl.h (AARCH64_OPERANDS): Use new SVE_ADDR_ZX operand.

2019-05-09  Matthew Malcomson  <matthew.malcomson@arm.com>

	* aarch64-asm-2.c: Regenerated.
	* aarch64-dis-2.c: Regenerated.
	* aarch64-opc-2.c: Regenerated.
	* aarch64-opc.c (operand_general_constraint_met_p): Constraint checking
	for SVE_Zm3_11_INDEX.
	(aarch64_print_operand): Add printing for SVE_Zm3_11_INDEX.
	(fields): Handle SVE_i3l and SVE_i3h2 fields.
	* aarch64-opc.h (enum aarch64_field_kind): New SVE_i3l and SVE_i3h2
	fields.
	* aarch64-tbl.h (AARCH64_OPERANDS): Use new SVE_Zm3_11_INDEX operand.

2019-05-09  Matthew Malcomson  <matthew.malcomson@arm.com>

	* aarch64-asm.c (aarch64_encode_variant_using_iclass): Handle
	sve_size_hsd2 iclass encode.
	* aarch64-dis.c (aarch64_decode_variant_using_iclass): Handle
	sve_size_hsd2 iclass decode.
	* aarch64-opc.c (fields): Handle SVE_size field.
	* aarch64-opc.h (enum aarch64_field_kind): New SVE_size field.

2019-05-09  Matthew Malcomson  <matthew.malcomson@arm.com>

	* aarch64-asm-2.c: Regenerated.
	* aarch64-dis-2.c: Regenerated.
	* aarch64-opc-2.c: Regenerated.
	* aarch64-opc.c (operand_general_constraint_met_p): Constraint checking
	for SVE_IMM_ROT3.
	(aarch64_print_operand): Add printing for SVE_IMM_ROT3.
	(fields): Handle SVE_rot3 field.
	* aarch64-opc.h (enum aarch64_field_kind): New SVE_rot3 field.
	* aarch64-tbl.h (AARCH64_OPERANDS): Use new SVE_IMM_ROT3 operand.

2019-05-09  Matthew Malcomson  <matthew.malcomson@arm.com>

	* aarch64-opc.c (verify_constraints): Check for movprfx for sve2
	instructions.

2019-05-09  Matthew Malcomson  <matthew.malcomson@arm.com>

	* aarch64-tbl.h
	(aarch64_feature_sve2, aarch64_feature_sve2aes,
	aarch64_feature_sve2sha3, aarch64_feature_sve2sm4,
	aarch64_feature_sve2bitperm): New feature sets.
	(SVE2, SVE2_AES, SVE2_SHA3, SVE2_SM4, SVE2_BITPERM): New macros
	for feature set addresses.
	(SVE2_INSN, SVE2_INSNC, SVE2AES_INSN, SVE2SHA3_INSN,
	SVE2SM4_INSN, SVE2SM4_INSNC, SVE2BITPERM_INSN): New macros.

2019-05-06  Andrew Bennett  <andrew.bennett@imgtec.com>
	    Faraz Shahbazker  <fshahbazker@wavecomp.com>

	* mips-dis.c (mips_calculate_combination_ases): Add ISA
	argument and set ASE_EVA_R6 appropriately.
	(set_default_mips_dis_options): Pass ISA to above.
	(parse_mips_dis_option): Likewise.
	* mips-opc.c (EVAR6): New macro.
	(mips_builtin_opcodes): Add llwpe, scwpe.

2019-05-01  Sudakshina Das  <sudi.das@arm.com>

	* aarch64-asm-2.c: Regenerated.
	* aarch64-dis-2.c: Regenerated.
	* aarch64-opc-2.c: Regenerated.
	* aarch64-opc.c (operand_general_constraint_met_p): Add case for
	AARCH64_OPND_TME_UIMM16.
	(aarch64_print_operand): Likewise.
	* aarch64-tbl.h (QL_IMM_NIL): New.
	(TME): New.
	(_TME_INSN): New.
	(struct aarch64_opcode): Add tstart, tcommit, ttest and tcancel.

2019-04-29  John Darrington  <john@darrington.wattle.id.au>

        * s12z-opc.c (shift_discrim): Return OP_INVALID when reading fails.

2019-04-26  Andrew Bennett  <andrew.bennett@imgtec.com>
	    Faraz Shahbazker  <fshahbazker@wavecomp.com>

	* mips-opc.c (mips_builtin_opcodes): Add llwp, lldp, scwp, scdp.

2019-04-24  John Darrington  <john@darrington.wattle.id.au>

        * s12z-opc.h: Add extern "C" bracketing to help
	users who wish to use this interface in c++ code.

2019-04-24  John Darrington  <john@darrington.wattle.id.au>

	* s12z-opc.c (bm_decode): Handle bit map operations with the
	"reserved0" mode.

2019-04-15  Thomas Preud'homme  <thomas.preudhomme@arm.com>

	* arm-dis.c (coprocessor_opcodes): Document new %J and %K format
	specifier.  Add entries for VLDR and VSTR of system registers.
	(print_insn_coprocessor): Forbid coprocessor numbers 8, 14 and 15 in
	coprocessor instructions on Armv8.1-M Mainline targets.  Add handling
	of %J and %K format specifier.

2019-04-15  Thomas Preud'homme  <thomas.preudhomme@arm.com>

	* arm-dis.c (coprocessor_opcodes): Document new %C format control code.
	Add new entries for VSCCLRM instruction.
	(print_insn_coprocessor): Handle new %C format control code.

2019-04-15  Thomas Preud'homme  <thomas.preudhomme@arm.com>

	* arm-dis.c (enum isa): New enum.
	(struct sopcode32): New structure.
	(coprocessor_opcodes): change type of entries to struct sopcode32 and
	set isa field of all current entries to ANY.
	(print_insn_coprocessor): Change type of insn to struct sopcode32.
	Only match an entry if its isa field allows the current mode.

2019-04-15  Thomas Preud'homme  <thomas.preudhomme@arm.com>

	* arm-dis.c (thumb_opcodes): Document %n control code.  Add entry for
	CLRM.
	(print_insn_thumb32): Add logic to print %n CLRM register list.

2019-04-15  Sudakshina Das  <sudi.das@arm.com>

	* arm-dis.c (print_insn_thumb32): Updated to accept new %P
	and %Q patterns.

2019-04-15  Sudakshina Das  <sudi.das@arm.com>

	* arm-dis.c (thumb32_opcodes): New instruction bfcsel.
	(print_insn_thumb32): Edit the switch case for %Z.

2019-04-15  Sudakshina Das  <sudi.das@arm.com>

	* arm-dis.c (print_insn_thumb32): Updated to accept new %Z pattern.

2019-04-15  Sudakshina Das  <sudi.das@arm.com>

	* arm-dis.c (thumb32_opcodes): New instruction bfl.

2019-04-15  Sudakshina Das  <sudi.das@arm.com>

	* arm-dis.c (print_insn_thumb32): Updated to accept new %Y pattern.

2019-04-15  Sudakshina Das  <sudi.das@arm.com>

	* arm-dis.c (print_insn_thumb32): Add '%<bitfield>S' to print an
	Arm register with r13 and r15 unpredictable.
	(thumb32_opcodes): New instructions for bfx and bflx.

2019-04-15  Sudakshina Das  <sudi.das@arm.com>

	* arm-dis.c (thumb32_opcodes): New instructions for bf.

2019-04-15  Sudakshina Das  <sudi.das@arm.com>

	* arm-dis.c (print_insn_thumb32): Updated to accept new %W pattern.

2019-04-15  Sudakshina Das  <sudi.das@arm.com>

	* arm-dis.c (print_insn_thumb32): Updated to accept new %G pattern.

2019-04-15  Thomas Preud'homme  <thomas.preudhomme@arm.com>

	* arm-dis.c (select_arm_features): Add logic for Armv8.1-M Mainline.

2019-04-12  John Darrington <john@darrington.wattle.id.au>

	s12z-dis.c, s12z-opc.c, s12z-opc.h: Replace "operator" with
	"optr". ("operator" is a reserved word in c++).

2019-04-11  Sudakshina Das  <sudi.das@arm.com>

	* aarch64-opc.c (aarch64_print_operand): Add case for
	AARCH64_OPND_Rt_SP.
	(verify_constraints): Likewise.
	* aarch64-tbl.h (QL_LDST_AT): Update to add SP qualifier.
	(struct aarch64_opcode): Update stg, stzg, st2g, stz2g instructions
	to accept Rt|SP as first operand.
	(AARCH64_OPERANDS): Add new Rt_SP.
	* aarch64-asm-2.c: Regenerated.
	* aarch64-dis-2.c: Regenerated.
	* aarch64-opc-2.c: Regenerated.

2019-04-11  Sudakshina Das  <sudi.das@arm.com>

	* aarch64-asm-2.c: Regenerated.
	* aarch64-dis-2.c: Likewise.
	* aarch64-opc-2.c: Likewise.
	* aarch64-tbl.h (aarch64_opcode): Add new ldgm and stgm.

2019-04-09  Robert Suchanek  <robert.suchanek@mips.com>

	* mips-opc.c (mips_builtin_opcodes): Add RDHWR rt rd sel.

2019-04-08  H.J. Lu  <hongjiu.lu@intel.com>

	* i386-opc.tbl: Consolidate AVX512 BF16 entries.
	* i386-init.h: Regenerated.

2019-04-07  Alan Modra  <amodra@gmail.com>

	* ppc-dis.c (print_insn_powerpc): Use a tiny state machine
	op_separator to control printing of spaces, comma and parens
	rather than need_comma, need_paren and spaces vars.

2019-04-07  Alan Modra  <amodra@gmail.com>

	PR 24421
	* arm-dis.c (print_insn_coprocessor): Correct bracket placement.
	(print_insn_neon, print_insn_arm): Likewise.

2019-04-05  Xuepeng Guo  <xuepeng.guo@intel.com>

	* i386-dis-evex.h (evex_table): Updated to support BF16
	instructions.
	* i386-dis.c (enum): Add EVEX_W_0F3852_P_1, EVEX_W_0F3872_P_1
	and EVEX_W_0F3872_P_3.
	* i386-gen.c (cpu_flag_init): Add CPU_AVX512_BF16_FLAGS.
	(cpu_flags): Add bitfield for CpuAVX512_BF16.
	* i386-opc.h (enum): Add CpuAVX512_BF16.
	(i386_cpu_flags): Add bitfield for cpuavx512_bf16.
	* i386-opc.tbl: Add AVX512 BF16 instructions.
	* i386-init.h: Regenerated.
	* i386-tbl.h: Likewise.

2019-04-05  Alan Modra  <amodra@gmail.com>

	* ppc-opc.c (XLBH_MASK): Subtract off BH field from BB_MASK.
	(powerpc_opcodes): Reorder bcctr and bclr extended mnemonics
	to favour printing of "-" branch hint when using the "y" bit.
	Allow BH field on bc{ctr,lr,tar}{,l}{-,+}.

2019-04-05  Alan Modra  <amodra@gmail.com>

	* ppc-dis.c (print_insn_powerpc): Delay printing spaces after
	opcode until first operand is output.

2019-04-04  Peter Bergner  <bergner@linux.ibm.com>

	PR gas/24349
	* ppc-opc.c (valid_bo_pre_v2): Add comments.
	(valid_bo_post_v2): Add support for 'at' branch hints.
	(insert_bo): Only error on branch on ctr.
	(get_bo_hint_mask): New function.
	(insert_boe): Add new 'branch_taken' formal argument.  Add support
	for inserting 'at' branch hints.
	(extract_boe): Add new 'branch_taken' formal argument.  Add support
	for extracting 'at' branch hints.
	(insert_bom, extract_bom, insert_bop, extract_bop): New functions.
	(BOE): Delete operand.
	(BOM, BOP): New operands.
	(RM): Update value.
	(XLYLK, XLYLK_MASK, XLYBB_MASK): Delete.
	(powerpc_opcodes) <bc-, bcl-, bca-, bcla-, bclr-, bclrl-, bcctr-,
	bcctrl-, bctar-, bctarl->: Replace BOE with BOM.
	(powerpc_opcodes) <bc+, bcl+, bca+, bcla+, bclr+, bclrl+, bcctr+,
	bcctrl+, bctar+, bctarl+>: Replace BOE with BOP.
	<bdnztar, bdnztarl, bdztar, bdztarl, btar, btarl, bdnztar-, bdnztarl-,
	bdnztar+, bdnztarl+, bdztar-, bdztarl-, bdztar+, bdztarl+, bgetar,
	bnltar, bgetarl, bnltarl, bletar, bngtar, bletarl, bngtarl, bnetar,
	bnetarl, bnstar, bnutar, bnstarl, bnutarl, bgetar-, bnltar-, bgetarl-,
	bnltarl-, bletar-, bngtar-, bletarl-, bngtarl-, bnetar-, bnetarl-,
	bnstar-, bnutar-, bnstarl-, bnutarl-, bgetar+, bnltar+, bgetarl+,
	bnltarl+, bletar+, bngtar+, bletarl+, bngtarl+, bnetar+, bnetarl+,
	bnstar+, bnutar+, bnstarl+, bnutarl+, blttar, blttarl, bgttar, bgttarl,
	beqtar, beqtarl, bsotar, buntar, bsotarl, buntarl, blttar-, blttarl-,
	bgttar-, bgttarl-, beqtar-, beqtarl-, bsotar-, buntar-, bsotarl-,
	buntarl-, blttar+, blttarl+, bgttar+, bgttarl+, beqtar+, beqtarl+,
	bsotar+, buntar+, bsotarl+, buntarl+, bdnzftar, bdnzftarl, bdzftar,
	bdzftarl, bftar, bftarl, bftar-, bftarl-, bftar+, bftarl+, bdnzttar,
	bdnzttarl, bdzttar, bdzttarl, bttar, bttarl, bttar-, bttarl-, bttar+,
	bttarl+>: New extended mnemonics.

2019-03-28  Alan Modra  <amodra@gmail.com>

	PR 24390
	* ppc-opc.c (BTF): Define.
	(powerpc_opcodes): Use for mtfsb*.
	* ppc-dis.c (print_insn_powerpc): Print fields with both
	PPC_OPERAND_CR_REG and PPC_OPERAND_CR_BIT as a plain number.

2019-03-25  Tamar Christina  <tamar.christina@arm.com>

	* arm-dis.c (struct arm_private_data): Remove has_mapping_symbols.
	(mapping_symbol_for_insn): Implement new algorithm.
	(print_insn): Remove duplicate code.

2019-03-25  Tamar Christina  <tamar.christina@arm.com>

	* aarch64-dis.c (print_insn_aarch64):
	Implement override.

2019-03-25  Tamar Christina  <tamar.christina@arm.com>

	* aarch64-dis.c (print_insn_aarch64): Update the mapping symbol search
	order.

2019-03-25  Tamar Christina  <tamar.christina@arm.com>

	* aarch64-dis.c (last_stop_offset): New.
	(print_insn_aarch64): Use stop_offset.

2019-03-19  H.J. Lu  <hongjiu.lu@intel.com>

	PR gas/24359
	* i386-gen.c (cpu_flag_init): Add CPU_ANY_AVX512F_FLAGS to
	CPU_ANY_AVX2_FLAGS.
	* i386-init.h: Regenerated.

2019-03-18  H.J. Lu  <hongjiu.lu@intel.com>

	PR gas/24348
	* i386-opc.tbl: Add Optimize to vmovdqa32, vmovdqa64, vmovdqu8,
	vmovdqu16, vmovdqu32 and vmovdqu64.
	* i386-tbl.h: Regenerated.

2019-03-12  Andreas Krebbel  <krebbel@linux.ibm.com>

	* s390-opc.txt: Rename selhhhr to selfhr.  Remove optional operand
	from vstrszb, vstrszh, and vstrszf.

2019-03-12  Andreas Krebbel  <krebbel@linux.ibm.com>

	* s390-opc.txt: Add instruction descriptions.

2019-02-08  Jim Wilson  <jimw@sifive.com>

	* riscv-opc.c (riscv_opcodes) <beq>: Use Cz to compress 3 operand form.
	<bne>: Likewise.

2019-02-07  Tamar Christina  <tamar.christina@arm.com>

	* arm-dis.c (arm_opcodes): Redefine hlt to armv1.

2019-02-07  Tamar Christina  <tamar.christina@arm.com>

	PR binutils/23212
	* aarch64-opc.h (enum aarch64_field_kind): Add FLD_sz.
	* aarch64-opc.c (verify_elem_sd): New.
	(fields): Add FLD_sz entr.
	* aarch64-tbl.h (_SIMD_INSN): New.
	(aarch64_opcode_table): Add elem_sd verifier to fmla, fmls, fmul and
	fmulx scalar and vector by element isns.

2019-02-07  Nick Clifton  <nickc@redhat.com>

	* po/sv.po: Updated Swedish translation.

2019-01-31  Andreas Krebbel  <krebbel@linux.ibm.com>

	* s390-mkopc.c (main): Accept arch13 as cpu string.
	* s390-opc.c: Add new instruction formats and instruction opcode
	masks.
	* s390-opc.txt: Add new arch13 instructions.

2019-01-25  Sudakshina Das  <sudi.das@arm.com>

	* aarch64-tbl.h (QL_LDST_AT): Update macro.
	(aarch64_opcode): Change encoding for stg, stzg
	st2g and st2zg.
	* aarch64-asm-2.c: Regenerated.
	* aarch64-dis-2.c: Regenerated.
	* aarch64-opc-2.c: Regenerated.

2019-01-25  Sudakshina Das  <sudi.das@arm.com>

	* aarch64-asm-2.c: Regenerated.
	* aarch64-dis-2.c: Likewise.
	* aarch64-opc-2.c: Likewise.
	* aarch64-tbl.h (aarch64_opcode): Add new stzgm.

2019-01-25  Sudakshina Das  <sudi.das@arm.com>
	    Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

	* aarch64-asm.c (aarch64_ins_addr_simple_2): Remove.
	* aarch64-asm.h (ins_addr_simple_2): Likeiwse.
	* aarch64-dis.c (aarch64_ext_addr_simple_2): Likewise.
	* aarch64-dis.h (ext_addr_simple_2): Likewise.
	* aarch64-opc.c (operand_general_constraint_met_p): Remove
	case for ldstgv_indexed.
	(aarch64_print_operand): Remove case for AARCH64_OPND_ADDR_SIMPLE_2.
	* aarch64-tbl.h (struct aarch64_opcode): Remove ldgv and stgv.
	(AARCH64_OPERANDS): Remove ADDR_SIMPLE_2.
	* aarch64-asm-2.c: Regenerated.
	* aarch64-dis-2.c: Regenerated.
	* aarch64-opc-2.c: Regenerated.

2019-01-23  Nick Clifton  <nickc@redhat.com>

	* po/pt_BR.po: Updated Brazilian Portuguese translation.

2019-01-21  Nick Clifton  <nickc@redhat.com>

	* po/de.po: Updated German translation.
	* po/uk.po: Updated Ukranian translation.

2019-01-20  Chenghua Xu  <paul.hua.gm@gmail.com>
	* mips-dis.c (mips_arch_choices): Fix typo in
	gs464, gs464e and gs264e descriptors.

2019-01-19  Nick Clifton  <nickc@redhat.com>

	* configure: Regenerate.
	* po/opcodes.pot: Regenerate.

2018-06-24  Nick Clifton  <nickc@redhat.com>

	2.32 branch created.

2019-01-09  John Darrington <john@darrington.wattle.id.au>

	* s12z-dis.c (print_insn_s12z):  Do not dereference an operand
	if it is null.
	-dis.c (opr_emit_disassembly): Do not omit an index if it is
	zero.

2019-01-09  Andrew Paprocki  <andrew@ishiboo.com>

	* configure: Regenerate.

2019-01-07  Alan Modra  <amodra@gmail.com>

	* configure: Regenerate.
	* po/POTFILES.in: Regenerate.

2019-01-03  John Darrington <john@darrington.wattle.id.au>

	* s12z-opc.c: New file.
	* s12z-opc.h: New file.
	* s12z-dis.c: Removed all code not directly related to display
	of instructions.  Used the interface provided by the new files
	instead.
	* Makefile.am (TARGET_LIBOPCODES_CFILES) Add s12z-opc.c.
	* Makefile.in: Regenerate.
	* configure.ac (bfd_s12z_arch): Correct the dependencies.
	* configure: Regenerate.

2019-01-01  Alan Modra  <amodra@gmail.com>

	Update year range in copyright notice of all files.

For older changes see ChangeLog-2018

Copyright (C) 2019 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:
