opcodes/riscv: Hide '.L0 ' fake symbols
[external/binutils.git] / opcodes / ChangeLog
1 2018-12-06  Andrew Burgess  <andrew.burgess@embecosm.com>
2
3         * disassembler.c (disassemble_init_for_target): Add RISC-V
4         initialisation.
5         * riscv-dis.c (riscv_symbol_is_valid): New function.
6
7 2018-12-03  Kito Cheng <kito@andestech.com>
8
9         * riscv-opc.c: Change the type of xlen, because type of
10         xlen_requirement changed.
11
12 2018-12-03  Egeyar Bagcioglu <egeyar.bagcioglu@oracle.com>
13
14         PR 23193
15         PR 19721
16         * aarch64-tbl.h (aarch64_opcode_table): Only disassemble an ORR
17         encoding as MOV if the shift operation is a left shift of zero.
18
19 2018-11-29  Jim Wilson  <jimw@sifive.com>
20
21         * riscv-opc.c (unimp): Mark compressed unimp as INSN_ALIAS.
22         (c.unimp): New.
23
24 2018-11-27  Jim Wilson  <jimw@sifive.com>
25
26         * riscv-opc.c (ciw): Fix whitespace to align columns.
27         (ca): New.
28
29 2018-11-21  John Darrington  <john@darrington.wattle.id.au>
30
31         * s12z-dis.c (print_insn_shift) [SB_REG_REG_N]: Enter special case
32         if the postbyte matches the appropriate pattern.
33
34 2018-11-13  Francois H. Theron <francois.theron@netronome.com>
35
36         * nfp-dis.c: Fix crc[] disassembly if operands are swapped.
37
38 2018-11-12  Sudakshina Das  <sudi.das@arm.com>
39
40         * aarch64-opc.c (aarch64_sys_regs_dc): New entries for
41         IGVAC, IGSW, CGSW, CIGSW, CGVAC, CGVAP, CGVADP, CIGVAC, GVA,
42         IGDVAC, IGDSW, CGDSW, CIGDSW, CGDVAC, CGDVAP, CGDVADP,
43         CIGDVAC and GZVA.
44         (aarch64_sys_ins_reg_supported_p): New check for above.
45
46 2018-11-12  Sudakshina Das  <sudi.das@arm.com>
47
48         * aarch64-opc.c (aarch64_sys_regs): New entries for TCO,
49         TFSRE0_SL1, TFSR_EL1, TFSR_EL2, TFSR_EL3, TFSR_EL12,
50         RGSR_EL1 and GCR_EL1.
51         (aarch64_sys_reg_supported_p): New check for above.
52         (aarch64_pstatefields): New entry for TCO.
53         (aarch64_pstatefield_supported_p): New check for above.
54
55 2018-11-12  Sudakshina Das  <sudi.das@arm.com>
56
57         * aarch64-asm.c (aarch64_ins_addr_simple_2): New.
58         * aarch64-asm.h (ins_addr_simple_2): Declare the above.
59         * aarch64-dis.c (aarch64_ext_addr_simple_2): New.
60         * aarch64-dis.h (ext_addr_simple_2): Declare the above.
61         * aarch64-opc.c (operand_general_constraint_met_p): Add case for
62         AARCH64_OPND_ADDR_SIMPLE_2 and ldstgv_indexed.
63         (aarch64_print_operand): Add case for AARCH64_OPND_ADDR_SIMPLE_2.
64         * aarch64-tbl.h (aarch64_opcode_table): Add stgv and ldgv.
65         (AARCH64_OPERANDS): Define ADDR_SIMPLE_2.
66         * aarch64-asm-2.c: Regenerated.
67         * aarch64-dis-2.c: Regenerated.
68         * aarch64-opc-2.c: Regenerated.
69
70 2018-11-12  Sudakshina Das  <sudi.das@arm.com>
71
72         * aarch64-tbl.h (QL_LDG): New.
73         (aarch64_opcode_table): Add ldg.
74         * aarch64-asm-2.c: Regenerated.
75         * aarch64-dis-2.c: Regenerated.
76         * aarch64-opc-2.c: Regenerated.
77
78 2018-11-12  Sudakshina Das  <sudi.das@arm.com>
79
80         * aarch64-opc.c (aarch64_opnd_qualifiers): Add new data
81         for AARCH64_OPND_QLF_imm_tag.
82         (operand_general_constraint_met_p): Add case for
83         AARCH64_OPND_ADDR_SIMM11 and AARCH64_OPND_ADDR_SIMM13.
84         (aarch64_print_operand): Likewise.
85         * aarch64-tbl.h (QL_LDST_AT, QL_STGP): New.
86         (aarch64_opcode_table): Add stg, stzg, st2g, stz2g and stgp
87         for both offset and pre/post indexed versions.
88         (AARCH64_OPERANDS): Define ADDR_SIMM11 and ADDR_SIMM13.
89         * aarch64-asm-2.c: Regenerated.
90         * aarch64-dis-2.c: Regenerated.
91         * aarch64-opc-2.c: Regenerated.
92
93 2018-11-12  Sudakshina Das  <sudi.das@arm.com>
94
95         * aarch64-tbl.h (aarch64_opcode_table): Add subp, subps and cmpp.
96         * aarch64-asm-2.c: Regenerated.
97         * aarch64-dis-2.c: Regenerated.
98         * aarch64-opc-2.c: Regenerated.
99
100 2018-11-12  Sudakshina Das  <sudi.das@arm.com>
101
102         * aarch64-opc.h (aarch64_field_kind): New FLD_imm4_3.
103         (OPD_F_SHIFT_BY_4, operand_need_shift_by_four): New.
104         * aarch64-opc.c (fields): Add entry for imm4_3.
105         (operand_general_constraint_met_p): Add cases for
106         AARCH64_OPND_UIMM4_ADDG and AARCH64_OPND_UIMM10.
107         (aarch64_print_operand): Likewise.
108         * aarch64-tbl.h (QL_ADDG): New.
109         (aarch64_opcode_table): Add addg, subg, irg and gmi.
110         (AARCH64_OPERANDS): Define UIMM4_ADDG and UIMM10.
111         * aarch64-asm.c (aarch64_ins_imm): Add case for
112         operand_need_shift_by_four.
113         * aarch64-asm-2.c: Regenerated.
114         * aarch64-dis-2.c: Regenerated.
115         * aarch64-opc-2.c: Regenerated.
116
117 2018-11-12  Sudakshina Das  <sudi.das@arm.com>
118
119         * aarch64-tbl.h (aarch64_feature_memtag): New.
120         (MEMTAG, MEMTAG_INSN): New.
121
122 2018-11-06  Sudakshina Das  <sudi.das@arm.com>
123
124         * arm-dis.c (select_arm_features): Update bfd_mach_arm_8
125         with Armv8.5-A. Remove reduntant ARM_EXT2_FP16_FML.
126
127 2018-11-06  Alan Modra  <amodra@gmail.com>
128
129         * ppc-opc.c (insert_arx, insert_ary, insert_rx, insert_ry, insert_ls),
130         (insert_evuimm1_ex0, insert_evuimm2_ex0, insert_evuimm4_ex0),
131         (insert_evuimm8_ex0, insert_evuimm_lt8, insert_evuimm_lt16),
132         (insert_rD_rS_even, insert_off_lsp, insert_off_spe2, insert_Ddd):
133         Don't return zero on error, insert mask bits instead.
134         (insert_sd4h, extract_sd4h, insert_sd4w, extract_sd4w): Delete.
135         (insert_sh6, extract_sh6): Delete dead code.
136         (insert_sprbat, insert_sprg): Use unsigned comparisions.
137         (powerpc_operands <OIMM>): Set shift count rather than using
138         PPC_OPSHIFT_INV.
139         <SE_SDH, SE_SDW>: Likewise.  Don't use insert/extract functions.
140
141 2018-11-06  Jan Beulich  <jbeulich@suse.com>
142
143         * i386-dis-evex.h (evex_table): Use K suffix instead of %LW for
144         vpbroadcast{d,q} with GPR operand.
145
146 2018-11-06  Jan Beulich  <jbeulich@suse.com>
147
148         * i386-dis.c (EVEX_W_0F6E_P_2, EVEX_W_0F7E_P_2): Delete.
149         * i386-dis-evex.h (evex_table): Move vmov[dq} with GPR operand
150         cases up one level in the hierarchy.
151
152 2018-11-06  Jan Beulich  <jbeulich@suse.com>
153
154         * i386-dis.c (MOD_VEX_W_0_0F92_P_3_LEN_0,
155         MOD_VEX_W_1_0F92_P_3_LEN_0): Fold into MOD_VEX_0F92_P_3_LEN_0.
156         (MOD_VEX_W_0_0F93_P_3_LEN_0, MOD_VEX_W_1_0F93_P_3_LEN_0): Fold
157         into MOD_VEX_0F93_P_3_LEN_0.
158         (vex_len_table, vex_w_table, mod_table): Move kmov[dq} with GPR
159         operand cases up one level in the hierarchy.
160
161 2018-11-06  Jan Beulich  <jbeulich@suse.com>
162
163         * i386-dis.c (VEX_W_0FC4_P_2, VEX_W_0FC5_P_2, VEX_W_0F3A14_P_2,
164         VEX_W_0F3A15_P_2, VEX_W_0F3A20_P_2, EVEX_W_0F3A16_P_2,
165         EVEX_W_0F3A22_P_2): Delete.
166         (vex_len_table, vex_w_table): Move vpextr{b,w} and vpinsr{b,w}
167         entries up one level in the hierarchy.
168         (OP_E_memory): Handle dq_mode when determining Disp8 shift
169         value.
170         * i386-dis-evex.h (evex_table): Move vpextr{d,q} and vpinsr{d,q}
171         entries up one level in the hierarchy.
172         * i386-opc.tbl (vpextrb, vpextrw, vpinsrb, vpinsrw): Change to
173         VexWIG for AVX flavors.
174         * i386-tbl.h: Re-generate.
175
176 2018-11-06  Jan Beulich  <jbeulich@suse.com>
177
178         * i386-opc.tbl (vcvtsi2sd, vcvtsi2ss, vmovd, vpcmpestri,
179         vpcmpestrm, vpextrd, vpinsrd, vpbroadcastd, vcvtusi2sd,
180         vcvtusi2ss, kmovd): Drop VexW=1.
181         * i386-tbl.h: Re-generate.
182
183 2018-11-06  Jan Beulich  <jbeulich@suse.com>
184
185         * i386-opc.tbl (Vex128, Vex256, VexLIG, EVex128, EVex256,
186         EVex512, EVexLIG, EVexDYN): New.
187         (ldmxcsr, stmxcsr, vldmxcsr, vstmxcsr, all BMI, BMI2, and TBM
188         insns): Use Vex128 instead of Vex=3 (aka VexLIG).
189         (vextractps, vinsertps, vpextr*, vpinsr*): Use EVex128 instead
190         of EVex=4 (aka EVexLIG).
191         * i386-tbl.h: Re-generate.
192
193 2018-11-06  Jan Beulich  <jbeulich@suse.com>
194
195         * i386-opc.tbl (pextrw, vpextrw): Add Load to 0F C5 forms.
196         (vpmaxub): Re-order attributes on AVX512BW flavor.
197         * i386-tbl.h: Re-generate.
198
199 2018-11-06  Jan Beulich  <jbeulich@suse.com>
200
201         * i386-opc.tbl (vandnp*, vandp*, vcmp*, vcvtss2sd, vorp*,
202         vpmaxub, vmovntdqa, vmpsadbw, vphsub*): Use VexWIG instead of
203         Vex=1 on AVX / AVX2 flavors.
204         (vpmaxub): Re-order attributes on AVX512BW flavor.
205         * i386-tbl.h: Re-generate.
206
207 2018-11-06  Jan Beulich  <jbeulich@suse.com>
208
209         * i386-opc.tbl (VexW0, VexW1): New.
210         (vphadd*, vphsub*): Use VexW0 on XOP variants.
211         * i386-tbl.h: Re-generate.
212
213 2018-10-22  John Darrington  <john@darrington.wattle.id.au>
214
215         * s12z-dis.c (decode_possible_symbol): Add fallback case.
216         (rel_15_7): Likewise.
217
218 2018-10-19  Tamar Christina  <tamar.christina@arm.com>
219
220         * arm-dis.c (UNKNOWN_INSTRUCTION_32BIT): Format specifier for arm mode.
221         (UNKNOWN_INSTRUCTION_16BIT): Format specifier for thumb mode.
222         (print_insn_arm, print_insn_thumb16, print_insn_thumb32): Use them.
223
224 2018-10-16  Matthew Malcomson  <matthew.malcomson@arm.com>
225
226         * aarch64-opc.c (struct operand_qualifier_data): Change qualifier data
227         corresponding to AARCH64_OPND_QLF_S_4B qualifier.
228
229 2018-10-10  Jan Beulich  <jbeulich@suse.com>
230
231         * i386-gen.c (opcode_modifiers): Drop Size16, Size32, and
232         Size64. Add Size.
233         * i386-opc.h (Size16, Size32, Size64): Delete.
234         (Size): New.
235         (SIZE16, SIZE32, SIZE64): Define.
236         (struct i386_opcode_modifier): Drop size16, size32, and size64.
237         Add size.
238         * i386-opc.tbl (Size16, Size32, Size64): Define.
239         * i386-tbl.h: Re-generate.
240
241 2018-10-09  Sudakshina Das  <sudi.das@arm.com>
242
243         * aarch64-opc.c (operand_general_constraint_met_p): Add
244         SSBS in the check for one-bit immediate.
245         (aarch64_sys_regs): New entry for SSBS.
246         (aarch64_sys_reg_supported_p): New check for above.
247         (aarch64_pstatefields): New entry for SSBS.
248         (aarch64_pstatefield_supported_p): New check for above.
249
250 2018-10-09  Sudakshina Das  <sudi.das@arm.com>
251
252         * aarch64-opc.c (aarch64_sys_regs): New entries for
253         scxtnum_el[0,1,2,3,12] and id_pfr2_el1.
254         (aarch64_sys_reg_supported_p): New checks for above.
255
256 2018-10-09  Sudakshina Das  <sudi.das@arm.com>
257
258         * aarch64-opc.h (HINT_OPD_NOPRINT, HINT_ENCODE): New.
259         (HINT_FLAG, HINT_VALUE): New macros to encode NO_PRINT flag
260         with the hint immediate.
261         * aarch64-opc.c (aarch64_hint_options): New entries for
262         c, j, jc and default (with HINT_OPD_F_NOPRINT flag) for BTI.
263         (aarch64_print_operand): Add case for AARCH64_OPND_BTI_TARGET
264         while checking for HINT_OPD_F_NOPRINT flag.
265         * aarch64-dis.c (aarch64_ext_hint): Use new HINT_VALUE to
266         extract value.
267         * aarch64-tbl.h (aarch64_feature_bti, BTI, BTI_INSN): New.
268         (aarch64_opcode_table): Add entry for BTI.
269         (AARCH64_OPERANDS): Add new description for BTI targets.
270         * aarch64-asm-2.c: Regenerate.
271         * aarch64-dis-2.c: Regenerate.
272         * aarch64-opc-2.c: Regenerate.
273
274 2018-10-09  Sudakshina Das  <sudi.das@arm.com>
275
276         * aarch64-opc.c (aarch64_sys_regs): New entries for
277         rndr and rndrrs.
278         (aarch64_sys_reg_supported_p): New check for above.
279
280 2018-10-09  Sudakshina Das  <sudi.das@arm.com>
281
282         * aarch64-opc.c (aarch64_sys_regs_dc): New entry for cvadp.
283         (aarch64_sys_ins_reg_supported_p): New check for above.
284
285 2018-10-09  Sudakshina Das  <sudi.das@arm.com>
286
287         * aarch64-dis.c (aarch64_ext_sysins_op): Add case for
288         AARCH64_OPND_SYSREG_SR.
289         * aarch64-opc.c (aarch64_print_operand): Likewise.
290         (aarch64_sys_regs_sr): Define table.
291         (aarch64_sys_ins_reg_supported_p): Check for RCTX with
292         AARCH64_FEATURE_PREDRES.
293         * aarch64-tbl.h (aarch64_feature_predres): New.
294         (PREDRES, PREDRES_INSN): New.
295         (aarch64_opcode_table): Add entries for cfp, dvp and cpp.
296         (AARCH64_OPERANDS): Add new description for SYSREG_SR.
297         * aarch64-asm-2.c: Regenerate.
298         * aarch64-dis-2.c: Regenerate.
299         * aarch64-opc-2.c: Regenerate.
300
301 2018-10-09  Sudakshina Das  <sudi.das@arm.com>
302
303         * aarch64-tbl.h (aarch64_feature_sb): New.
304         (SB, SB_INSN): New.
305         (aarch64_opcode_table): Add entry for sb.
306         * aarch64-asm-2.c: Regenerate.
307         * aarch64-dis-2.c: Regenerate.
308         * aarch64-opc-2.c: Regenerate.
309
310 2018-10-09  Sudakshina Das  <sudi.das@arm.com>
311
312         * aarch64-tbl.h (aarch64_feature_flagmanip): New.
313         (aarch64_feature_frintts): New.
314         (FLAGMANIP, FRINTTS): New.
315         (aarch64_opcode_table): Add entries for xaflag, axflag
316         and frint[32,64][x,z] instructions.
317         * aarch64-asm-2.c: Regenerate.
318         * aarch64-dis-2.c: Regenerate.
319         * aarch64-opc-2.c: Regenerate.
320
321 2018-10-09  Sudakshina Das  <sudi.das@arm.com>
322
323         * aarch64-tbl.h (aarch64_feature_set aarch64_feature_v8_5): New.
324         (ARMV8_5, V8_5_INSN): New.
325
326 2018-10-08  Tamar Christina  <tamar.christina@arm.com>
327
328         * aarch64-opc.c (verify_constraints): Use memset instead of {0}.
329
330 2018-10-05  H.J. Lu  <hongjiu.lu@intel.com>
331
332         * i386-dis.c (rm_table): Add enclv.
333         * i386-opc.tbl: Add enclv.
334         * i386-tbl.h: Regenerated.
335
336 2018-10-05  Sudakshina Das  <sudi.das@arm.com>
337
338         * arm-dis.c (arm_opcodes): Add sb.
339         (thumb32_opcodes): Likewise.
340
341 2018-10-05  Richard Henderson  <rth@twiddle.net>
342             Stafford Horne  <shorne@gmail.com>
343
344         * or1k-desc.c: Regenerate.
345         * or1k-desc.h: Regenerate.
346         * or1k-opc.c: Regenerate.
347         * or1k-opc.h: Regenerate.
348         * or1k-opinst.c: Regenerate.
349
350 2018-10-05  Richard Henderson  <rth@twiddle.net>
351
352         * or1k-asm.c: Regenerated.
353         * or1k-desc.c: Regenerated.
354         * or1k-desc.h: Regenerated.
355         * or1k-dis.c: Regenerated.
356         * or1k-ibld.c: Regenerated.
357         * or1k-opc.c: Regenerated.
358         * or1k-opc.h: Regenerated.
359         * or1k-opinst.c: Regenerated.
360
361 2018-10-05  Richard Henderson  <rth@twiddle.net>
362
363         * or1k-asm.c: Regenerate.
364
365 2018-10-03  Tamar Christina  <tamar.christina@arm.com>
366
367         * aarch64-asm.c (aarch64_opcode_encode): Apply constraint verifier.
368         * aarch64-dis.c (print_operands): Refactor to take notes.
369         (print_verifier_notes): New.
370         (print_aarch64_insn): Apply constraint verifier.
371         (print_insn_aarch64_word): Update call to print_aarch64_insn.
372         * aarch64-opc.c (aarch64_print_operand): Remove attribute, update notes format.
373
374 2018-10-03  Tamar Christina  <tamar.christina@arm.com>
375
376         * aarch64-opc.c (init_insn_block): New.
377         (verify_constraints, aarch64_is_destructive_by_operands): New.
378         * aarch64-opc.h (verify_constraints): New.
379
380 2018-10-03  Tamar Christina  <tamar.christina@arm.com>
381
382         * aarch64-dis.c (aarch64_opcode_decode): Update verifier call.
383         * aarch64-opc.c (verify_ldpsw): Update arguments.
384
385 2018-10-03  Tamar Christina  <tamar.christina@arm.com>
386
387         * aarch64-dis.c (ERR_OK, ERR_UND, ERR_UNP, ERR_NYI): Remove.
388         (aarch64_decode_insn, print_insn_aarch64_word): Use err_type.
389
390 2018-10-03  Tamar Christina  <tamar.christina@arm.com>
391
392         * aarch64-asm.c (aarch64_opcode_encode): Add insn_sequence.
393         * aarch64-dis.c (insn_sequence): New.
394
395 2018-10-03  Tamar Christina  <tamar.christina@arm.com>
396
397         * aarch64-tbl.h (CORE_INSN, __FP_INSN, SIMD_INSN, CRYP_INSN, _CRC_INSN,
398         _LSE_INSN, _LOR_INSN, RDMA_INSN, FF16_INSN, SF16_INSN, V8_2_INSN,
399         _SVE_INSN, V8_3_INSN, CNUM_INSN, RCPC_INSN, SHA2_INSN, AES_INSN,
400         V8_4_INSN, SHA3_INSN, SM4_INSN, FP16_V8_2_INSN, DOT_INSN): Initialize
401         constraints.
402         (_SVE_INSNC): New.
403         (struct aarch64_opcode): (fjcvtzs, ldpsw, ldpsw, esb, psb): Initialize
404         constraints.
405         (movprfx): Change _SVE_INSN into _SVE_INSNC, add C_SCAN_MOVPRFX and
406         F_SCAN flags.
407         (msb, mul, neg, not, orr, rbit, revb, revh, revw, sabd, scvtf,
408         sdiv, sdivr, sdot, smax, smin, smulh, splice, sqadd, sqdecd, sqdech,
409         sqdecp, sqdecw, sqincd, sqinch, sqincp, sqincw, sqsub, sub, subr, sxtb,
410         sxth, sxtw, uabd, ucvtf, udiv, udivr, udot, umax, umin, umulh, uqadd,
411         uqdecd, uqdech, uqdecp, uqdecw, uqincd, uqinch, uqincp, uqincw, uqsub,
412         uxtb, uxth, uxtw, bic, eon, orn, mov, fmov): Change _SVE_INSN into _SVE_INSNC and add
413         C_SCAN_MOVPRFX and C_MAX_ELEM constraints.
414
415 2018-10-02  Palmer Dabbelt  <palmer@sifive.com>
416
417         * riscv-opc.c (riscv_opcodes) <fence.tso>: New opcode.
418
419 2018-09-23  Sandra Loosemore  <sandra@codesourcery.com>
420
421         * nios2-dis.c (nios2_print_insn_arg): Make sure signed conversions
422         are used when extracting signed fields and converting them to
423         potentially 64-bit types.
424
425 2018-09-21  Simon Marchi  <simon.marchi@ericsson.com>
426
427         * Makefile.am: Remove NO_WMISSING_FIELD_INITIALIZERS.
428         * Makefile.in: Re-generate.
429         * aclocal.m4: Re-generate.
430         * configure: Re-generate.
431         * configure.ac: Remove check for -Wno-missing-field-initializers.
432         * csky-opc.h (csky_v1_opcodes): Initialize all fields of last element.
433         (csky_v2_opcodes): Likewise.
434
435 2018-09-20  Maciej W. Rozycki  <macro@linux-mips.org>
436
437         * arc-nps400-tbl.h: Append `ull' to large constants throughout.
438
439 2018-09-20  Nelson Chu <nelson.chu1990@gmail.com>
440
441         * nds32-asm.c (operand_fields): Remove the unused fields.
442         (nds32_opcodes): Remove the unused instructions.
443         * nds32-dis.c (nds32_ex9_info): Removed.
444         (nds32_parse_opcode): Updated.
445         (print_insn_nds32): Likewise.
446         * nds32-asm.c (config.h, stdlib.h, string.h): New includes.
447         (LEX_SET_FIELD, LEX_GET_FIELD): Update defines.
448         (nds32_asm_init, build_operand_hash_table, build_keyword_hash_table,
449         build_opcode_hash_table): New functions.
450         (nds32_keyword_table, nds32_keyword_count_table, nds32_field_table,
451         nds32_opcode_table): New.
452         (hw_ktabs): Declare it to a pointer rather than an array.
453         (build_hash_table): Removed.
454         * nds32-asm.h (enum): Add SYN_INPUT, SYN_OUTPUT, SYN_LOPT,
455         SYN_ROPT and upadte HW_GPR and HW_INT.
456         * nds32-dis.c (keywords): Remove const.
457         (match_field): New function.
458         (nds32_parse_opcode): Updated.
459         * disassemble.c (disassemble_init_for_target):
460         Add disassemble_init_nds32.
461         * nds32-dis.c (eum map_type): New.
462         (nds32_private_data): Likewise.
463         (get_mapping_symbol_type, is_mapping_symbol, nds32_symbol_is_valid,
464         nds32_add_opcode_hash_table, disassemble_init_nds32): New functions.
465         (print_insn_nds32): Updated.
466         * nds32-asm.c (parse_aext_reg): Add new parameter.
467         (parse_re, parse_re2, parse_aext_reg): Only reduced registers
468         are allowed to use.
469         All callers changed.
470         * nds32-asm.c (keyword_usr, keyword_sr): Updated.
471         (operand_fields): Add new fields.
472         (nds32_opcodes): Add new instructions.
473         (keyword_aridxi_mx): New keyword.
474         * nds32-asm.h (enum): Add NASM_ATTR_DSP_ISAEXT, HW_AEXT_ARIDXI_MX
475         and NASM_ATTR_ZOL.
476         (ALU2_1, ALU2_2, ALU2_3): New macros.
477         * nds32-dis.c (nds32_filter_unknown_insn): Updated.
478
479 2018-09-17  Kito Cheng  <kito@andestech.com>
480
481         * riscv-opc.c (riscv_opcodes): Adjust the order of ble and bleu.
482
483 2018-09-17  H.J. Lu  <hongjiu.lu@intel.com>
484
485         PR gas/23670
486         * i386-dis-evex.h (evex_table): Use EVEX_LEN_0F6E_P_2,
487         EVEX_LEN_0F7E_P_1, EVEX_LEN_0F7E_P_2 and EVEX_LEN_0FD6_P_2.
488         (EVEX_LEN_0F6E_P_2): New EVEX_LEN_TABLE entry.
489         (EVEX_LEN_0F7E_P_1): Likewise.
490         (EVEX_LEN_0F7E_P_2): Likewise.
491         (EVEX_LEN_0FD6_P_2): Likewise.
492         * i386-dis.c (USE_EVEX_LEN_TABLE): New.
493         (EVEX_LEN_TABLE): Likewise.
494         (EVEX_LEN_0F6E_P_2): New enum.
495         (EVEX_LEN_0F7E_P_1): Likewise.
496         (EVEX_LEN_0F7E_P_2): Likewise.
497         (EVEX_LEN_0FD6_P_2): Likewise.
498         (evex_len_table): New.
499         (get_valid_dis386): Handle USE_EVEX_LEN_TABLE.
500         * i386-opc.tbl: Set EVex=2 on EVEX.128 only vmovd and vmovq.
501         * i386-tbl.h: Regenerated.
502
503 2018-09-17  H.J. Lu  <hongjiu.lu@intel.com>
504
505         PR gas/23665
506         * i386-dis.c (vex_len_table): Update VEX_LEN_0F6E_P_2 and
507         VEX_LEN_0F7E_P_2 entries.
508         * i386-opc.tbl: Set Vex=1 on VEX.128 only vmovd and vmovq.
509         * i386-tbl.h: Regenerated.
510
511 2018-09-17  H.J. Lu  <hongjiu.lu@intel.com>
512
513         * i386-dis.c (VZERO_Fixup): Removed.
514         (VZERO): Likewise.
515         (VEX_LEN_0F10_P_1): Likewise.
516         (VEX_LEN_0F10_P_3): Likewise.
517         (VEX_LEN_0F11_P_1): Likewise.
518         (VEX_LEN_0F11_P_3): Likewise.
519         (VEX_LEN_0F2E_P_0): Likewise.
520         (VEX_LEN_0F2E_P_2): Likewise.
521         (VEX_LEN_0F2F_P_0): Likewise.
522         (VEX_LEN_0F2F_P_2): Likewise.
523         (VEX_LEN_0F51_P_1): Likewise.
524         (VEX_LEN_0F51_P_3): Likewise.
525         (VEX_LEN_0F52_P_1): Likewise.
526         (VEX_LEN_0F53_P_1): Likewise.
527         (VEX_LEN_0F58_P_1): Likewise.
528         (VEX_LEN_0F58_P_3): Likewise.
529         (VEX_LEN_0F59_P_1): Likewise.
530         (VEX_LEN_0F59_P_3): Likewise.
531         (VEX_LEN_0F5A_P_1): Likewise.
532         (VEX_LEN_0F5A_P_3): Likewise.
533         (VEX_LEN_0F5C_P_1): Likewise.
534         (VEX_LEN_0F5C_P_3): Likewise.
535         (VEX_LEN_0F5D_P_1): Likewise.
536         (VEX_LEN_0F5D_P_3): Likewise.
537         (VEX_LEN_0F5E_P_1): Likewise.
538         (VEX_LEN_0F5E_P_3): Likewise.
539         (VEX_LEN_0F5F_P_1): Likewise.
540         (VEX_LEN_0F5F_P_3): Likewise.
541         (VEX_LEN_0FC2_P_1): Likewise.
542         (VEX_LEN_0FC2_P_3): Likewise.
543         (VEX_LEN_0F3A0A_P_2): Likewise.
544         (VEX_LEN_0F3A0B_P_2): Likewise.
545         (VEX_W_0F10_P_0): Likewise.
546         (VEX_W_0F10_P_1): Likewise.
547         (VEX_W_0F10_P_2): Likewise.
548         (VEX_W_0F10_P_3): Likewise.
549         (VEX_W_0F11_P_0): Likewise.
550         (VEX_W_0F11_P_1): Likewise.
551         (VEX_W_0F11_P_2): Likewise.
552         (VEX_W_0F11_P_3): Likewise.
553         (VEX_W_0F12_P_0_M_0): Likewise.
554         (VEX_W_0F12_P_0_M_1): Likewise.
555         (VEX_W_0F12_P_1): Likewise.
556         (VEX_W_0F12_P_2): Likewise.
557         (VEX_W_0F12_P_3): Likewise.
558         (VEX_W_0F13_M_0): Likewise.
559         (VEX_W_0F14): Likewise.
560         (VEX_W_0F15): Likewise.
561         (VEX_W_0F16_P_0_M_0): Likewise.
562         (VEX_W_0F16_P_0_M_1): Likewise.
563         (VEX_W_0F16_P_1): Likewise.
564         (VEX_W_0F16_P_2): Likewise.
565         (VEX_W_0F17_M_0): Likewise.
566         (VEX_W_0F28): Likewise.
567         (VEX_W_0F29): Likewise.
568         (VEX_W_0F2B_M_0): Likewise.
569         (VEX_W_0F2E_P_0): Likewise.
570         (VEX_W_0F2E_P_2): Likewise.
571         (VEX_W_0F2F_P_0): Likewise.
572         (VEX_W_0F2F_P_2): Likewise.
573         (VEX_W_0F50_M_0): Likewise.
574         (VEX_W_0F51_P_0): Likewise.
575         (VEX_W_0F51_P_1): Likewise.
576         (VEX_W_0F51_P_2): Likewise.
577         (VEX_W_0F51_P_3): Likewise.
578         (VEX_W_0F52_P_0): Likewise.
579         (VEX_W_0F52_P_1): Likewise.
580         (VEX_W_0F53_P_0): Likewise.
581         (VEX_W_0F53_P_1): Likewise.
582         (VEX_W_0F58_P_0): Likewise.
583         (VEX_W_0F58_P_1): Likewise.
584         (VEX_W_0F58_P_2): Likewise.
585         (VEX_W_0F58_P_3): Likewise.
586         (VEX_W_0F59_P_0): Likewise.
587         (VEX_W_0F59_P_1): Likewise.
588         (VEX_W_0F59_P_2): Likewise.
589         (VEX_W_0F59_P_3): Likewise.
590         (VEX_W_0F5A_P_0): Likewise.
591         (VEX_W_0F5A_P_1): Likewise.
592         (VEX_W_0F5A_P_3): Likewise.
593         (VEX_W_0F5B_P_0): Likewise.
594         (VEX_W_0F5B_P_1): Likewise.
595         (VEX_W_0F5B_P_2): Likewise.
596         (VEX_W_0F5C_P_0): Likewise.
597         (VEX_W_0F5C_P_1): Likewise.
598         (VEX_W_0F5C_P_2): Likewise.
599         (VEX_W_0F5C_P_3): Likewise.
600         (VEX_W_0F5D_P_0): Likewise.
601         (VEX_W_0F5D_P_1): Likewise.
602         (VEX_W_0F5D_P_2): Likewise.
603         (VEX_W_0F5D_P_3): Likewise.
604         (VEX_W_0F5E_P_0): Likewise.
605         (VEX_W_0F5E_P_1): Likewise.
606         (VEX_W_0F5E_P_2): Likewise.
607         (VEX_W_0F5E_P_3): Likewise.
608         (VEX_W_0F5F_P_0): Likewise.
609         (VEX_W_0F5F_P_1): Likewise.
610         (VEX_W_0F5F_P_2): Likewise.
611         (VEX_W_0F5F_P_3): Likewise.
612         (VEX_W_0F60_P_2): Likewise.
613         (VEX_W_0F61_P_2): Likewise.
614         (VEX_W_0F62_P_2): Likewise.
615         (VEX_W_0F63_P_2): Likewise.
616         (VEX_W_0F64_P_2): Likewise.
617         (VEX_W_0F65_P_2): Likewise.
618         (VEX_W_0F66_P_2): Likewise.
619         (VEX_W_0F67_P_2): Likewise.
620         (VEX_W_0F68_P_2): Likewise.
621         (VEX_W_0F69_P_2): Likewise.
622         (VEX_W_0F6A_P_2): Likewise.
623         (VEX_W_0F6B_P_2): Likewise.
624         (VEX_W_0F6C_P_2): Likewise.
625         (VEX_W_0F6D_P_2): Likewise.
626         (VEX_W_0F6F_P_1): Likewise.
627         (VEX_W_0F6F_P_2): Likewise.
628         (VEX_W_0F70_P_1): Likewise.
629         (VEX_W_0F70_P_2): Likewise.
630         (VEX_W_0F70_P_3): Likewise.
631         (VEX_W_0F71_R_2_P_2): Likewise.
632         (VEX_W_0F71_R_4_P_2): Likewise.
633         (VEX_W_0F71_R_6_P_2): Likewise.
634         (VEX_W_0F72_R_2_P_2): Likewise.
635         (VEX_W_0F72_R_4_P_2): Likewise.
636         (VEX_W_0F72_R_6_P_2): Likewise.
637         (VEX_W_0F73_R_2_P_2): Likewise.
638         (VEX_W_0F73_R_3_P_2): Likewise.
639         (VEX_W_0F73_R_6_P_2): Likewise.
640         (VEX_W_0F73_R_7_P_2): Likewise.
641         (VEX_W_0F74_P_2): Likewise.
642         (VEX_W_0F75_P_2): Likewise.
643         (VEX_W_0F76_P_2): Likewise.
644         (VEX_W_0F77_P_0): Likewise.
645         (VEX_W_0F7C_P_2): Likewise.
646         (VEX_W_0F7C_P_3): Likewise.
647         (VEX_W_0F7D_P_2): Likewise.
648         (VEX_W_0F7D_P_3): Likewise.
649         (VEX_W_0F7E_P_1): Likewise.
650         (VEX_W_0F7F_P_1): Likewise.
651         (VEX_W_0F7F_P_2): Likewise.
652         (VEX_W_0FAE_R_2_M_0): Likewise.
653         (VEX_W_0FAE_R_3_M_0): Likewise.
654         (VEX_W_0FC2_P_0): Likewise.
655         (VEX_W_0FC2_P_1): Likewise.
656         (VEX_W_0FC2_P_2): Likewise.
657         (VEX_W_0FC2_P_3): Likewise.
658         (VEX_W_0FD0_P_2): Likewise.
659         (VEX_W_0FD0_P_3): Likewise.
660         (VEX_W_0FD1_P_2): Likewise.
661         (VEX_W_0FD2_P_2): Likewise.
662         (VEX_W_0FD3_P_2): Likewise.
663         (VEX_W_0FD4_P_2): Likewise.
664         (VEX_W_0FD5_P_2): Likewise.
665         (VEX_W_0FD6_P_2): Likewise.
666         (VEX_W_0FD7_P_2_M_1): Likewise.
667         (VEX_W_0FD8_P_2): Likewise.
668         (VEX_W_0FD9_P_2): Likewise.
669         (VEX_W_0FDA_P_2): Likewise.
670         (VEX_W_0FDB_P_2): Likewise.
671         (VEX_W_0FDC_P_2): Likewise.
672         (VEX_W_0FDD_P_2): Likewise.
673         (VEX_W_0FDE_P_2): Likewise.
674         (VEX_W_0FDF_P_2): Likewise.
675         (VEX_W_0FE0_P_2): Likewise.
676         (VEX_W_0FE1_P_2): Likewise.
677         (VEX_W_0FE2_P_2): Likewise.
678         (VEX_W_0FE3_P_2): Likewise.
679         (VEX_W_0FE4_P_2): Likewise.
680         (VEX_W_0FE5_P_2): Likewise.
681         (VEX_W_0FE6_P_1): Likewise.
682         (VEX_W_0FE6_P_2): Likewise.
683         (VEX_W_0FE6_P_3): Likewise.
684         (VEX_W_0FE7_P_2_M_0): Likewise.
685         (VEX_W_0FE8_P_2): Likewise.
686         (VEX_W_0FE9_P_2): Likewise.
687         (VEX_W_0FEA_P_2): Likewise.
688         (VEX_W_0FEB_P_2): Likewise.
689         (VEX_W_0FEC_P_2): Likewise.
690         (VEX_W_0FED_P_2): Likewise.
691         (VEX_W_0FEE_P_2): Likewise.
692         (VEX_W_0FEF_P_2): Likewise.
693         (VEX_W_0FF0_P_3_M_0): Likewise.
694         (VEX_W_0FF1_P_2): Likewise.
695         (VEX_W_0FF2_P_2): Likewise.
696         (VEX_W_0FF3_P_2): Likewise.
697         (VEX_W_0FF4_P_2): Likewise.
698         (VEX_W_0FF5_P_2): Likewise.
699         (VEX_W_0FF6_P_2): Likewise.
700         (VEX_W_0FF7_P_2): Likewise.
701         (VEX_W_0FF8_P_2): Likewise.
702         (VEX_W_0FF9_P_2): Likewise.
703         (VEX_W_0FFA_P_2): Likewise.
704         (VEX_W_0FFB_P_2): Likewise.
705         (VEX_W_0FFC_P_2): Likewise.
706         (VEX_W_0FFD_P_2): Likewise.
707         (VEX_W_0FFE_P_2): Likewise.
708         (VEX_W_0F3800_P_2): Likewise.
709         (VEX_W_0F3801_P_2): Likewise.
710         (VEX_W_0F3802_P_2): Likewise.
711         (VEX_W_0F3803_P_2): Likewise.
712         (VEX_W_0F3804_P_2): Likewise.
713         (VEX_W_0F3805_P_2): Likewise.
714         (VEX_W_0F3806_P_2): Likewise.
715         (VEX_W_0F3807_P_2): Likewise.
716         (VEX_W_0F3808_P_2): Likewise.
717         (VEX_W_0F3809_P_2): Likewise.
718         (VEX_W_0F380A_P_2): Likewise.
719         (VEX_W_0F380B_P_2): Likewise.
720         (VEX_W_0F3817_P_2): Likewise.
721         (VEX_W_0F381C_P_2): Likewise.
722         (VEX_W_0F381D_P_2): Likewise.
723         (VEX_W_0F381E_P_2): Likewise.
724         (VEX_W_0F3820_P_2): Likewise.
725         (VEX_W_0F3821_P_2): Likewise.
726         (VEX_W_0F3822_P_2): Likewise.
727         (VEX_W_0F3823_P_2): Likewise.
728         (VEX_W_0F3824_P_2): Likewise.
729         (VEX_W_0F3825_P_2): Likewise.
730         (VEX_W_0F3828_P_2): Likewise.
731         (VEX_W_0F3829_P_2): Likewise.
732         (VEX_W_0F382A_P_2_M_0): Likewise.
733         (VEX_W_0F382B_P_2): Likewise.
734         (VEX_W_0F3830_P_2): Likewise.
735         (VEX_W_0F3831_P_2): Likewise.
736         (VEX_W_0F3832_P_2): Likewise.
737         (VEX_W_0F3833_P_2): Likewise.
738         (VEX_W_0F3834_P_2): Likewise.
739         (VEX_W_0F3835_P_2): Likewise.
740         (VEX_W_0F3837_P_2): Likewise.
741         (VEX_W_0F3838_P_2): Likewise.
742         (VEX_W_0F3839_P_2): Likewise.
743         (VEX_W_0F383A_P_2): Likewise.
744         (VEX_W_0F383B_P_2): Likewise.
745         (VEX_W_0F383C_P_2): Likewise.
746         (VEX_W_0F383D_P_2): Likewise.
747         (VEX_W_0F383E_P_2): Likewise.
748         (VEX_W_0F383F_P_2): Likewise.
749         (VEX_W_0F3840_P_2): Likewise.
750         (VEX_W_0F3841_P_2): Likewise.
751         (VEX_W_0F38DB_P_2): Likewise.
752         (VEX_W_0F3A08_P_2): Likewise.
753         (VEX_W_0F3A09_P_2): Likewise.
754         (VEX_W_0F3A0A_P_2): Likewise.
755         (VEX_W_0F3A0B_P_2): Likewise.
756         (VEX_W_0F3A0C_P_2): Likewise.
757         (VEX_W_0F3A0D_P_2): Likewise.
758         (VEX_W_0F3A0E_P_2): Likewise.
759         (VEX_W_0F3A0F_P_2): Likewise.
760         (VEX_W_0F3A21_P_2): Likewise.
761         (VEX_W_0F3A40_P_2): Likewise.
762         (VEX_W_0F3A41_P_2): Likewise.
763         (VEX_W_0F3A42_P_2): Likewise.
764         (VEX_W_0F3A62_P_2): Likewise.
765         (VEX_W_0F3A63_P_2): Likewise.
766         (VEX_W_0F3ADF_P_2): Likewise.
767         (VEX_LEN_0F77_P_0): New.
768         (prefix_table): Update PREFIX_VEX_0F10, PREFIX_VEX_0F11,
769         PREFIX_VEX_0F12, PREFIX_VEX_0F16, PREFIX_VEX_0F2E,
770         PREFIX_VEX_0F2F, PREFIX_VEX_0F51, PREFIX_VEX_0F52,
771         PREFIX_VEX_0F53, PREFIX_VEX_0F58, PREFIX_VEX_0F59,
772         PREFIX_VEX_0F5A, PREFIX_VEX_0F5B, PREFIX_VEX_0F5C,
773         PREFIX_VEX_0F5D, PREFIX_VEX_0F5E, PREFIX_VEX_0F5F,
774         PREFIX_VEX_0F60, PREFIX_VEX_0F61, PREFIX_VEX_0F62,
775         PREFIX_VEX_0F63, PREFIX_VEX_0F64, PREFIX_VEX_0F65,
776         PREFIX_VEX_0F66, PREFIX_VEX_0F67, PREFIX_VEX_0F68,
777         PREFIX_VEX_0F69, PREFIX_VEX_0F6A, PREFIX_VEX_0F6B,
778         PREFIX_VEX_0F6C, PREFIX_VEX_0F6D, PREFIX_VEX_0F6F,
779         PREFIX_VEX_0F70, PREFIX_VEX_0F71_REG_2, PREFIX_VEX_0F71_REG_4,
780         PREFIX_VEX_0F71_REG_6, PREFIX_VEX_0F72_REG_4,
781         PREFIX_VEX_0F72_REG_6, PREFIX_VEX_0F73_REG_2,
782         PREFIX_VEX_0F73_REG_3, PREFIX_VEX_0F73_REG_6,
783         PREFIX_VEX_0F73_REG_7, PREFIX_VEX_0F74, PREFIX_VEX_0F75,
784         PREFIX_VEX_0F76, PREFIX_VEX_0F77, PREFIX_VEX_0F7C,
785         PREFIX_VEX_0F7D, PREFIX_VEX_0F7F, PREFIX_VEX_0FC2,
786         PREFIX_VEX_0FD0, PREFIX_VEX_0FD1, PREFIX_VEX_0FD2,
787         PREFIX_VEX_0FD3, PREFIX_VEX_0FD4, PREFIX_VEX_0FD5,
788         PREFIX_VEX_0FD8, PREFIX_VEX_0FD9, PREFIX_VEX_0FDA,
789         PREFIX_VEX_0FDC, PREFIX_VEX_0FDD, PREFIX_VEX_0FDE,
790         PREFIX_VEX_0FDF, PREFIX_VEX_0FE0, PREFIX_VEX_0FE1,
791         PREFIX_VEX_0FE2, PREFIX_VEX_0FE3, PREFIX_VEX_0FE4,
792         PREFIX_VEX_0FE5, PREFIX_VEX_0FE6, PREFIX_VEX_0FE8,
793         PREFIX_VEX_0FE9, PREFIX_VEX_0FEA, PREFIX_VEX_0FEB,
794         PREFIX_VEX_0FEC, PREFIX_VEX_0FED, PREFIX_VEX_0FEE,
795         PREFIX_VEX_0FEF, PREFIX_VEX_0FF1. PREFIX_VEX_0FF2,
796         PREFIX_VEX_0FF3, PREFIX_VEX_0FF4, PREFIX_VEX_0FF5,
797         PREFIX_VEX_0FF6, PREFIX_VEX_0FF8, PREFIX_VEX_0FF9,
798         PREFIX_VEX_0FFA, PREFIX_VEX_0FFB, PREFIX_VEX_0FFC,
799         PREFIX_VEX_0FFD, PREFIX_VEX_0FFE, PREFIX_VEX_0F3800,
800         PREFIX_VEX_0F3801, PREFIX_VEX_0F3802, PREFIX_VEX_0F3803,
801         PREFIX_VEX_0F3804, PREFIX_VEX_0F3805, PREFIX_VEX_0F3806,
802         PREFIX_VEX_0F3807, PREFIX_VEX_0F3808, PREFIX_VEX_0F3809,
803         PREFIX_VEX_0F380A, PREFIX_VEX_0F380B, PREFIX_VEX_0F3817,
804         PREFIX_VEX_0F381C, PREFIX_VEX_0F381D, PREFIX_VEX_0F381E,
805         PREFIX_VEX_0F3820, PREFIX_VEX_0F3821, PREFIX_VEX_0F3822,
806         PREFIX_VEX_0F3823, PREFIX_VEX_0F3824, PREFIX_VEX_0F3825,
807         PREFIX_VEX_0F3828, PREFIX_VEX_0F3829, PREFIX_VEX_0F382B,
808         PREFIX_VEX_0F382C, PREFIX_VEX_0F3831, PREFIX_VEX_0F3832,
809         PREFIX_VEX_0F3833, PREFIX_VEX_0F3834, PREFIX_VEX_0F3835,
810         PREFIX_VEX_0F3837, PREFIX_VEX_0F3838, PREFIX_VEX_0F3839,
811         PREFIX_VEX_0F383A, PREFIX_VEX_0F383B, PREFIX_VEX_0F383C,
812         PREFIX_VEX_0F383D, PREFIX_VEX_0F383E, PREFIX_VEX_0F383F,
813         PREFIX_VEX_0F3840, PREFIX_VEX_0F3A08, PREFIX_VEX_0F3A09,
814         PREFIX_VEX_0F3A0A, PREFIX_VEX_0F3A0B, PREFIX_VEX_0F3A0C,
815         PREFIX_VEX_0F3A0D, PREFIX_VEX_0F3A0E, PREFIX_VEX_0F3A0F,
816         PREFIX_VEX_0F3A40 and PREFIX_VEX_0F3A42 entries.
817         (vex_table): Update VEX 0F28 and 0F29 entries.
818         (vex_len_table): Update VEX_LEN_0F10_P_1, VEX_LEN_0F10_P_3,
819         VEX_LEN_0F11_P_1, VEX_LEN_0F11_P_3, VEX_LEN_0F2E_P_0,
820         VEX_LEN_0F2E_P_2, VEX_LEN_0F2F_P_0, VEX_LEN_0F2F_P_2,
821         VEX_LEN_0F51_P_1, VEX_LEN_0F51_P_3, VEX_LEN_0F52_P_1,
822         VEX_LEN_0F53_P_1, VEX_LEN_0F58_P_1, VEX_LEN_0F58_P_3,
823         VEX_LEN_0F59_P_1, VEX_LEN_0F59_P_3, VEX_LEN_0F5A_P_1,
824         VEX_LEN_0F5A_P_3, VEX_LEN_0F5C_P_1, VEX_LEN_0F5C_P_3,
825         VEX_LEN_0F5D_P_1, VEX_LEN_0F5D_P_3, VEX_LEN_0F5E_P_1,
826         VEX_LEN_0F5E_P_3, VEX_LEN_0F5F_P_1, VEX_LEN_0F5F_P_3,
827         VEX_LEN_0FC2_P_1, VEX_LEN_0FC2_P_3, VEX_LEN_0F3A0A_P_2 and
828         VEX_LEN_0F3A0B_P_2 entries.
829         (vex_w_table): Remove VEX_W_0F10_P_0, VEX_W_0F10_P_1,
830         VEX_W_0F10_P_2, VEX_W_0F10_P_3, VEX_W_0F11_P_0, VEX_W_0F11_P_1,
831         VEX_W_0F11_P_2, VEX_W_0F11_P_3, VEX_W_0F12_P_0_M_0,
832         VEX_W_0F12_P_0_M_1, VEX_W_0F12_P_1, VEX_W_0F12_P_2,
833         VEX_W_0F12_P_3, VEX_W_0F13_M_0, VEX_W_0F14, VEX_W_0F15,
834         VEX_W_0F16_P_0_M_0, VEX_W_0F16_P_0_M_1, VEX_W_0F16_P_1,
835         VEX_W_0F16_P_2, VEX_W_0F17_M_0, VEX_W_0F28, VEX_W_0F29,
836         VEX_W_0F2B_M_0, VEX_W_0F2E_P_0, VEX_W_0F2E_P_2, VEX_W_0F2F_P_0,
837         VEX_W_0F2F_P_2, VEX_W_0F50_M_0, VEX_W_0F51_P_0, VEX_W_0F51_P_1,
838         VEX_W_0F51_P_2, VEX_W_0F51_P_3, VEX_W_0F52_P_0, VEX_W_0F52_P_1,
839         VEX_W_0F53_P_0, VEX_W_0F53_P_1, VEX_W_0F58_P_0, VEX_W_0F58_P_1,
840         VEX_W_0F58_P_2, VEX_W_0F58_P_3, VEX_W_0F59_P_0, VEX_W_0F59_P_1,
841         VEX_W_0F59_P_2, VEX_W_0F59_P_3, VEX_W_0F5A_P_0, VEX_W_0F5A_P_1,
842         VEX_W_0F5A_P_3, VEX_W_0F5B_P_0, VEX_W_0F5B_P_1, VEX_W_0F5B_P_2,
843         VEX_W_0F5C_P_0, VEX_W_0F5C_P_1, VEX_W_0F5C_P_2, VEX_W_0F5C_P_3,
844         VEX_W_0F5D_P_0, VEX_W_0F5D_P_1, VEX_W_0F5D_P_2, VEX_W_0F5D_P_3,
845         VEX_W_0F5E_P_0, VEX_W_0F5E_P_1, VEX_W_0F5E_P_2, VEX_W_0F5E_P_3,
846         VEX_W_0F5F_P_0, VEX_W_0F5F_P_1, VEX_W_0F5F_P_2, VEX_W_0F5F_P_3,
847         VEX_W_0F60_P_2, VEX_W_0F61_P_2, VEX_W_0F62_P_2, VEX_W_0F63_P_2,
848         VEX_W_0F64_P_2, VEX_W_0F65_P_2, VEX_W_0F66_P_2, VEX_W_0F67_P_2,
849         VEX_W_0F68_P_2, VEX_W_0F69_P_2, VEX_W_0F6A_P_2, VEX_W_0F6B_P_2,
850         VEX_W_0F6C_P_2, VEX_W_0F6D_P_2, VEX_W_0F6F_P_1, VEX_W_0F6F_P_2,
851         VEX_W_0F70_P_1, VEX_W_0F70_P_2, VEX_W_0F70_P_3,
852         VEX_W_0F71_R_2_P_2, VEX_W_0F71_R_4_P_2, VEX_W_0F71_R_6_P_2,
853         VEX_W_0F72_R_2_P_2, VEX_W_0F72_R_4_P_2, VEX_W_0F72_R_6_P_2,
854         VEX_W_0F73_R_2_P_2, VEX_W_0F73_R_3_P_2, VEX_W_0F73_R_6_P_2,
855         VEX_W_0F73_R_7_P_2, VEX_W_0F74_P_2, VEX_W_0F75_P_2,
856         VEX_W_0F76_P_2, VEX_W_0F77_P_0, VEX_W_0F7C_P_2, VEX_W_0F7C_P_3,
857         VEX_W_0F7D_P_2, VEX_W_0F7D_P_3, VEX_W_0F7E_P_1, VEX_W_0F7F_P_1,
858         VEX_W_0F7F_P_2, VEX_W_0FAE_R_2_M_0, VEX_W_0FAE_R_3_M_0,
859         VEX_W_0FC2_P_0, VEX_W_0FC2_P_1, VEX_W_0FC2_P_2, VEX_W_0FC2_P_3,
860         VEX_W_0FD0_P_2, VEX_W_0FD0_P_3, VEX_W_0FD1_P_2, VEX_W_0FD2_P_2,
861         VEX_W_0FD3_P_2, VEX_W_0FD4_P_2, VEX_W_0FD5_P_2, VEX_W_0FD6_P_2,
862         VEX_W_0FD7_P_2_M_1, VEX_W_0FD8_P_2, VEX_W_0FD9_P_2,
863         VEX_W_0FDA_P_2, VEX_W_0FDB_P_2, VEX_W_0FDC_P_2, VEX_W_0FDD_P_2,
864         VEX_W_0FDE_P_2, VEX_W_0FDF_P_2, VEX_W_0FE0_P_2, VEX_W_0FE1_P_2,
865         VEX_W_0FE2_P_2, VEX_W_0FE3_P_2, VEX_W_0FE4_P_2, VEX_W_0FE5_P_2,
866         VEX_W_0FE6_P_1, VEX_W_0FE6_P_2, VEX_W_0FE6_P_3,
867         VEX_W_0FE7_P_2_M_0, VEX_W_0FE8_P_2, VEX_W_0FE9_P_2,
868         VEX_W_0FEA_P_2, VEX_W_0FEB_P_2, VEX_W_0FEC_P_2, VEX_W_0FED_P_2,
869         VEX_W_0FEE_P_2, VEX_W_0FEF_P_2, VEX_W_0FF0_P_3_M_0,
870         VEX_W_0FF1_P_2, VEX_W_0FF2_P_2, VEX_W_0FF3_P_2, VEX_W_0FF4_P_2,
871         VEX_W_0FF5_P_2, VEX_W_0FF6_P_2, VEX_W_0FF7_P_2, VEX_W_0FF8_P_2,
872         VEX_W_0FF9_P_2, VEX_W_0FFA_P_2, VEX_W_0FFB_P_2, VEX_W_0FFC_P_2,
873         VEX_W_0FFD_P_2, VEX_W_0FFE_P_2, VEX_W_0F3800_P_2,
874         VEX_W_0F3801_P_2, VEX_W_0F3802_P_2, VEX_W_0F3803_P_2,
875         VEX_W_0F3804_P_2, VEX_W_0F3805_P_2, VEX_W_0F3806_P_2,
876         VEX_W_0F3807_P_2, VEX_W_0F3808_P_2, VEX_W_0F3809_P_2,
877         VEX_W_0F380A_P_2, VEX_W_0F380B_P_2, VEX_W_0F3817_P_2,
878         VEX_W_0F381C_P_2, VEX_W_0F381D_P_2, VEX_W_0F381E_P_2,
879         VEX_W_0F3820_P_2, VEX_W_0F3821_P_2, VEX_W_0F3822_P_2,
880         VEX_W_0F3823_P_2, VEX_W_0F3824_P_2, VEX_W_0F3825_P_2,
881         VEX_W_0F3828_P_2, VEX_W_0F3829_P_2, VEX_W_0F382A_P_2_M_0,
882         VEX_W_0F382B_P_2, VEX_W_0F3830_P_2, VEX_W_0F3831_P_2,
883         VEX_W_0F3832_P_2, VEX_W_0F3833_P_2, VEX_W_0F3834_P_2,
884         VEX_W_0F3835_P_2, VEX_W_0F3837_P_2, VEX_W_0F3838_P_2,
885         VEX_W_0F3839_P_2, VEX_W_0F383A_P_2, VEX_W_0F383B_P_2,
886         VEX_W_0F383C_P_2, VEX_W_0F383D_P_2, VEX_W_0F383E_P_2,
887         VEX_W_0F383F_P_2, VEX_W_0F3840_P_2, VEX_W_0F3841_P_2,
888         VEX_W_0F38DB_P_2, VEX_W_0F3A08_P_2, VEX_W_0F3A09_P_2,
889         VEX_W_0F3A0A_P_2, VEX_W_0F3A0B_P_2, VEX_W_0F3A0C_P_2,
890         VEX_W_0F3A0D_P_2, VEX_W_0F3A0E_P_2, VEX_W_0F3A0F_P_2,
891         VEX_W_0F3A21_P_2, VEX_W_0F3A40_P_2, VEX_W_0F3A41_P_2,
892         VEX_W_0F3A42_P_2, VEX_W_0F3A62_P_2, VEX_W_0F3A63_P_2 and
893         VEX_W_0F3ADF_P_2 entries.
894         (mod_table): Update MOD_VEX_0F2B, MOD_VEX_0F50,
895         MOD_VEX_0FD7_PREFIX_2, MOD_VEX_0FE7_PREFIX_2,
896         MOD_VEX_0FF0_PREFIX_3 and MOD_VEX_0F382A_PREFIX_2 entries.
897
898 2018-09-17  H.J. Lu  <hongjiu.lu@intel.com>
899
900         * i386-opc.tbl (VexWIG): New.
901         Replace VexW=3 with VexWIG.
902
903 2018-09-15  H.J. Lu  <hongjiu.lu@intel.com>
904
905         * i386-opc.tbl: Set VexW=3 on AVX vrsqrtss.
906         * i386-tbl.h: Regenerated.
907
908 2018-09-15  H.J. Lu  <hongjiu.lu@intel.com>
909
910         PR gas/23665
911         * i386-dis.c (vex_len_table): Update VEX_LEN_0F7E_P_1 and
912         VEX_LEN_0FD6_P_2 entries.
913         * i386-opc.tbl: Set Vex=1 on VEX.128 only vmovq.
914         * i386-tbl.h: Regenerated.
915
916 2018-09-14  H.J. Lu  <hongjiu.lu@intel.com>
917
918         PR gas/23642
919         * i386-opc.h (VEXWIG): New.
920         * i386-opc.tbl: Set VexW=3 on VEX/EVEX WIG instructions.
921         * i386-tbl.h: Regenerated.
922
923 2018-09-14  H.J. Lu  <hongjiu.lu@intel.com>
924
925         PR binutils/23655
926         * i386-dis-evex.h: Replace EXxEVexR with EXxEVexR64 for
927         vcvtsi2sd%LQ and vcvtusi2sd%LQ.
928         * i386-dis.c (EXxEVexR64): New.
929         (evex_rounding_64_mode): Likewise.
930         (OP_Rounding): Handle evex_rounding_64_mode.
931
932 2018-09-14  H.J. Lu  <hongjiu.lu@intel.com>
933
934         PR binutils/23655
935         * i386-dis-evex.h (evex_table): Replace Eq with Edqa for
936         vcvtsi2ss%LQ, vcvtsi2sd%LQ, vcvtusi2ss%LQ and vcvtusi2sd%LQ.
937         * i386-dis.c (Edqa): New.
938         (dqa_mode): Likewise.
939         (intel_operand_size): Handle dqa_mode as m_mode.
940         (OP_E_register): Handle dqa_mode as dq_mode.
941         (OP_E_memory): Set shift for dqa_mode based on address_mode.
942
943 2018-09-14  H.J. Lu  <hongjiu.lu@intel.com>
944
945         * i386-dis.c (OP_E_memory): Reformat.
946
947 2018-09-14  Jan Beulich  <jbeulich@suse.com>
948
949         * i386-opc.tbl (crc32): Fold byte and word forms.
950         * i386-tbl.h: Re-generate.
951
952 2018-09-13  H.J. Lu  <hongjiu.lu@intel.com>
953
954         * i386-opc.tbl: Add VexW=1 to VEX.W0 VEX movd, cvtsi2ss, cvtsi2sd,
955         pextrd, pinsrd, vcvtsi2sd, vcvtsi2ss, vmovd, vpextrd and vpinsrd.
956         Add VexW=2 to VEX.W1 VEX movq, pextrq, pinsrq, vmovq, vpextrq and
957         vpinsrq.  Remove VexW=1 from WIG VEX movq and vmovq.
958         * i386-tbl.h: Regenerated.
959
960 2018-09-13  Jan Beulich  <jbeulich@suse.com>
961
962         * i386-opc.tbl (mov, movq, movdir64b): Drop IgnoreSize where
963         meaningless.
964         (invept, invvpid, vcvtph2ps, vcvtps2ph, bndmov, xrstors,
965         xrstors64, xsaves, xsaves64, xsavec, xsavec64, rdpid, incsspq,
966         rdsspq, saveprevssp, setssbsy, endbr32, endbr64): Drop IgnoreSize.
967         * i386-tbl.h: Re-generate.
968
969 2018-09-13  Jan Beulich  <jbeulich@suse.com>
970
971         * i386-opc.tbl: Drop IgnoreSize from AVX512_4FMAPS and
972         AVX512_4VNNIW insns.
973         * i386-tbl.h: Re-generate.
974
975 2018-09-13  Jan Beulich  <jbeulich@suse.com>
976
977         * i386-opc.tbl: Drop IgnoreSize from AVX512DQ insns where
978         meaningless.
979         * i386-tbl.h: Re-generate.
980
981 2018-09-13  Jan Beulich  <jbeulich@suse.com>
982
983         * i386-opc.tbl: Drop IgnoreSize from AVX512BW insns where
984         meaningless.
985         * i386-tbl.h: Re-generate.
986
987 2018-09-13  Jan Beulich  <jbeulich@suse.com>
988
989         * i386-opc.tbl: Drop IgnoreSize from AVX512VL insns where
990         meaningless.
991         * i386-tbl.h: Re-generate.
992
993 2018-09-13  Jan Beulich  <jbeulich@suse.com>
994
995         * i386-opc.tbl: Drop IgnoreSize from AVX512ER insns where
996         meaningless.
997         * i386-tbl.h: Re-generate.
998
999 2018-09-13  Jan Beulich  <jbeulich@suse.com>
1000
1001         * i386-opc.tbl: Drop IgnoreSize from AVX512F insns where
1002         meaningless.
1003         * i386-tbl.h: Re-generate.
1004
1005 2018-09-13  Jan Beulich  <jbeulich@suse.com>
1006
1007         * i386-opc.tbl: Drop IgnoreSize from SHA insns.
1008         * i386-tbl.h: Re-generate.
1009
1010 2018-09-13  Jan Beulich  <jbeulich@suse.com>
1011
1012         * i386-opc.tbl: Drop IgnoreSize from XOP and SSE4a insns.
1013         * i386-tbl.h: Re-generate.
1014
1015 2018-09-13  Jan Beulich  <jbeulich@suse.com>
1016
1017         * i386-opc.tbl: Drop IgnoreSize from AVX2 insns where
1018         meaningless.
1019         * i386-tbl.h: Re-generate.
1020
1021 2018-09-13  Jan Beulich  <jbeulich@suse.com>
1022
1023         * i386-opc.tbl: Drop IgnoreSize from AVX insns where
1024         meaningless.
1025         * i386-tbl.h: Re-generate.
1026
1027 2018-09-13  Jan Beulich  <jbeulich@suse.com>
1028
1029         * i386-opc.tbl: Drop IgnoreSize from GNFI insns.
1030         * i386-tbl.h: Re-generate.
1031
1032 2018-09-13  Jan Beulich  <jbeulich@suse.com>
1033
1034         * i386-opc.tbl: Drop IgnoreSize from PCLMUL/VPCLMUL insns.
1035         * i386-tbl.h: Re-generate.
1036
1037 2018-09-13  Jan Beulich  <jbeulich@suse.com>
1038
1039         * i386-opc.tbl: Drop IgnoreSize from AES/VAES insns.
1040         * i386-tbl.h: Re-generate.
1041
1042 2018-09-13  Jan Beulich  <jbeulich@suse.com>
1043
1044         * i386-opc.tbl: Drop IgnoreSize from SSE4.2 insns where
1045         meaningless.
1046         * i386-tbl.h: Re-generate.
1047
1048 2018-09-13  Jan Beulich  <jbeulich@suse.com>
1049
1050         * i386-opc.tbl: Drop IgnoreSize from SSE4.1 insns where
1051         meaningless.
1052         * i386-tbl.h: Re-generate.
1053
1054 2018-09-13  Jan Beulich  <jbeulich@suse.com>
1055
1056         * i386-opc.tbl: Drop IgnoreSize from SSSE3 insns where
1057         meaningless.
1058         * i386-tbl.h: Re-generate.
1059
1060 2018-09-13  Jan Beulich  <jbeulich@suse.com>
1061
1062         * i386-opc.tbl: Drop IgnoreSize from SSE3 insns where meaningless.
1063         * i386-tbl.h: Re-generate.
1064
1065 2018-09-13  Jan Beulich  <jbeulich@suse.com>
1066
1067         * i386-opc.tbl: Drop IgnoreSize from SSE2 insns where meaningless.
1068         * i386-tbl.h: Re-generate.
1069
1070 2018-09-13  Jan Beulich  <jbeulich@suse.com>
1071
1072         * i386-opc.tbl: Drop IgnoreSize from SSE insns where meaningless.
1073         * i386-tbl.h: Re-generate.
1074
1075 2018-09-13  Jan Beulich  <jbeulich@suse.com>
1076
1077         * i386-opc.tbl (crc32, incsspq, rdsspq): Drop Rex64.
1078         (vpbroadcastw, rdpid): Drop NoRex64.
1079         * i386-tbl.h: Re-generate.
1080
1081 2018-09-13  Jan Beulich  <jbeulich@suse.com>
1082
1083         * i386-opc.tbl (vmovsd, vmovss): Fold register form load and
1084         store templates, adding D.
1085         * i386-tbl.h: Re-generate.
1086
1087 2018-09-13  Jan Beulich  <jbeulich@suse.com>
1088
1089         * i386-opc.tbl (bndmov, kmovb, kmovd, kmovq, kmovw, movapd,
1090         movaps, movd, movdqa, movdqu, movhpd, movhps, movlpd, movlps,
1091         movq, movsd, movss, movupd, movups, vmovapd, vmovaps, vmovd,
1092         vmovdqa, vmovdqa32, vmovdqa64, vmovdqu, vmovdqu16, vmovdqu32,
1093         vmovdqu64, vmovdqu8, vmovq, vmovsd, vmovss, vmovupd, vmovups):
1094         Fold load and store templates where possible, adding D. Drop
1095         IgnoreSize where it was pointlessly present. Drop redundant
1096         *word.
1097         * i386-tbl.h: Re-generate.
1098
1099 2018-09-13  Jan Beulich  <jbeulich@suse.com>
1100
1101         * i386-dis.c (Mv_bnd, v_bndmk_mode): New.
1102         (mod_table): Use Mv_bnd for bndldx, bndstx, and bndmk.
1103         (intel_operand_size): Handle v_bndmk_mode.
1104         (OP_E_memory): Likewise. Produce (bad) when also riprel.
1105
1106 2018-09-08  John Darrington  <john@darrington.wattle.id.au>
1107
1108         * disassemble.c (ARCH_s12z): Define if ARCH_all.
1109
1110 2018-08-31  Kito Cheng  <kito@andestech.com>
1111
1112         * riscv-opc.c (riscv_opcodes): Fix incorrect subset info for
1113         compressed floating point instructions.
1114
1115 2018-08-30  Kito Cheng  <kito@andestech.com>
1116
1117         * riscv-dis.c (riscv_disassemble_insn): Check XLEN by
1118         riscv_opcode.xlen_requirement.
1119         * riscv-opc.c (riscv_opcodes): Update for struct change.
1120
1121 2018-08-29  Martin Aberg  <maberg@gaisler.com>
1122
1123         * sparc-opc.c (sparc_opcodes): Add Leon specific partial write
1124         psr (PWRPSR) instruction.
1125
1126 2018-08-29  Chenghua Xu  <paul.hua.gm@gmail.com>
1127
1128         * mips-dis.c (mips_arch_choices): Add gs264e descriptors.
1129
1130 2018-08-29  Chenghua Xu  <paul.hua.gm@gmail.com>
1131
1132         * mips-dis.c (mips_arch_choices): Add gs464e descriptors.
1133
1134 2018-08-29  Chenghua Xu  <paul.hua.gm@gmail.com>
1135
1136         * mips-dis.c (mips_arch_choices): Add gs464 descriptors, Keep
1137         loongson3a as an alias of gs464 for compatibility.
1138         * mips-opc.c (mips_opcodes): Change Comments.
1139
1140 2018-08-29  Chenghua Xu  <paul.hua.gm@gmail.com>
1141
1142         * mips-dis.c (parse_mips_ase_option): Handle -M loongson-ext
1143         option.
1144         (print_mips_disassembler_options): Document -M loongson-ext.
1145         * mips-opc.c (LEXT2): New macro.
1146         (mips_opcodes): Add cto, ctz, dcto, dctz instructions.
1147
1148 2018-08-29  Chenghua Xu  <paul.hua.gm@gmail.com>
1149
1150          * mips-dis.c (mips_arch_choices): Add EXT to loongson3a
1151          descriptors.
1152          (parse_mips_ase_option): Handle -M loongson-ext option.
1153          (print_mips_disassembler_options): Document -M loongson-ext.
1154          * mips-opc.c (IL3A): Delete.
1155          * mips-opc.c (LEXT): New macro.
1156          (mips_opcodes): Replace IL2F|IL3A marking with LEXT for EXT
1157          instructions.
1158
1159 2018-08-29  Chenghua Xu  <paul.hua.gm@gmail.com>
1160
1161         * mips-dis.c (mips_arch_choices): Add CAM to loongson3a
1162         descriptors.
1163         (parse_mips_ase_option): Handle -M loongson-cam option.
1164         (print_mips_disassembler_options): Document -M loongson-cam.
1165         * mips-opc.c (LCAM): New macro.
1166         (mips_opcodes): Replace IL2F|IL3A marking with LCAM for CAM
1167         instructions.
1168
1169 2018-08-21  Alan Modra  <amodra@gmail.com>
1170
1171         * ppc-dis.c (operand_value_powerpc): Init "invalid".
1172         (skip_optional_operands): Count optional operands, and update
1173         ppc_optional_operand_value call.
1174         * ppc-opc.c (extract_dxdn): Remove ATTRIBUTE_UNUSED from used arg.
1175         (extract_vlensi): Likewise.
1176         (extract_fxm): Return default value for missing optional operand.
1177         (extract_ls, extract_raq, extract_tbr): Likewise.
1178         (insert_sxl, extract_sxl): New functions.
1179         (insert_esync, extract_esync): Remove Power9 handling and simplify.
1180         (powerpc_operands <FXM4, TBR>): Delete PPC_OPERAND_OPTIONAL_VALUE
1181         flag and extra entry.
1182         (powerpc_operands <SXL>): Likewise, and use insert_sxl and
1183         extract_sxl.
1184
1185 2018-08-20  Alan Modra  <amodra@gmail.com>
1186
1187         * sh-opc.h (MASK): Simplify.
1188
1189 2018-08-18  John Darrington  <john@darrington.wattle.id.au>
1190
1191         * s12z-dis.c (bm_decode): Deal with cases where the mode is
1192         BM_RESERVED0 or BM_RESERVED1
1193         (bm_rel_decode, bm_n_bytes): Ditto.
1194
1195 2018-08-18  John Darrington  <john@darrington.wattle.id.au>
1196
1197         * s12z.h: Delete.
1198
1199 2018-08-14  H.J. Lu  <hongjiu.lu@intel.com>
1200
1201         * i386-dis.c (OP_E_memory): In 64-bit mode, display eiz for
1202         address with the addr32 prefix and without base nor index
1203         registers.
1204
1205 2018-08-11  H.J. Lu  <hongjiu.lu@intel.com>
1206
1207         * i386-gen.c (cpu_flag_init): Add CpuCMOV and CpuFXSR to
1208         CPU_I686_FLAGS.  Add CPU_CMOV_FLAGS, CPU_FXSR_FLAGS,
1209         CPU_ANY_CMOV_FLAGS and CPU_ANY_FXSR_FLAGS.
1210         (cpu_flags): Add CpuCMOV and CpuFXSR.
1211         * i386-opc.tbl: Replace Cpu686 with CpuFXSR on fxsave, fxsave64,
1212         fxrstor and fxrstor64.  Replace Cpu686 with CpuCMOV on cmovCC.
1213         * i386-init.h: Regenerated.
1214         * i386-tbl.h: Likewise.
1215
1216 2018-08-06  Claudiu Zissulescu  <claziss@synopsys.com>
1217
1218         * arc-regs.h: Update auxiliary registers.
1219
1220 2018-08-06  Jan Beulich  <jbeulich@suse.com>
1221
1222         * i386-opc.h (RegRip, RegEip, RegEiz, RegRiz): Drop defines.
1223         (RegIP, RegIZ): Define.
1224         * i386-reg.tbl: Adjust comments.
1225         (rip): Use Qword instead of BaseIndex. Use RegIP.
1226         (eip): Use Dword instead of BaseIndex. Use RegIP.
1227         (riz): Add Qword. Use RegIZ.
1228         (eiz): Add Dword. Use RegIZ.
1229         * i386-tbl.h: Re-generate.
1230
1231 2018-08-03  Jan Beulich  <jbeulich@suse.com>
1232
1233         * i386-opc.tbl (pmovsxbw, pmovsxdq, pmovsxwd, pmovzxbw,
1234         pmovzxdq, pmovzxwd, vpmovsxbw, vpmovsxdq, vpmovsxwd, vpmovzxbw,
1235         vpmovzxdq, vpmovzxwd): Remove NoRex64.
1236         * i386-tbl.h: Re-generate.
1237
1238 2018-08-03  Jan Beulich  <jbeulich@suse.com>
1239
1240         * i386-gen.c (operand_types): Remove Mem field.
1241         * i386-opc.h (union i386_operand_type): Remove mem field.
1242         * i386-init.h, i386-tbl.h: Re-generate.
1243
1244 2018-08-01  Alan Modra  <amodra@gmail.com>
1245
1246         * po/POTFILES.in: Regenerate.
1247
1248 2018-07-31  Nick Clifton  <nickc@redhat.com>
1249
1250         * po/sv.po: Updated Swedish translation.
1251
1252 2018-07-31  Jan Beulich  <jbeulich@suse.com>
1253
1254         * i386-opc.tbl (kandnd, kandnq, kxord, kxorq): Add Optimize.
1255         * i386-init.h, i386-tbl.h: Re-generate.
1256
1257 2018-07-31  Jan Beulich  <jbeulich@suse.com>
1258
1259         * i386-opc.h (ZEROING_MASKING) Rename to ...
1260         (DYNAMIC_MASKING): ... this. Adjust comment.
1261         * i386-opc.tbl (MaskingMorZ): Define.
1262         (vcompresspd, vcompressps, vcvtps2ph, vextractf32x4,
1263         vextractf32x8, vextractf64x2, vextractf64x4, vextracti32x4,
1264         vextracti32x8, vextracti64x2, vextracti64x4, vmovapd, vmovaps,
1265         vmovdqa32, vmovdqa64, vmovdqu8, vmovdqu16, vmovdqu32, vmovdqu64,
1266         vmovupd, vmovups, vpcompressb, vpcompressw, vpcompressd,
1267         vpcompressq, vpmovdb, vpmovdw, vpmovqb, vpmovqd, vpmovqw,
1268         vpmovsdb, vpmovsdw, vpmovsqb, vpmovsqd, vpmovsqw, vpmovswb,
1269         vpmovusdb, vpmovusdw, vpmovusqb, vpmovusqd, vpmovusqw,
1270         vpmovuswb, vpmovwb): Fold AVX512 register and memory forms.
1271
1272 2018-07-31  Jan Beulich  <jbeulich@suse.com>
1273
1274         * i386-opc.tbl: Use element rather than vector size for AVX512*
1275         scatter/gather insns.
1276         * i386-tbl.h: Re-generate.
1277
1278 2018-07-31  Jan Beulich  <jbeulich@suse.com>
1279
1280         * i386-gen.c (cpu_flag_init): Drop CpuVREX uses.
1281         (cpu_flags): Drop CpuVREX.
1282         * i386-opc.h (CpuVREX): Delete.
1283         (union i386_cpu_flags): Remove cpuvrex.
1284         * i386-init.h, i386-tbl.h: Re-generate.
1285
1286 2018-07-30  Jim Wilson  <jimw@sifive.com>
1287
1288         * riscv-dis.c (riscv_disassemble_insn): Set insn_type and data_size
1289         fields.
1290         * riscv-opc.c (riscv_opcodes): Use new INSN_* flags to annotate insns.
1291
1292 2018-07-30  Andrew Jenner  <andrew@codesourcery.com>
1293
1294         * Makefile.am (TARGET_LIBOPCODES_CFILES): Add csky-dis.c.
1295         * Makefile.in: Regenerated.
1296         * configure.ac: Add C-SKY.
1297         * configure: Regenerated.
1298         * csky-dis.c: New file.
1299         * csky-opc.h: New file.
1300         * disassemble.c (ARCH_csky): Define.
1301         (disassembler, disassemble_init_for_target): Add case for ARCH_csky.
1302         * disassemble.h (print_insn_csky, csky_get_disassembler): Declare.
1303
1304 2018-07-27  Alan Modra  <amodra@gmail.com>
1305
1306         * ppc-opc.c (insert_sprbat): Correct function parameter and
1307         return type.
1308         (extract_sprbat): Likewise, variable too.
1309
1310 2018-07-26  Alex Chadwick  <Alex.Chadwick@cl.cam.ac.uk>
1311             Alan Modra  <amodra@gmail.com>
1312
1313         * ppc-dis.c (ppc_opts): Add -mgekko and -mbroadway.
1314         (powerpc_init_dialect): Handle bfd_mach_ppc_750.
1315         * ppc-opc.c (insert_sprbat, extract_sprbat): New functions to
1316         support disjointed BAT.
1317         (powerpc_operands): Allow extra bit in SPRBAT_MASK.  Add SPRGQR.
1318         (XSPRGQR_MASK, GEKKO, BROADWAY): Define.
1319         (powerpc_opcodes): Add 750cl extended mnemonics for spr access.
1320
1321 2018-07-25  H.J. Lu  <hongjiu.lu@intel.com>
1322             Igor Tsimbalist  <igor.v.tsimbalist@intel.com>
1323
1324         * i386-gen.c (adjust_broadcast_modifier): New function.
1325         (process_i386_opcode_modifier): Add an argument for operands.
1326         Adjust the Broadcast value based on operands.
1327         (output_i386_opcode): Pass operand_types to
1328         process_i386_opcode_modifier.
1329         (process_i386_opcodes): Pass NULL as operands to
1330         process_i386_opcode_modifier.
1331         * i386-opc.h (BYTE_BROADCAST): New.
1332         (WORD_BROADCAST): Likewise.
1333         (DWORD_BROADCAST): Likewise.
1334         (QWORD_BROADCAST): Likewise.
1335         (i386_opcode_modifier): Expand broadcast to 3 bits.
1336         * i386-tbl.h: Regenerated.
1337
1338 2018-07-24  Alan Modra  <amodra@gmail.com>
1339
1340         PR 23430
1341         * or1k-desc.h: Regenerate.
1342
1343 2018-07-24  Jan Beulich  <jbeulich@suse.com>
1344
1345         * i386-dis-evex.h (evex_table): Add %LQ to vcvtsi2ss, vcvtsi2sd,
1346         vcvtusi2ss, and vcvtusi2sd.
1347         * i386-opc.tbl (vcvtsi2sd, vcvtusi2sd, vcvtsi2ss, vcvtusi2ss):
1348         Convert AVX512F variants to distinct CpuNo64 and Cpu64 forms.
1349         * i386-tbl.h: Re-generate.
1350
1351 2018-07-23  Claudiu Zissulescu <claziss@synopsys.com>
1352
1353         * arc-opc.c (extract_w6): Fix extending the sign.
1354
1355 2018-07-23  Claudiu Zissulescu <claziss@synopsys.com>
1356
1357         * arc-tbl.h (vewt): Allow it for ARC EM family.
1358
1359 2018-07-23  Alan Modra  <amodra@gmail.com>
1360
1361         PR 23419
1362         * ppc-opc.c (powerpc_opcodes): Add mtupmc/mfupmc/mfpmc extended
1363         opcode variants for mtspr/mfspr encodings.
1364
1365 2018-07-20  Chenghua Xu  <paul.hua.gm@gmail.com>
1366             Maciej W. Rozycki  <macro@mips.com>
1367
1368         * mips-dis.c (mips_arch_choices): Add MMI to loongson2f and
1369         loongson3a descriptors.
1370         (parse_mips_ase_option): Handle -M loongson-mmi option.
1371         (print_mips_disassembler_options): Document -M loongson-mmi.
1372         * mips-opc.c (LMMI): New macro.
1373         (mips_opcodes): Replace IL2F|IL3A marking with LMMI for MMI
1374         instructions.
1375
1376 2018-07-19  Jan Beulich  <jbeulich@suse.com>
1377
1378         * i386-opc.tbl (vcvtpd2dq, vcvtpd2ps, vcvttpd2dq, vcvtpd2udq,
1379         vcvtqq2ps, vcvtuqq2ps): Fold 128- and 256-bit templates. Drop
1380         IgnoreSize and [XYZ]MMword where applicable.
1381         * i386-tbl.h: Re-generate.
1382
1383 2018-07-19  Jan Beulich  <jbeulich@suse.com>
1384
1385         * i386-opc.tbl (vfpclasspd, vfpclassps): Fold.
1386         (vfpclasspdz, vfpclasspsz): Drop IgnoreSize and ZmmWord.
1387         (vfpclasspdx, vfpclasspsx): Drop IgnoreSize and XmmWord.
1388         (vfpclasspdy, vfpclasspsy): Drop IgnoreSize and YmmWord.
1389         * i386-tbl.h: Re-generate.
1390
1391 2018-07-19  Jan Beulich  <jbeulich@suse.com>
1392
1393         * i386-opc.tbl: Fold AVX512IFMA, AVX512VBMI, AVX512_VPOPCNTDQ,
1394         AVX512_VBMI2, AVX512_VNNI, AVX512_BITALG, GFNI, VAES, and
1395         VPCLMULQDQ templates into their respective AVX512VL counterparts
1396         where possible, using Disp8ShiftVL and CheckRegSize instead of
1397         Evex= plus Disp8MemShift= (plus often IgnoreSize) as appropriate.
1398         * i386-tbl.h: Re-generate.
1399
1400 2018-07-19  Jan Beulich  <jbeulich@suse.com>
1401
1402         * i386-opc.tbl: Fold AVX512DQ templates into their respective
1403         AVX512VL counterparts where possible, using Disp8ShiftVL and
1404         CheckRegSize instead of Evex= plus Disp8MemShift= (plus often
1405         IgnoreSize) as appropriate.
1406         * i386-tbl.h: Re-generate.
1407
1408 2018-07-19  Jan Beulich  <jbeulich@suse.com>
1409
1410         * i386-opc.tbl: Fold AVX512BW templates into their respective
1411         AVX512VL counterparts where possible, using Disp8ShiftVL and
1412         CheckRegSize instead of Evex= plus Disp8MemShift= (plus often
1413         IgnoreSize) as appropriate.
1414         * i386-tbl.h: Re-generate.
1415
1416 2018-07-19  Jan Beulich  <jbeulich@suse.com>
1417
1418         * i386-opc.tbl: Fold AVX512CD templates into their respective
1419         AVX512VL counterparts where possible, using Disp8ShiftVL and
1420         CheckRegSize instead of Evex= plus Disp8MemShift= (plus often
1421         IgnoreSize) as appropriate.
1422         * i386-tbl.h: Re-generate.
1423
1424 2018-07-19  Jan Beulich  <jbeulich@suse.com>
1425
1426         * i386-opc.h (DISP8_SHIFT_VL): New.
1427         * i386-opc.tbl (Disp8ShiftVL):  Define.
1428         (various): Fold AVX512VL templates into their respective
1429         AVX512F counterparts where possible, using Disp8ShiftVL and
1430         CheckRegSize instead of Evex= plus Disp8MemShift= (plus often
1431         IgnoreSize) as appropriate.
1432         * i386-tbl.h: Re-generate.
1433
1434 2018-07-19  Jan Beulich  <jbeulich@suse.com>
1435
1436         * Makefile.am: Change dependencies and rule for
1437         $(srcdir)/i386-init.h.
1438         * Makefile.in: Re-generate.
1439         * i386-gen.c (process_i386_opcodes): New local variable
1440         "marker". Drop opening of input file. Recognize marker and line
1441         number directives.
1442         * i386-opc.tbl (OPCODE_I386_H): Define.
1443         (i386-opc.h): Include it.
1444         (None): Undefine.
1445
1446 2018-07-18  H.J. Lu  <hongjiu.lu@intel.com>
1447
1448         PR gas/23418
1449         * i386-opc.h (Byte): Update comments.
1450         (Word): Likewise.
1451         (Dword): Likewise.
1452         (Fword): Likewise.
1453         (Qword): Likewise.
1454         (Tbyte): Likewise.
1455         (Xmmword): Likewise.
1456         (Ymmword): Likewise.
1457         (Zmmword): Likewise.
1458         * i386-opc.tbl: Split vcvtps2qq, vcvtps2uqq, vcvttps2qq and
1459         vcvttps2uqq.
1460         * i386-tbl.h: Regenerated.
1461
1462 2018-07-12  Sudakshina Das  <sudi.das@arm.com>
1463
1464         * aarch64-tbl.h (aarch64_opcode_table): Add entry for
1465         ssbb and pssbb and update dsb flags to F_HAS_ALIAS.
1466         * aarch64-asm-2.c: Regenerate.
1467         * aarch64-dis-2.c: Regenerate.
1468         * aarch64-opc-2.c: Regenerate.
1469
1470 2018-07-12  Tamar Christina  <tamar.christina@arm.com>
1471
1472         PR binutils/23192
1473         * aarch64-tbl.h (sqdmlal, sqdmlal2, smlsl, smlsl2, sqdmlsl, sqdmlsl2,
1474         mul, smull, smull2, sqdmull, sqdmull2, sqdmulh, sqrdmulh, mla, umlal,
1475         umlal2, mls, umlsl, umlsl2, umull, umull2, sqdmlal, sqdmlsl, sqdmull,
1476         sqdmulh, sqrdmulh): Use Em16.
1477
1478 2018-07-11  Sudakshina Das  <sudi.das@arm.com>
1479
1480         * arm-dis.c (arm_opcodes): Add ssbb and pssbb and move
1481         csdb together with them.
1482         (thumb32_opcodes): Likewise.
1483
1484 2018-07-11  Jan Beulich  <jbeulich@suse.com>
1485
1486         * i386-opc.tbl (monitor, monitorx): Add 64-bit template
1487         requiring 32-bit registers as operands 2 and 3. Improve
1488         comments.
1489         (mwait, mwaitx): Fold templates. Improve comments.
1490         OPERAND_TYPE_INOUTPORTREG.
1491         * i386-tbl.h: Re-generate.
1492
1493 2018-07-11  Jan Beulich  <jbeulich@suse.com>
1494
1495         * i386-gen.c (operand_type_init): Remove
1496         OPERAND_TYPE_REG16_INOUTPORTREG entry and one instance of
1497         OPERAND_TYPE_INOUTPORTREG.
1498         * i386-init.h: Re-generate.
1499
1500 2018-07-11  Jan Beulich  <jbeulich@suse.com>
1501
1502         * i386-opc.tbl (wrssd, wrussd): Add Dword.
1503         (wrssq, wrussq): Add Qword.
1504         * i386-tbl.h: Re-generate.
1505
1506 2018-07-11  Jan Beulich  <jbeulich@suse.com>
1507
1508         * i386-opc.h: Rename OTMax to OTNum.
1509         (OTNumOfUints): Adjust calculation.
1510         (OTUnused): Directly alias to OTNum.
1511
1512 2018-07-09  Maciej W. Rozycki  <macro@mips.com>
1513
1514         * s12z-dis.c (lea_reg_xys_opr): Rename `reg' local variable to
1515         `reg_xys'.
1516         (lea_reg_xys): Likewise.
1517         (print_insn_loop_primitive): Rename `reg' local variable to
1518         `reg_dxy'.
1519
1520 2018-07-06  Tamar Christina  <tamar.christina@arm.com>
1521
1522         PR binutils/23242
1523         * aarch64-tbl.h (ldarh): Fix disassembly mask.
1524
1525 2018-07-06  Tamar Christina  <tamar.christina@arm.com>
1526
1527         PR binutils/23369
1528         * aarch64-opc.c (aarch64_sys_regs): Make read/write csselr_el1,
1529         vsesr_el2, osdtrrx_el1, osdtrtx_el1, pmsidr_el1.
1530
1531 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
1532
1533         PR tdep/8282
1534         * mips-dis.c (mips_option_arg_t): New enumeration.
1535         (mips_options): New variable.
1536         (disassembler_options_mips): New function.
1537         (print_mips_disassembler_options): Reimplement in terms of
1538         `disassembler_options_mips'.
1539         * arm-dis.c (disassembler_options_arm): Adapt to using the
1540         `disasm_options_and_args_t' structure.
1541         * ppc-dis.c (disassembler_options_powerpc): Likewise.
1542         * s390-dis.c (disassembler_options_s390): Likewise.
1543
1544 2018-07-02  Thomas Preud'homme  <thomas.preudhomme@arm.com>
1545
1546         * testsuite/ld-arm/tls-descrelax-be8.d: Add architecture version in
1547         expected result.
1548         * testsuite/ld-arm/tls-descrelax-v7.d: Likewise.
1549         * testsuite/ld-arm/tls-longplt-lib.d: Likewise.
1550         * testsuite/ld-arm/tls-longplt.d: Likewise.
1551
1552 2018-06-29  Tamar Christina  <tamar.christina@arm.com>
1553
1554         PR binutils/23192
1555         * aarch64-asm-2.c: Regenerate.
1556         * aarch64-dis-2.c: Likewise.
1557         * aarch64-opc-2.c: Likewise.
1558         * aarch64-dis.c (aarch64_ext_reglane): Add AARCH64_OPND_Em16 constraint.
1559         * aarch64-opc.c (operand_general_constraint_met_p,
1560         aarch64_print_operand): Likewise.
1561         * aarch64-tbl.h (aarch64_opcode_table): Change Em to Em16 for smlal,
1562         smlal2, fmla, fmls, fmul, fmulx, sqrdmlah, sqrdlsh, fmlal, fmlsl,
1563         fmlal2, fmlsl2.
1564         (AARCH64_OPERANDS): Add Em2.
1565
1566 2018-06-26  Nick Clifton  <nickc@redhat.com>
1567
1568         * po/uk.po: Updated Ukranian translation.
1569         * po/de.po: Updated German translation.
1570         * po/pt_BR.po: Updated Brazilian Portuguese translation.
1571
1572 2018-06-26  Nick Clifton  <nickc@redhat.com>
1573
1574         * nfp-dis.c: Fix spelling mistake.
1575
1576 2018-06-24  Nick Clifton  <nickc@redhat.com>
1577
1578         * configure: Regenerate.
1579         * po/opcodes.pot: Regenerate.
1580
1581 2018-06-24  Nick Clifton  <nickc@redhat.com>
1582
1583         2.31 branch created.
1584
1585 2018-06-19  Tamar Christina  <tamar.christina@arm.com>
1586
1587         * aarch64-tbl.h (aarch64_opcode_table): Fix alias flag for negs
1588         * aarch64-asm-2.c: Regenerate.
1589         * aarch64-dis-2.c: Likewise.
1590
1591 2018-06-21  Maciej W. Rozycki  <macro@mips.com>
1592
1593         * mips-dis.c (print_mips_disassembler_options): Fix a typo in
1594         `-M ginv' option description.
1595
1596 2018-06-20  Sebastian Huber  <sebastian.huber@embedded-brains.de>
1597
1598         PR gas/23305
1599         * riscv-opc.c (riscv_opcodes): Use new format specifier 'B' for
1600         la and lla.
1601
1602 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
1603
1604         * Makefile.am (AUTOMAKE_OPTIONS): Remove 1.11.
1605         * configure.ac: Remove AC_PREREQ.
1606         * Makefile.in: Re-generate.
1607         * aclocal.m4: Re-generate.
1608         * configure: Re-generate.
1609
1610 2018-06-14  Faraz Shahbazker  <Faraz.Shahbazker@mips.com>
1611
1612         * mips-dis.c (mips_arch_choices): Add GINV to mips32r6 and
1613         mips64r6 descriptors.
1614         (parse_mips_ase_option): Handle -Mginv option.
1615         (print_mips_disassembler_options): Document -Mginv.
1616         * mips-opc.c (decode_mips_operand) <+\>: New operand format.
1617         (GINV): New macro.
1618         (mips_opcodes): Define ginvi and ginvt.
1619
1620 2018-06-13  Scott Egerton  <scott.egerton@imgtec.com>
1621             Faraz Shahbazker  <Faraz.Shahbazker@mips.com>
1622
1623         * mips-dis.c (mips_arch_choices): Add CRC and CRC64 ASEs.
1624         * mips-opc.c (CRC, CRC64): New macros.
1625         (mips_builtin_opcodes): Define crc32b, crc32h, crc32w,
1626         crc32cb, crc32ch and crc32cw for CRC.  Define crc32d and
1627         crc32cd for CRC64.
1628
1629 2018-06-08  Egeyar Bagcioglu  <egeyar.bagcioglu@oracle.com>
1630
1631         PR 20319
1632         * aarch64-tbl.h: Introduce QL_INT2FP_FMOV and QL_FP2INT_FMOV.
1633         (aarch64_opcode_table) : Use QL_INT2FP_FMOV and QL_FP2INT_FMOV.
1634
1635 2018-06-06  Alan Modra  <amodra@gmail.com>
1636
1637         * xtensa-dis.c (print_insn_xtensa): Init fmt and valid_insn after
1638         setjmp.  Move init for some other vars later too.
1639
1640 2018-06-04  Max Filippov  <jcmvbkbc@gmail.com>
1641
1642         * xtensa-dis.c (bfd.h, elf/xtensa.h): New includes.
1643         (dis_private): Add new fields for property section tracking.
1644         (xtensa_coalesce_insn_tables, xtensa_find_table_entry)
1645         (xtensa_instruction_fits): New functions.
1646         (fetch_data): Bump minimal fetch size to 4.
1647         (print_insn_xtensa): Make struct dis_private static.
1648         Load and prepare property table on section change.
1649         Don't disassemble literals. Don't disassemble instructions that
1650         cross property table boundaries.
1651
1652 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
1653
1654         * configure: Regenerated.
1655
1656 2018-06-01  Jan Beulich  <jbeulich@suse.com>
1657
1658         * i386-opc.tbl (mov, movq): Fold to/from SReg* forms.
1659         * i386-tbl.h: Re-generate.
1660
1661 2018-06-01  Jan Beulich  <jbeulich@suse.com>
1662
1663         * i386-opc.tbl (sldt, str): Add NoRex64.
1664         * i386-tbl.h: Re-generate.
1665
1666 2018-06-01  Jan Beulich  <jbeulich@suse.com>
1667
1668         * i386-opc.tbl (invpcid): Add Oword.
1669         * i386-tbl.h: Re-generate.
1670
1671 2018-06-01  Alan Modra  <amodra@gmail.com>
1672
1673         * sysdep.h (_bfd_error_handler): Don't declare.
1674         * msp430-decode.opc: Include bfd.h.  Don't include ansidecl.h here.
1675         * rl78-decode.opc: Likewise.
1676         * msp430-decode.c: Regenerate.
1677         * rl78-decode.c: Regenerate.
1678
1679 2018-05-30  Amit Pawar <Amit.Pawar@amd.com>
1680
1681         * i386-gen.c (cpu_flag_init): Add CPU_ZNVER2_FLAGS.
1682         * i386-init.h : Regenerated.
1683
1684 2018-05-25  Alan Modra  <amodra@gmail.com>
1685
1686         * Makefile.in: Regenerate.
1687         * po/POTFILES.in: Regenerate.
1688
1689 2018-05-21  Peter Bergner  <bergner@vnet.ibm.com.com>
1690
1691         * ppc-opc.c (insert_bat, extract_bat, insert_bba, extract_bba,
1692         insert_rbs, extract_rbs, insert_xb6s, extract_xb6s): Delete functions.
1693         (insert_bab, extract_bab, insert_btab, extract_btab,
1694         insert_rsb, extract_rsb, insert_xab6, extract_xab6): New functions.
1695         (BAT, BBA VBA RBS XB6S): Delete macros.
1696         (BTAB, BAB, VAB, RAB, RSB, XAB6): New macros.
1697         (BB, BD, RBX, XC6): Update for new macros.
1698         (powerpc_opcodes) <evmr, evnot, vmr, vnot, crnot, crclr, crset,
1699         crmove, not, not., mr, mr., xxspltd, xxswapd, xvmovsp, xvmovdp,
1700         e_crnot, e_crclr, e_crset, e_crmove>: Likewise.
1701         * ppc-dis.c (print_insn_powerpc): Delete handling of fake operands.
1702
1703 2018-05-18  John Darrington  <john@darrington.wattle.id.au>
1704
1705         * Makefile.am: Add support for s12z architecture.
1706         * configure.ac: Likewise.
1707         * disassemble.c: Likewise.
1708         * disassemble.h: Likewise.
1709         * Makefile.in: Regenerate.
1710         * configure: Regenerate.
1711         * s12z-dis.c: New file.
1712         * s12z.h: New file.
1713
1714 2018-05-18  Alan Modra  <amodra@gmail.com>
1715
1716         * nfp-dis.c: Don't #include libbfd.h.
1717         (init_nfp3200_priv): Use bfd_get_section_contents.
1718         (nit_nfp6000_mecsr_sec): Likewise.
1719
1720 2018-05-17  Nick Clifton  <nickc@redhat.com>
1721
1722         * po/zh_CN.po: Updated simplified Chinese translation.
1723
1724 2018-05-16  Tamar Christina  <tamar.christina@arm.com>
1725
1726         PR binutils/23109
1727         * aarch64-tbl.h (aarch64_opcode_table): Correct sdot and udot.
1728         * aarch64-dis-2.c: Regenerate.
1729
1730 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
1731
1732         PR binutils/21446
1733         * aarch64-asm.c (opintl.h): Include.
1734         (aarch64_ins_sysreg): Enforce read/write constraints.
1735         * aarch64-dis.c (aarch64_ext_sysreg): Likewise.
1736         * aarch64-opc.h (F_DEPRECATED, F_ARCHEXT, F_HASXT): Moved here.
1737         (F_REG_READ, F_REG_WRITE): New.
1738         * aarch64-opc.c (aarch64_print_operand): Generate notes for
1739         AARCH64_OPND_SYSREG.
1740         (F_DEPRECATED, F_ARCHEXT, F_HASXT): Move to aarch64-opc.h.
1741         (aarch64_sys_regs): Add constraints to currentel, midr_el1, ctr_el0,
1742         mpidr_el1, revidr_el1, aidr_el1, dczid_el0, id_dfr0_el1, id_pfr0_el1,
1743         id_pfr1_el1, id_afr0_el1, id_mmfr0_el1, id_mmfr1_el1, id_mmfr2_el1,
1744         id_mmfr3_el1, id_mmfr4_el1, id_isar0_el1, id_isar1_el1, id_isar2_el1,
1745         id_isar3_el1, id_isar4_el1, id_isar5_el1, mvfr0_el1, mvfr1_el1,
1746         mvfr2_el1, ccsidr_el1, id_aa64pfr0_el1, id_aa64pfr1_el1,
1747         id_aa64dfr0_el1, id_aa64dfr1_el1, id_aa64isar0_el1, id_aa64isar1_el1,
1748         id_aa64mmfr0_el1, id_aa64mmfr1_el1, id_aa64mmfr2_el1, id_aa64afr0_el1,
1749         id_aa64afr0_el1, id_aa64afr1_el1, id_aa64zfr0_el1, clidr_el1,
1750         csselr_el1, vsesr_el2, erridr_el1, erxfr_el1, rvbar_el1, rvbar_el2,
1751         rvbar_el3, isr_el1, tpidrro_el0, cntfrq_el0, cntpct_el0, cntvct_el0,
1752         mdccsr_el0, dbgdtrrx_el0, dbgdtrtx_el0, osdtrrx_el1, osdtrtx_el1,
1753         mdrar_el1, oslar_el1, oslsr_el1, dbgauthstatus_el1, pmbidr_el1,
1754         pmsidr_el1, pmswinc_el0, pmceid0_el0, pmceid1_el0.
1755         * aarch64-tbl.h (aarch64_opcode_table): Add constraints to
1756         msr (F_SYS_WRITE), mrs (F_SYS_READ).
1757
1758 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
1759
1760         PR binutils/21446
1761         * aarch64-dis.c (no_notes: New.
1762         (parse_aarch64_dis_option): Support notes.
1763         (aarch64_decode_insn, print_operands): Likewise.
1764         (print_aarch64_disassembler_options): Document notes.
1765         * aarch64-opc.c (aarch64_print_operand): Support notes.
1766
1767 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
1768
1769         PR binutils/21446
1770         * aarch64-asm.h (aarch64_insert_operand, aarch64_##x): Return boolean
1771         and take error struct.
1772         * aarch64-asm.c (aarch64_ext_regno, aarch64_ins_reglane,
1773         aarch64_ins_reglist, aarch64_ins_ldst_reglist,
1774         aarch64_ins_ldst_reglist_r, aarch64_ins_ldst_elemlist,
1775         aarch64_ins_advsimd_imm_shift, aarch64_ins_imm, aarch64_ins_imm_half,
1776         aarch64_ins_advsimd_imm_modified, aarch64_ins_fpimm,
1777         aarch64_ins_imm_rotate1, aarch64_ins_imm_rotate2, aarch64_ins_fbits,
1778         aarch64_ins_aimm, aarch64_ins_limm_1, aarch64_ins_limm,
1779         aarch64_ins_inv_limm, aarch64_ins_ft, aarch64_ins_addr_simple,
1780         aarch64_ins_addr_regoff, aarch64_ins_addr_offset, aarch64_ins_addr_simm,
1781         aarch64_ins_addr_simm10, aarch64_ins_addr_uimm12,
1782         aarch64_ins_simd_addr_post, aarch64_ins_cond, aarch64_ins_sysreg,
1783         aarch64_ins_pstatefield, aarch64_ins_sysins_op, aarch64_ins_barrier,
1784         aarch64_ins_prfop, aarch64_ins_hint, aarch64_ins_reg_extended,
1785         aarch64_ins_reg_shifted, aarch64_ins_sve_addr_ri_s4xvl,
1786         aarch64_ins_sve_addr_ri_s6xvl, aarch64_ins_sve_addr_ri_s9xvl,
1787         aarch64_ins_sve_addr_ri_s4, aarch64_ins_sve_addr_ri_u6,
1788         aarch64_ins_sve_addr_rr_lsl, aarch64_ins_sve_addr_rz_xtw,
1789         aarch64_ins_sve_addr_zi_u5, aarch64_ext_sve_addr_zz,
1790         aarch64_ins_sve_addr_zz_lsl, aarch64_ins_sve_addr_zz_sxtw,
1791         aarch64_ins_sve_addr_zz_uxtw, aarch64_ins_sve_aimm,
1792         aarch64_ins_sve_asimm, aarch64_ins_sve_index, aarch64_ins_sve_limm_mov,
1793         aarch64_ins_sve_quad_index, aarch64_ins_sve_reglist,
1794         aarch64_ins_sve_scale, aarch64_ins_sve_shlimm, aarch64_ins_sve_shrimm,
1795         aarch64_ins_sve_float_half_one, aarch64_ins_sve_float_half_two,
1796         aarch64_ins_sve_float_zero_one, aarch64_opcode_encode): Likewise.
1797         * aarch64-dis.h (aarch64_extract_operand, aarch64_##x): Likewise.
1798         * aarch64-dis.c (aarch64_ext_regno, aarch64_ext_reglane,
1799         aarch64_ext_reglist, aarch64_ext_ldst_reglist,
1800         aarch64_ext_ldst_reglist_r, aarch64_ext_ldst_elemlist,
1801         aarch64_ext_advsimd_imm_shift, aarch64_ext_imm, aarch64_ext_imm_half,
1802         aarch64_ext_advsimd_imm_modified, aarch64_ext_fpimm,
1803         aarch64_ext_imm_rotate1, aarch64_ext_imm_rotate2, aarch64_ext_fbits,
1804         aarch64_ext_aimm, aarch64_ext_limm_1, aarch64_ext_limm, decode_limm,
1805         aarch64_ext_inv_limm, aarch64_ext_ft, aarch64_ext_addr_simple,
1806         aarch64_ext_addr_regoff, aarch64_ext_addr_offset, aarch64_ext_addr_simm,
1807         aarch64_ext_addr_simm10, aarch64_ext_addr_uimm12,
1808         aarch64_ext_simd_addr_post, aarch64_ext_cond, aarch64_ext_sysreg,
1809         aarch64_ext_pstatefield, aarch64_ext_sysins_op, aarch64_ext_barrier,
1810         aarch64_ext_prfop, aarch64_ext_hint, aarch64_ext_reg_extended,
1811         aarch64_ext_reg_shifted, aarch64_ext_sve_addr_ri_s4xvl,
1812         aarch64_ext_sve_addr_ri_s6xvl, aarch64_ext_sve_addr_ri_s9xvl,
1813         aarch64_ext_sve_addr_ri_s4, aarch64_ext_sve_addr_ri_u6,
1814         aarch64_ext_sve_addr_rr_lsl, aarch64_ext_sve_addr_rz_xtw,
1815         aarch64_ext_sve_addr_zi_u5, aarch64_ext_sve_addr_zz,
1816         aarch64_ext_sve_addr_zz_lsl, aarch64_ext_sve_addr_zz_sxtw,
1817         aarch64_ext_sve_addr_zz_uxtw, aarch64_ext_sve_aimm,
1818         aarch64_ext_sve_asimm, aarch64_ext_sve_index, aarch64_ext_sve_limm_mov,
1819         aarch64_ext_sve_quad_index, aarch64_ext_sve_reglist,
1820         aarch64_ext_sve_scale, aarch64_ext_sve_shlimm, aarch64_ext_sve_shrimm,
1821         aarch64_ext_sve_float_half_one, aarch64_ext_sve_float_half_two,
1822         aarch64_ext_sve_float_zero_one, aarch64_opcode_decode): Likewise.
1823         (determine_disassembling_preference, aarch64_decode_insn,
1824         print_insn_aarch64_word, print_insn_data): Take errors struct.
1825         (print_insn_aarch64): Use errors.
1826         * aarch64-asm-2.c: Regenerate.
1827         * aarch64-dis-2.c: Regenerate.
1828         * aarch64-gen.c (print_operand_inserter): Use errors and change type to
1829         boolean in aarch64_insert_operan.
1830         (print_operand_extractor): Likewise.
1831         * aarch64-opc.c (aarch64_print_operand): Use sysreg struct.
1832
1833 2018-05-15  Francois H. Theron  <francois.theron@netronome.com>
1834
1835         * nfp-dis.c: Use uint64_t for instruction variables, not bfd_vma.
1836
1837 2018-05-09  H.J. Lu  <hongjiu.lu@intel.com>
1838
1839         * i386-opc.tbl: Remove Disp<N> from movidir{i,64b}.
1840
1841 2018-05-09  Sebastian Rasmussen  <sebras@gmail.com>
1842
1843         * cr16-opc.c (cr16_instruction): Comment typo fix.
1844         * hppa-dis.c (print_insn_hppa): Likewise.
1845
1846 2018-05-08  Jim Wilson  <jimw@sifive.com>
1847
1848         * riscv-opc.c (match_c_slli, match_slli_as_c_slli): New.
1849         (match_c_slli64, match_srxi_as_c_srxi): New.
1850         (riscv_opcodes) <slli, sll>: Use match_slli_as_c_slli.
1851         <srli, srl, srai, sra>: Use match_srxi_as_c_srxi.
1852         <c.slli, c.srli, c.srai>: Use match_s_slli.
1853         <c.slli64, c.srli64, c.srai64>: New.
1854
1855 2018-05-08  Alan Modra  <amodra@gmail.com>
1856
1857         * ppc-dis.c (PPC_OPCD_SEGS): Define using PPC_OP.
1858         (VLE_OPCD_SEGS, SPE2_OPCD_SEGS): Similarly, using macros used to
1859         partition opcode space for index lookup.
1860
1861 2018-05-07  Peter Bergner  <bergner@vnet.ibm.com.com>
1862
1863         * ppc-dis.c (print_insn_powerpc) <insn_is_short>: Replace this...
1864         <insn_length>: ...with this.  Update usage.
1865         Remove duplicate call to *info->memory_error_func.
1866
1867 2018-05-07  Igor Tsimbalist  <igor.v.tsimbalist@intel.com>
1868             H.J. Lu  <hongjiu.lu@intel.com>
1869
1870         * i386-dis.c (Gva): New.
1871         (enum): Add PREFIX_0F38F8, PREFIX_0F38F9,
1872         MOD_0F38F8_PREFIX_2, MOD_0F38F9_PREFIX_0.
1873         (prefix_table): New instructions (see prefix above).
1874         (mod_table): New instructions (see prefix above).
1875         (OP_G): Handle va_mode.
1876         * i386-gen.c (cpu_flag_init): Add CPU_MOVDIRI_FLAGS,
1877         CPU_MOVDIR64B_FLAGS.
1878         (cpu_flags): Add CpuMOVDIRI and CpuMOVDIR64B.
1879         * i386-opc.h (enum): Add CpuMOVDIRI, CpuMOVDIR64B.
1880         (i386_cpu_flags): Add cpumovdiri and cpumovdir64b.
1881         * i386-opc.tbl: Add movidir{i,64b}.
1882         * i386-init.h: Regenerated.
1883         * i386-tbl.h: Likewise.
1884
1885 2018-05-07  H.J. Lu  <hongjiu.lu@intel.com>
1886
1887         * i386-gen.c (opcode_modifiers): Replace AddrPrefixOp0 with
1888         AddrPrefixOpReg.
1889         * i386-opc.h (AddrPrefixOp0): Renamed to ...
1890         (AddrPrefixOpReg): This.
1891         (i386_opcode_modifier): Rename addrprefixop0 to addrprefixopreg.
1892         * i386-opc.tbl: Replace AddrPrefixOp0 with AddrPrefixOpReg.
1893
1894 2018-05-07  Peter Bergner  <bergner@vnet.ibm.com.com>
1895
1896         * ppc-opc.c (powerpc_num_opcodes): Change type to unsigned.
1897         (vle_num_opcodes): Likewise.
1898         (spe2_num_opcodes): Likewise.
1899         * ppc-dis.c (disassemble_init_powerpc) <powerpc_opcd_indices>: Rewrite
1900         initialization loop.
1901         (disassemble_init_powerpc) <vle_opcd_indices>: Likewise.
1902         (disassemble_init_powerpc) <spe2_opcd_indices>: Likewise.  Initialize
1903         only once.
1904
1905 2018-05-01  Tamar Christina  <tamar.christina@arm.com>
1906
1907         * aarch64-dis.c (aarch64_opcode_decode): Moved memory clear code.
1908
1909 2018-04-30  Francois H. Theron <francois.theron@netronome.com>
1910
1911         Makefile.am: Added nfp-dis.c.
1912         configure.ac: Added bfd_nfp_arch.
1913         disassemble.h: Added print_insn_nfp prototype.
1914         disassemble.c: Added ARCH_nfp and call to print_insn_nfp
1915         nfp-dis.c: New, for NFP support.
1916         po/POTFILES.in: Added nfp-dis.c to the list.
1917         Makefile.in: Regenerate.
1918         configure: Regenerate.
1919
1920 2018-04-26  Jan Beulich  <jbeulich@suse.com>
1921
1922         * i386-opc.tbl: Fold various non-memory operand AVX512VL
1923         templates into their base ones.
1924         * i386-tlb.h: Re-generate.
1925
1926 2018-04-26  Jan Beulich  <jbeulich@suse.com>
1927
1928         * i386-gen.c (cpu_flag_init): Use CPU_XOP_FLAGS for
1929         CPU_BDVER1_FLAGS. Use CPU_AVX2_FLAGS for CPU_ZNVER1_FLAGS. Use
1930         CPU_AVX_FLAGS for CPU_BTVER1_FLAGS. Add CPU_XSAVE_FLAGS to
1931         CPU_LWP_FLAGS, CPU_AVX_FLAGS, CPU_MPX_FLAGS, and CPU_OSPKE_FLAGS.
1932         * i386-init.h: Re-generate.
1933
1934 2018-04-26  Jan Beulich  <jbeulich@suse.com>
1935
1936         * i386-gen.c (cpu_flag_init): Drop all uses of CpuRegMMX,
1937         CpuRegXMM, CpuRegYMM, CpuRegZMM, and CpuRegMask. Use
1938         CPU_AVX2_FLAGS for CPU_AVX512F_FLAGS and drop bogus comment.
1939         Don't use CPU_AVX2_FLAGS for CPU_AVX512VL_FLAGS and drop bogus
1940         comment.
1941         (cpu_flags): Drop CpuRegMMX, CpuRegXMM, CpuRegYMM, CpuRegZMM,
1942         and CpuRegMask.
1943         * i386-opc.h: CpuRegMMX, CpuRegXMM, CpuRegYMM, CpuRegZMM,
1944         CpuRegMask: Delete.
1945         (union i386_cpu_flags): Remove cpuregmmx, cpuregxmm, cpuregymm,
1946         cpuregzmm, and cpuregmask.
1947         * i386-init.h: Re-generate.
1948         * i386-tbl.h: Re-generate.
1949
1950 2018-04-26  Jan Beulich  <jbeulich@suse.com>
1951
1952         * i386-gen.c (cpu_flag_init): CPU_I586_FLAGS inherits Cpu387 only.
1953         CPU_287_FLAGS is Cpu287 only. CPU_387_FLAGS is Cpu387 only.
1954         * i386-init.h: Re-generate.
1955
1956 2018-04-26  Jan Beulich  <jbeulich@suse.com>
1957
1958         * i386-gen.c (VexImmExt): Delete.
1959         * i386-opc.h (VexImmExt, veximmext): Delete.
1960         * i386-opc.tbl: Drop all VexImmExt uses.
1961         * i386-tlb.h: Re-generate.
1962
1963 2018-04-25  Jan Beulich  <jbeulich@suse.com>
1964
1965         * i386-opc.tbl (vpslld, vpsrad, vpsrld): Drop AVX512VL
1966         register-only forms.
1967         * i386-tlb.h: Re-generate.
1968
1969 2018-04-25  Tamar Christina  <tamar.christina@arm.com>
1970
1971         * aarch64-tbl.h (sqrdmlah, sqrdmlsh): Fix masks.
1972
1973 2018-04-17  Igor Tsimbalist  <igor.v.tsimbalist@intel.com>
1974
1975         * i386-dis.c: Add REG_0F1C_MOD_0, MOD_0F1C_PREFIX_0,
1976         PREFIX_0F1C.
1977         * i386-gen.c (cpu_flag_init): Add CPU_CLDEMOTE_FLAGS,
1978         (cpu_flags): Add CpuCLDEMOTE.
1979         * i386-init.h: Regenerate.
1980         * i386-opc.h (enum): Add CpuCLDEMOTE,
1981         (i386_cpu_flags): Add cpucldemote.
1982         * i386-opc.tbl: Add cldemote.
1983         * i386-tbl.h: Regenerate.
1984
1985 2018-04-16  Alan Modra  <amodra@gmail.com>
1986
1987         * Makefile.am: Remove sh5 and sh64 support.
1988         * configure.ac: Likewise.
1989         * disassemble.c: Likewise.
1990         * disassemble.h: Likewise.
1991         * sh-dis.c: Likewise.
1992         * sh64-dis.c: Delete.
1993         * sh64-opc.c: Delete.
1994         * sh64-opc.h: Delete.
1995         * Makefile.in: Regenerate.
1996         * configure: Regenerate.
1997         * po/POTFILES.in: Regenerate.
1998
1999 2018-04-16  Alan Modra  <amodra@gmail.com>
2000
2001         * Makefile.am: Remove w65 support.
2002         * configure.ac: Likewise.
2003         * disassemble.c: Likewise.
2004         * disassemble.h: Likewise.
2005         * w65-dis.c: Delete.
2006         * w65-opc.h: Delete.
2007         * Makefile.in: Regenerate.
2008         * configure: Regenerate.
2009         * po/POTFILES.in: Regenerate.
2010
2011 2018-04-16  Alan Modra  <amodra@gmail.com>
2012
2013         * configure.ac: Remove we32k support.
2014         * configure: Regenerate.
2015
2016 2018-04-16  Alan Modra  <amodra@gmail.com>
2017
2018         * Makefile.am: Remove m88k support.
2019         * configure.ac: Likewise.
2020         * disassemble.c: Likewise.
2021         * disassemble.h: Likewise.
2022         * m88k-dis.c: Delete.
2023         * Makefile.in: Regenerate.
2024         * configure: Regenerate.
2025         * po/POTFILES.in: Regenerate.
2026
2027 2018-04-16  Alan Modra  <amodra@gmail.com>
2028
2029         * Makefile.am: Remove i370 support.
2030         * configure.ac: Likewise.
2031         * disassemble.c: Likewise.
2032         * disassemble.h: Likewise.
2033         * i370-dis.c: Delete.
2034         * i370-opc.c: Delete.
2035         * Makefile.in: Regenerate.
2036         * configure: Regenerate.
2037         * po/POTFILES.in: Regenerate.
2038
2039 2018-04-16  Alan Modra  <amodra@gmail.com>
2040
2041         * Makefile.am: Remove h8500 support.
2042         * configure.ac: Likewise.
2043         * disassemble.c: Likewise.
2044         * disassemble.h: Likewise.
2045         * h8500-dis.c: Delete.
2046         * h8500-opc.h: Delete.
2047         * Makefile.in: Regenerate.
2048         * configure: Regenerate.
2049         * po/POTFILES.in: Regenerate.
2050
2051 2018-04-16  Alan Modra  <amodra@gmail.com>
2052
2053         * configure.ac: Remove tahoe support.
2054         * configure: Regenerate.
2055
2056 2018-04-15  H.J. Lu  <hongjiu.lu@intel.com>
2057
2058         * i386-dis.c (prefix_table): Replace Em with Edq on tpause and
2059         umwait.
2060         * i386-opc.tbl: Allow 32-bit registers for tpause and umwait in
2061         64-bit mode.
2062         * i386-tbl.h: Regenerated.
2063
2064 2018-04-11  Igor Tsimbalist  <igor.v.tsimbalist@intel.com>
2065
2066         * i386-dis.c (enum): Add PREFIX_MOD_0_0FAE_REG_6,
2067         PREFIX_MOD_1_0FAE_REG_6.
2068         (va_mode): New.
2069         (OP_E_register): Use va_mode.
2070         * i386-dis-evex.h (prefix_table):
2071         New instructions (see prefixes above).
2072         * i386-gen.c (cpu_flag_init): Add WAITPKG.
2073         (cpu_flags): Likewise.
2074         * i386-opc.h (enum): Likewise.
2075         (i386_cpu_flags): Likewise.
2076         * i386-opc.tbl: Add umonitor, umwait, tpause.
2077         * i386-init.h: Regenerate.
2078         * i386-tbl.h: Likewise.
2079
2080 2018-04-11  Alan Modra  <amodra@gmail.com>
2081
2082         * opcodes/i860-dis.c: Delete.
2083         * opcodes/i960-dis.c: Delete.
2084         * Makefile.am: Remove i860 and i960 support.
2085         * configure.ac: Likewise.
2086         * disassemble.c: Likewise.
2087         * disassemble.h: Likewise.
2088         * Makefile.in: Regenerate.
2089         * configure: Regenerate.
2090         * po/POTFILES.in: Regenerate.
2091
2092 2018-04-04  H.J. Lu  <hongjiu.lu@intel.com>
2093
2094         PR binutils/23025
2095         * i386-dis.c (get_valid_dis386): Don't set vex.prefix nor vex.w
2096         to 0.
2097         (print_insn): Clear vex instead of vex.evex.
2098
2099 2018-04-04  Nick Clifton  <nickc@redhat.com>
2100
2101         * po/es.po: Updated Spanish translation.
2102
2103 2018-03-28  Jan Beulich  <jbeulich@suse.com>
2104
2105         * i386-gen.c (opcode_modifiers): Delete VecESize.
2106         * i386-opc.h (VecESize): Delete.
2107         (struct i386_opcode_modifier): Delete vecesize.
2108         * i386-opc.tbl: Drop VecESize.
2109         * i386-tlb.h: Re-generate.
2110
2111 2018-03-28  Jan Beulich  <jbeulich@suse.com>
2112
2113         * i386-opc.h (NO_BROADCAST, BROADCAST_1TO16, BROADCAST_1TO8,
2114         BROADCAST_1TO4, BROADCAST_1TO2): Delete.
2115         (struct i386_opcode_modifier): Shrink broadcast field to 1 bit.
2116         * i386-opc.tbl: Replace Broadcast=<N> by Broadcast.
2117         * i386-tlb.h: Re-generate.
2118
2119 2018-03-28  Jan Beulich  <jbeulich@suse.com>
2120
2121         * i386-opc.tbl (vcvt*d2si, vcvt*d2usi, vcvt*s2si, vcvt*s2usi):
2122         Fold AVX512 forms
2123         * i386-tlb.h: Re-generate.
2124
2125 2018-03-28  Jan Beulich  <jbeulich@suse.com>
2126
2127         * i386-dis.c (prefix_table): Drop Y for cvt*2si.
2128         (vex_len_table): Drop Y for vcvt*2si.
2129         (putop): Replace plain 'Y' handling by abort().
2130
2131 2018-03-28  Nick Clifton  <nickc@redhat.com>
2132
2133         PR 22988
2134         * aarch64-tbl.h (aarch64_opcode_table): Add entries for LDFF1xx
2135         instructions with only a base address register.
2136         * aarch64-opc.c (operand_general_constraint_met_p): Add code to
2137         handle AARHC64_OPND_SVE_ADDR_R.
2138         (aarch64_print_operand): Likewise.
2139         * aarch64-asm-2.c: Regenerate.
2140         * aarch64_dis-2.c: Regenerate.
2141         * aarch64-opc-2.c: Regenerate.
2142
2143 2018-03-22  Jan Beulich  <jbeulich@suse.com>
2144
2145         * i386-opc.tbl: Drop VecESize from register only insn forms and
2146         memory forms not allowing broadcast.
2147         * i386-tlb.h: Re-generate.
2148
2149 2018-03-22  Jan Beulich  <jbeulich@suse.com>
2150
2151         * i386-opc.tbl (vfrczs*, vphadd*, vphsub*, vpmacs*, vpmadcs*,
2152         vprot*, vpsha*, vpshl*, bextr, blc*, bls*, t1mskc, tzmsk, sha1*,
2153         sha256*): Drop Disp<N>.
2154
2155 2018-03-22  Jan Beulich  <jbeulich@suse.com>
2156
2157         * i386-dis.c (EbndS, bnd_swap_mode): New.
2158         (prefix_table): Use EbndS.
2159         (OP_E_register, OP_E_memory): Also handle bnd_swap_mode.
2160         * i386-opc.tbl (bndmov): Move misplaced Load.
2161         * i386-tlb.h: Re-generate.
2162
2163 2018-03-22  Jan Beulich  <jbeulich@suse.com>
2164
2165         * i386-opc.tbl (vcvtdq2pd, vcvtps2pd, vcvtudq2pd): Use separate
2166         templates allowing memory operands and folded ones for register
2167         only flavors.
2168         * i386-tlb.h: Re-generate.
2169
2170 2018-03-22  Jan Beulich  <jbeulich@suse.com>
2171
2172         * i386-opc.tbl (vfrczp*, vpcmov, vpermil2p*): Fold 128- and
2173         256-bit templates. Drop redundant leftover Disp<N>.
2174         * i386-tlb.h: Re-generate.
2175
2176 2018-03-14  Kito Cheng  <kito.cheng@gmail.com>
2177
2178         * riscv-opc.c (riscv_insn_types): New.
2179
2180 2018-03-13  Nick Clifton  <nickc@redhat.com>
2181
2182         * po/pt_BR.po: Updated Brazilian Portuguese translation.
2183
2184 2018-03-08  H.J. Lu  <hongjiu.lu@intel.com>
2185
2186         * i386-opc.tbl: Add Optimize to clr.
2187         * i386-tbl.h: Regenerated.
2188
2189 2018-03-08  H.J. Lu  <hongjiu.lu@intel.com>
2190
2191         * i386-gen.c (opcode_modifiers): Remove OldGcc.
2192         * i386-opc.h (OldGcc): Removed.
2193         (i386_opcode_modifier): Remove oldgcc.
2194         * i386-opc.tbl: Remove fsubp, fsubrp, fdivp and fdivrp
2195         instructions for old (<= 2.8.1) versions of gcc.
2196         * i386-tbl.h: Regenerated.
2197
2198 2018-03-08  Jan Beulich  <jbeulich@suse.com>
2199
2200         * i386-opc.h (EVEXDYN): New.
2201         * i386-opc.tbl: Fold various AVX512VL templates.
2202         * i386-tlb.h: Re-generate.
2203
2204 2018-03-08  Jan Beulich  <jbeulich@suse.com>
2205
2206         * i386-opc.tbl (vexpandpd, vexpandps, vmovapd, vmovaps,
2207         vmovdqa32, vmovdqa64, vmovdqu32, vmovdqu64, vmovupd, vmovups,
2208         vpexpandd, vpexpandq): Fold AFX512VF templates.
2209         * i386-tlb.h: Re-generate.
2210
2211 2018-03-08  Jan Beulich  <jbeulich@suse.com>
2212
2213         * i386-opc.tbl (vgf2p8affineinvqb, vgf2p8affineqb, vgf2p8mulb):
2214         Fold 128- and 256-bit VEX-encoded templates.
2215         * i386-tlb.h: Re-generate.
2216
2217 2018-03-08  Jan Beulich  <jbeulich@suse.com>
2218
2219         * i386-opc.tbl (vexpandpd, vexpandps, vmovapd, vmovaps,
2220         vmovdqa32, vmovdqa64, vmovdqu32, vmovdqu64, vmovupd, vmovups,
2221         vpexpandd, vpexpandq): Fold AVX512F templates.
2222         * i386-tlb.h: Re-generate.
2223
2224 2018-03-08  Jan Beulich  <jbeulich@suse.com>
2225
2226         * i386-opc.tbl (llwpcb, slwpcb, lwpval, lwpins): Fold 32- and
2227         64-bit templates. Drop Disp<N>.
2228         * i386-tlb.h: Re-generate.
2229
2230 2018-03-08  Jan Beulich  <jbeulich@suse.com>
2231
2232         * i386-opc.tbl (vfmadd*, vfmsub*, vfnmadd*, vfnmsub*): Fold 128-
2233         and 256-bit templates.
2234         * i386-tlb.h: Re-generate.
2235
2236 2018-03-08  Jan Beulich  <jbeulich@suse.com>
2237
2238         * i386-opc.tbl (cmpxchg8b): Add NoRex64.
2239         * i386-tlb.h: Re-generate.
2240
2241 2018-03-08  Jan Beulich  <jbeulich@suse.com>
2242
2243         * i386-opc.tbl (cmpxchg16b, fisttp, fisttpll, bndmov, mwaitx):
2244         Drop NoAVX.
2245         * i386-tlb.h: Re-generate.
2246
2247 2018-03-08  Jan Beulich  <jbeulich@suse.com>
2248
2249         * i386-opc.tbl (ldmxcsr, stmxcsr): Add NoAVX.
2250         * i386-tlb.h: Re-generate.
2251
2252 2018-03-08  Jan Beulich  <jbeulich@suse.com>
2253
2254         * i386-gen.c (opcode_modifiers): Delete FloatD.
2255         * i386-opc.h (FloatD): Delete.
2256         (struct i386_opcode_modifier): Delete floatd.
2257         * i386-opc.tbl (fadd, fsub, fsubr, fmul, fdiv, fdivr): Replace
2258         FloatD by D.
2259         * i386-tlb.h: Re-generate.
2260
2261 2018-03-08  Jan Beulich  <jbeulich@suse.com>
2262
2263         * i386-dis.c (float_reg): Adjust DC and DE fsub*/fdiv* patterns.
2264
2265 2018-03-08  Jan Beulich  <jbeulich@suse.com>
2266
2267         * i386-opc.tbl (vmovd): Disallow Qword memory operands.
2268         * i386-tlb.h: Re-generate.
2269
2270 2018-03-08  Jan Beulich  <jbeulich@suse.com>
2271
2272         * i386-opc.tbl (vcvtpd2ps): Fold AVX 128- and 256-bit memory
2273         forms.
2274         * i386-tlb.h: Re-generate.
2275
2276 2018-03-07  Alan Modra  <amodra@gmail.com>
2277
2278         * disassemble.c (disassembler): Use bfd_arch_powerpc entry for
2279         bfd_arch_rs6000.
2280         * disassemble.h (print_insn_rs6000): Delete.
2281         * ppc-dis.c (powerpc_init_dialect): Handle rs6000.
2282         (disassemble_init_powerpc): Call powerpc_init_dialect for rs6000.
2283         (print_insn_rs6000): Delete.
2284
2285 2018-03-03  Alan Modra  <amodra@gmail.com>
2286
2287         * sysdep.h (opcodes_error_handler): Define.
2288         (_bfd_error_handler): Declare.
2289         * Makefile.am: Remove stray #.
2290         * opc2c.c (main): Remove bogus -l arg handling.  Print "DO NOT
2291         EDIT" comment.
2292         * aarch64-dis.c, * arc-dis.c, * arm-dis.c, * avr-dis.c,
2293         * d30v-dis.c, * h8300-dis.c, * mmix-dis.c, * ppc-dis.c,
2294         * riscv-dis.c, * s390-dis.c, * sparc-dis.c, * v850-dis.c: Use
2295         opcodes_error_handler to print errors.  Standardize error messages.
2296         * msp430-decode.opc, * nios2-dis.c, * rl78-decode.opc: Likewise,
2297         and include opintl.h.
2298         * nds32-asm.c: Likewise, and include sysdep.h and opintl.h.
2299         * i386-gen.c: Standardize error messages.
2300         * msp430-decode.c, * rl78-decode.c, rx-decode.c: Regenerate.
2301         * Makefile.in: Regenerate.
2302         * epiphany-asm.c, * epiphany-desc.c, * epiphany-dis.c,
2303         * epiphany-ibld.c, * fr30-asm.c, * fr30-desc.c, * fr30-dis.c,
2304         * fr30-ibld.c, * frv-asm.c, * frv-desc.c, * frv-dis.c, * frv-ibld.c,
2305         * frv-opc.c, * ip2k-asm.c, * ip2k-desc.c, * ip2k-dis.c, * ip2k-ibld.c,
2306         * iq2000-asm.c, * iq2000-desc.c, * iq2000-dis.c, * iq2000-ibld.c,
2307         * lm32-asm.c, * lm32-desc.c, * lm32-dis.c, * lm32-ibld.c,
2308         * m32c-asm.c, * m32c-desc.c, * m32c-dis.c, * m32c-ibld.c,
2309         * m32r-asm.c, * m32r-desc.c, * m32r-dis.c, * m32r-ibld.c,
2310         * mep-asm.c, * mep-desc.c, * mep-dis.c, * mep-ibld.c, * mt-asm.c,
2311         * mt-desc.c, * mt-dis.c, * mt-ibld.c, * or1k-asm.c, * or1k-desc.c,
2312         * or1k-dis.c, * or1k-ibld.c, * xc16x-asm.c, * xc16x-desc.c,
2313         * xc16x-dis.c, * xc16x-ibld.c, * xstormy16-asm.c, * xstormy16-desc.c,
2314         * xstormy16-dis.c, * xstormy16-ibld.c: Regenerate.
2315
2316 2018-03-01  H.J. Lu  <hongjiu.lu@intel.com>
2317
2318         * * i386-opc.tbl: Add "Optimize" to AVX256 and AVX512
2319         vpsub[bwdq] instructions.
2320         * i386-tbl.h: Regenerated.
2321
2322 2018-03-01  Alan Modra  <amodra@gmail.com>
2323
2324         * configure.ac (ALL_LINGUAS): Sort.
2325         * configure: Regenerate.
2326
2327 2018-02-27  Thomas Preud'homme  <thomas.preudhomme@arm.com>
2328
2329         * arm-dis.c (print_insn_coprocessor): Replace uses of ARM_FEATURE_COPY
2330         macro by assignements.
2331
2332 2018-02-27  H.J. Lu  <hongjiu.lu@intel.com>
2333
2334         PR gas/22871
2335         * i386-gen.c (opcode_modifiers): Add Optimize.
2336         * i386-opc.h (Optimize): New enum.
2337         (i386_opcode_modifier): Add optimize.
2338         * i386-opc.tbl: Add "Optimize" to "mov $imm, reg",
2339         "sub reg, reg/mem", "test $imm, acc", "test $imm, reg/mem",
2340         "and $imm, acc", "and $imm, reg/mem", "xor reg, reg/mem",
2341         "movq $imm, reg" and AVX256 and AVX512 versions of vandnps,
2342         vandnpd, vpandn, vpandnd, vpandnq, vxorps, vxorpd, vpxor,
2343         vpxord and vpxorq.
2344         * i386-tbl.h: Regenerated.
2345
2346 2018-02-26  Alan Modra  <amodra@gmail.com>
2347
2348         * crx-dis.c (getregliststring): Allocate a large enough buffer
2349         to silence false positive gcc8 warning.
2350
2351 2018-02-22  Shea Levy <shea@shealevy.com>
2352
2353         * disassemble.c (ARCH_riscv): Define if ARCH_all.
2354
2355 2018-02-22  H.J. Lu  <hongjiu.lu@intel.com>
2356
2357         * i386-opc.tbl: Add {rex},
2358         * i386-tbl.h: Regenerated.
2359
2360 2018-02-20  Maciej W. Rozycki  <macro@mips.com>
2361
2362         * mips16-opc.c (decode_mips16_operand) <'M'>: Remove case.
2363         (mips16_opcodes): Replace `M' with `m' for "restore".
2364
2365 2018-02-19  Thomas Preud'homme  <thomas.preudhomme@arm.com>
2366
2367         * arm-dis.c (thumb_opcodes): Fix BXNS mask.
2368
2369 2018-02-13  Maciej W. Rozycki  <macro@mips.com>
2370
2371         * wasm32-dis.c (print_insn_wasm32): Rename `index' local
2372         variable to `function_index'.
2373
2374 2018-02-13  Nick Clifton  <nickc@redhat.com>
2375
2376         PR 22823
2377         * metag-dis.c (print_fmmov): Double buffer size to avoid warning
2378         about truncation of printing.
2379
2380 2018-02-12  Henry Wong <henry@stuffedcow.net>
2381
2382         * mips-opc.c (mips_builtin_opcodes): Correct "sigrie" encoding.
2383
2384 2018-02-05  Nick Clifton  <nickc@redhat.com>
2385
2386         * po/pt_BR.po: Updated Brazilian Portuguese translation.
2387
2388 2018-01-23  Igor Tsimbalist  <igor.v.tsimbalist@intel.com>
2389
2390         * i386-dis.c (enum): Add pconfig.
2391         * i386-gen.c (cpu_flag_init): Add CPU_PCONFIG_FLAGS.
2392         (cpu_flags): Add CpuPCONFIG.
2393         * i386-opc.h (enum): Add CpuPCONFIG.
2394         (i386_cpu_flags): Add cpupconfig.
2395         * i386-opc.tbl: Add PCONFIG instruction.
2396         * i386-init.h: Regenerate.
2397         * i386-tbl.h: Likewise.
2398
2399 2018-01-23  Igor Tsimbalist  <igor.v.tsimbalist@intel.com>
2400
2401         * i386-dis.c (enum): Add PREFIX_0F09.
2402         * i386-gen.c (cpu_flag_init): Add CPU_WBNOINVD_FLAGS.
2403         (cpu_flags): Add CpuWBNOINVD.
2404         * i386-opc.h (enum): Add CpuWBNOINVD.
2405         (i386_cpu_flags): Add cpuwbnoinvd.
2406         * i386-opc.tbl: Add WBNOINVD instruction.
2407         * i386-init.h: Regenerate.
2408         * i386-tbl.h: Likewise.
2409
2410 2018-01-17  Jim Wilson  <jimw@sifive.com>
2411
2412         * riscv-opc.c (riscv_opcodes) <addi>: Use z instead of 0.
2413
2414 2018-01-17  Igor Tsimbalist  <igor.v.tsimbalist@intel.com>
2415
2416         * i386-gen.c (cpu_flag_init): Delete CPU_CET_FLAGS, CpuCET.
2417         Add CPU_IBT_FLAGS, CPU_SHSTK_FLAGS, CPY_ANY_IBT_FLAGS,
2418         CPU_ANY_SHSTK_FLAGS, CpuIBT, CpuSHSTK.
2419         (cpu_flags): Add CpuIBT, CpuSHSTK.
2420         * i386-opc.h (enum): Add CpuIBT, CpuSHSTK.
2421         (i386_cpu_flags): Add cpuibt, cpushstk.
2422         * i386-opc.tbl: Change CpuCET to CpuSHSTK and CpuIBT.
2423         * i386-init.h: Regenerate.
2424         * i386-tbl.h: Likewise.
2425
2426 2018-01-16  Nick Clifton  <nickc@redhat.com>
2427
2428         * po/pt_BR.po: Updated Brazilian Portugese translation.
2429         * po/de.po: Updated German translation.
2430
2431 2018-01-15  Jim Wilson  <jimw@sifive.com>
2432
2433         * riscv-opc.c (match_c_nop): New.
2434         (riscv_opcodes) <addi>: Handle an addi that compresses to c.nop.
2435
2436 2018-01-15  Nick Clifton  <nickc@redhat.com>
2437
2438         * po/uk.po: Updated Ukranian translation.
2439
2440 2018-01-13  Nick Clifton  <nickc@redhat.com>
2441
2442         * po/opcodes.pot: Regenerated.
2443
2444 2018-01-13  Nick Clifton  <nickc@redhat.com>
2445
2446         * configure: Regenerate.
2447
2448 2018-01-13  Nick Clifton  <nickc@redhat.com>
2449
2450         2.30 branch created.
2451
2452 2018-01-11  Igor Tsimbalist  <igor.v.tsimbalist@intel.com>
2453
2454         * i386-opc.tbl: Remove VL variants for 4FMAPS and 4VNNIW insns.
2455         * i386-tbl.h: Regenerate.
2456
2457 2018-01-10  Jan Beulich  <jbeulich@suse.com>
2458
2459         * i386-opc.tbl (v4fmaddss, v4fnmaddss): Adjust Disp8MemShift.
2460         * i386-tbl.h: Re-generate.
2461
2462 2018-01-10  Jan Beulich  <jbeulich@suse.com>
2463
2464         * i386-opc.tbl (vpcmpeqb, vpcmpleb, vpcmpltb, vpcmpneqb,
2465         vpcmpnleb, vpcmpnltb, vpcmpequb, vpcmpleub, vpcmpltub,
2466         vpcmpnequb, vpcmpnleub, vpcmpnltub, vpcmpeqw, vpcmplew,
2467         vpcmpltw, vpcmpneqw, vpcmpnlew, vpcmpnltw, vpcmpequw, vpcmpleuw,
2468         vpcmpltuw, vpcmpnequw, vpcmpnleuw, vpcmpnltuw): Adjust
2469         Disp8MemShift of AVX512VL forms.
2470         * i386-tbl.h: Re-generate.
2471
2472 2018-01-09  Jim Wilson  <jimw@sifive.com>
2473
2474         * riscv-dis.c (maybe_print_address): If base_reg is zero,
2475         then the hi_addr value is zero.
2476
2477 2018-01-09  James Greenhalgh  <james.greenhalgh@arm.com>
2478
2479         * arm-dis.c (arm_opcodes): Add csdb.
2480         (thumb32_opcodes): Add csdb.
2481
2482 2018-01-09  James Greenhalgh  <james.greenhalgh@arm.com>
2483
2484         * aarch64-tbl.h (aarch64_opcode_table): Add "csdb".
2485         * aarch64-asm-2.c: Regenerate.
2486         * aarch64-dis-2.c: Regenerate.
2487         * aarch64-opc-2.c: Regenerate.
2488
2489 2018-01-08  H.J. Lu  <hongjiu.lu@intel.com>
2490
2491         PR gas/22681
2492         * i386-opc.tbl: Properly encode vmovd with Qword memeory operand.
2493         Remove AVX512 vmovd with 64-bit operands.
2494         * i386-tbl.h: Regenerated.
2495
2496 2018-01-05  Jim Wilson  <jimw@sifive.com>
2497
2498         * riscv-dis.c (print_insn_args) <'s'>: Call maybe_print_address for a
2499         jalr.
2500
2501 2018-01-03  Alan Modra  <amodra@gmail.com>
2502
2503         Update year range in copyright notice of all files.
2504
2505 2018-01-02  Jan Beulich  <jbeulich@suse.com>
2506
2507         * i386-gen.c (operand_type_init): Restore OPERAND_TYPE_REGYMM
2508         and OPERAND_TYPE_REGZMM entries.
2509
2510 For older changes see ChangeLog-2017
2511 \f
2512 Copyright (C) 2018 Free Software Foundation, Inc.
2513
2514 Copying and distribution of this file, with or without modification,
2515 are permitted in any medium without royalty provided the copyright
2516 notice and this notice are preserved.
2517
2518 Local Variables:
2519 mode: change-log
2520 left-margin: 8
2521 fill-column: 74
2522 version-control: never
2523 End: