+2019-07-01 Jan Beulich <jbeulich@suse.com>
+
+ * config/tc-i386.c (vec_imm4): Delete.
+ (VEX_check_operands): Replace Vec_Imm4 check by CpuXOP with five
+ operands one. Clear Imm<N> by different means.
+ (build_modrm_byte): Adjust comment. Remove dead code. Add and
+ adjust assertions.
+
+2019-07-01 Jan Beulich <jbeulich@suse.com>
+
+ * config/tc-i386.c (output_insn): Adjust recognition of xFENCE
+ insns. Move PadLock special case of prefix emission to 3-byte
+ long base opcode handling.
+ (i386_index_check): Check for CpuPadLock instead of ImmExt.
+
+2019-07-01 Jan Beulich <jbeulich@suse.com>
+
+ * config/tc-i386.c (optimize_encoding): Handle AND / OR with
+ both operands being the same register.
+ * doc/c-i386.texi: Update -O2 documentation.
+ * testsuite/gas/i386/optimize-2.s,
+ testsuite/gas/i386/x86-64-optimize-3.s: Add cases of AND / OR
+ with both operands being the same register.
+ * testsuite/gas/i386/optimize-2.d,
+ testsuite/gas/i386/x86-64-optimize-3.d: Adjust expectations.
+ * testsuite/gas/i386/optimize-2b.d,
+ testsuite/gas/i386/x86-64-optimize-3b.d: New.
+ * testsuite/gas/i386/i386.exp: Run new test.
+
+2019-07-01 Jan Beulich <jbeulich@suse.com>
+
+ * config/tc-i386.c (commutative): New.
+ (build_vex_prefix): Handle commutative case.
+ (optimize_encoding): Set commutative flag when appropriate.
+ * doc/c-i386.texi: Update -O2 documentation.
+ * testsuite/gas/i386/ilp32/x86-64-sse2avx.d: Re-use parent dir
+ output.
+ * testsuite/gas/i386/x86-64-sse2avx.s: Add tests with high
+ numbered source operands.
+ * testsuite/gas/i386/x86-64-optimize-2.d,
+ testsuite/gas/i386/x86-64-optimize-2b.d,
+ testsuite/gas/i386/x86-64-optimize-3.d,
+ testsuite/gas/i386/x86-64-optimize-5.d,
+ testsuite/gas/i386/x86-64-optimize-6.d,
+ testsuite/gas/i386/x86-64-sse2avx.d: Adjust expectations.
+ * testsuite/gas/i386/x86-64-avx-swap-2.d,
+ testsuite/gas/i386/x86-64-avx-swap-2.s: New.
+ * testsuite/gas/i386/i386.exp: Run new test.
+
+2019-07-01 Jan Beulich <jbeulich@suse.com>
+
+ * config/tc-i386.c (is_evex_encoding): Don't check for SAE.
+ (check_VecOperands): Simplify static rounding / SAE checking.
+
+2019-07-01 Jan Beulich <jbeulich@suse.com>
+
+ * config/tc-i386.c (optimize_encoding): Make j unsigned. Handle
+ vpand{d,q}, vpandn{d,q}, vpor{d,q}, and vpxor{d,q}. Also check/
+ clear broadcast. Eliminate a loop.
+ * doc/c-i386.texi: Update -O1 documentation.
+ * testsuite/gas/i386/optimize-1.s,
+ testsuite/gas/i386/optimize-2.s,
+ testsuite/gas/i386/optimize-3.s,
+ testsuite/gas/i386/optimize-5.s,
+ testsuite/gas/i386/x86-64-optimize-2.s,
+ testsuite/gas/i386/x86-64-optimize-3.s,
+ testsuite/gas/i386/x86-64-optimize-4.s,
+ testsuite/gas/i386/x86-64-optimize-6.s: Add vpand{d,q},
+ vpandn{d,q}, vpor{d,q}, and vpxor{d,q} cases.
+ testsuite/gas/i386/optimize-1.d,
+ testsuite/gas/i386/optimize-1a.d,
+ testsuite/gas/i386/optimize-2.d,
+ testsuite/gas/i386/optimize-3.d,
+ testsuite/gas/i386/optimize-4.d,
+ testsuite/gas/i386/optimize-5.d,
+ testsuite/gas/i386/x86-64-optimize-2.d,
+ testsuite/gas/i386/x86-64-optimize-2a.d,
+ testsuite/gas/i386/x86-64-optimize-2b.d,
+ testsuite/gas/i386/x86-64-optimize-3.d,
+ testsuite/gas/i386/x86-64-optimize-4.d,
+ testsuite/gas/i386/x86-64-optimize-5.d,
+ testsuite/gas/i386/x86-64-optimize-6.d: Adjust expectations.
+
+2019-07-01 Jan Beulich <jbeulich@suse.com>
+
+ * testsuite/gas/i386/avx512f_vpclmulqdq.s,
+ testsuite/gas/i386/avx512vl_vpclmulqdq.s,
+ testsuite/gas/i386/vpclmulqdq.s,
+ testsuite/gas/i386/x86-64-avx512f_vpclmulqdq.s,
+ testsuite/gas/i386/x86-64-avx512vl_vpclmulqdq.s: Add pseudo ops.
+ * testsuite/gas/i386/x86-64-vpclmulqdq.s: Likewise. Don't use
+ high 16 [xy]mm registers.
+ * testsuite/gas/i386/avx512f_vpclmulqdq.d,
+ testsuite/gas/i386/avx512f_vpclmulqdq-intel.d,
+ testsuite/gas/i386/avx512vl_vpclmulqdq.d,
+ testsuite/gas/i386/avx512vl_vpclmulqdq-intel.d,
+ testsuite/gas/i386/vpclmulqdq.d,
+ testsuite/gas/i386/vpclmulqdq-intel.d,
+ testsuite/gas/i386/x86-64-avx512f_vpclmulqdq.d,
+ testsuite/gas/i386/x86-64-avx512f_vpclmulqdq-intel.d,
+ testsuite/gas/i386/x86-64-avx512vl_vpclmulqdq.d,
+ testsuite/gas/i386/x86-64-avx512vl_vpclmulqdq-intel.d,
+ testsuite/gas/i386/x86-64-vpclmulqdq.d,
+ testsuite/gas/i386/x86-64-vpclmulqdq-intel.d: Adjust
+ expectations.
+
+2019-07-01 Jan Beulich <jbeulich@suse.com>
+
+ * tc-i386.c (output_disp, output_imm): Use encoding_length.
+
+2019-07-01 Jan Beulich <jbeulich@suse.com>
+
+ * tc-i386.c (encoding_length): New.
+ (output_insn): Use it.
+ * testsuite/gas/i386/oversized16.l,
+ testsuite/gas/i386/oversized16.s,
+ testsuite/gas/i386/oversized64.l,
+ testsuite/gas/i386/oversized64.s: New.
+ * testsuite/gas/i386/i386.exp: Run new tests.
+
+2019-06-27 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR binutils/24719
+ * testsuite/gas/i386/disassem.s: Add test for vgatherpf0dps
+ with invalid vector length.
+ * testsuite/gas/i386/x86-64-disassem.s: Likewise.
+ * testsuite/gas/i386/disassem.d: Updated.
+ * testsuite/gas/i386/x86-64-disassem.d: Likewise.
+
+2019-06-27 Barnaby Wilk s<barnaby.wilks@arm.com>
+
+ * config/tc-arm.c (do_smc): Add range check for immediate operand.
+ (do_t_smc): Add range check for immediate operand. Remove
+ obsolete immediate encoding.
+ (md_apply_fix): Fix range check. Remove obsolete immediate encoding.
+ * testsuite/gas/arm/arch6zk.d: Fix test.
+ * testsuite/gas/arm/arch6zk.s: Fix test.
+ * testsuite/gas/arm/smc-bad.d: New test.
+ * testsuite/gas/arm/smc-bad.l: New test.
+ * testsuite/gas/arm/smc-bad.s: New test.
+ * testsuite/gas/arm/thumb32.d: Fix test.
+ * testsuite/gas/arm/thumb32.s: Fix test.
+
+2019-06-27 Jan Beulich <jbeulich@suse.com>
+
+ config/tc-i386.c (md_assemble): Check for protected mode
+ incapable processor before encoding VEX and alike insns.
+ * testsuite/gas/i386/inval-16.s: For 80186 architecture.
+ * testsuite/gas/i386/inval-16.l: Adjust expectations.
+ * testsuite/gas/i386/avx-16bit.d,
+ testsuite/gas/i386/avx-16bit.s,
+ testsuite/gas/i386/avx512f-16bit.d,
+ testsuite/gas/i386/avx512f-16bit.s,
+ testsuite/gas/i386/bmi-16bit.d,
+ testsuite/gas/i386/bmi-16bit.s,
+ testsuite/gas/i386/bmi2-16bit.d,
+ testsuite/gas/i386/bmi2-16bit.s,
+ testsuite/gas/i386/lwp-16bit.d,
+ testsuite/gas/i386/lwp-16bit.s: New
+ testsuite/gas/i386/i386.exp: Run new tests.
+
+2019-06-26 Jim Wilson <jimw@sifive.com>
+
+ * testsuite/gas/xstormy16/allinsn.sh: Change first line to
+ #!/bin/bash and make it executable.
+ * testsuite/gas/xstormy16/gcc.sh: Likewise.
+
+2019-06-26 Lili Cui <lili.cui@intel.com>
+
+ * doc/c-i386.texi: Document x/y/z instruction sufffixes in AT&T
+ syntax and xmmword/ymmword/zmmword/fword/tbyte/oword ptr in
+ Intel syntax.
+
+2019-06-25 Faraz Shahbazker <fshahbazker@wavecomp.com>
+
+ * config/tc-mips.c (macro) <M_LI>: Re-order MTHC1 with
+ respect to MTC1 and use $0 for either part where possible.
+ * testsuite/gas/mips/li-d.s: Add test cases for non-zero
+ words in double precision constants.
+ * testsuite/gas/mips/li-d.d: Update reference output.
+ * testsuite/gas/mips/micromips@isa-override-1.d: Likewise.
+ * testsuite/gas/mips/mips32r2@isa-override-1.d: Likewise.
+ * testsuite/gas/mips/mips64r2@isa-override-1.d: Likewise.
+
+2019-06-25 Jan Beulich <jbeulich@suse.com>
+
+ * tc-i386.c (acc32, acc64): Delete.
+ (pi): Make first parameter pinter-to-const.
+ (type_names): Remove Acc. Add acc8, acc16, acc32, and acc64.
+ (pt): Use operand_type_equal().
+ (match_template): Replace use of acc32.
+ (process_suffix): Replace use of acc64.
+
2019-06-25 Jan Beulich <jbeulich@suse.com>
* doc/c-i386.texi: Mark -mavxscalar= and -mvexwig as dangrous to