x86: Allow 32-bit registers for tpause and umwait
[external/binutils.git] / opcodes / ChangeLog
1 2018-04-15  H.J. Lu  <hongjiu.lu@intel.com>
2
3         * i386-dis.c (prefix_table): Replace Em with Edq on tpause and
4         umwait.
5         * i386-opc.tbl: Allow 32-bit registers for tpause and umwait in
6         64-bit mode.
7         * i386-tbl.h: Regenerated.
8
9 2018-04-11  Igor Tsimbalist  <igor.v.tsimbalist@intel.com>
10
11         * i386-dis.c (enum): Add PREFIX_MOD_0_0FAE_REG_6,
12         PREFIX_MOD_1_0FAE_REG_6.
13         (va_mode): New.
14         (OP_E_register): Use va_mode.
15         * i386-dis-evex.h (prefix_table):
16         New instructions (see prefixes above).
17         * i386-gen.c (cpu_flag_init): Add WAITPKG.
18         (cpu_flags): Likewise.
19         * i386-opc.h (enum): Likewise.
20         (i386_cpu_flags): Likewise.
21         * i386-opc.tbl: Add umonitor, umwait, tpause.
22         * i386-init.h: Regenerate.
23         * i386-tbl.h: Likewise.
24
25 2018-04-11  Alan Modra  <amodra@gmail.com>
26
27         * opcodes/i860-dis.c: Delete.
28         * opcodes/i960-dis.c: Delete.
29         * Makefile.am: Remove i860 and i960 support.
30         * configure.ac: Likewise.
31         * disassemble.c: Likewise.
32         * disassemble.h: Likewise.
33         * Makefile.in: Regenerate.
34         * configure: Regenerate.
35         * po/POTFILES.in: Regenerate.
36
37 2018-04-04  H.J. Lu  <hongjiu.lu@intel.com>
38
39         PR binutils/23025
40         * i386-dis.c (get_valid_dis386): Don't set vex.prefix nor vex.w
41         to 0.
42         (print_insn): Clear vex instead of vex.evex.
43
44 2018-04-04  Nick Clifton  <nickc@redhat.com>
45
46         * po/es.po: Updated Spanish translation.
47
48 2018-03-28  Jan Beulich  <jbeulich@suse.com>
49
50         * i386-gen.c (opcode_modifiers): Delete VecESize.
51         * i386-opc.h (VecESize): Delete.
52         (struct i386_opcode_modifier): Delete vecesize.
53         * i386-opc.tbl: Drop VecESize.
54         * i386-tlb.h: Re-generate.
55
56 2018-03-28  Jan Beulich  <jbeulich@suse.com>
57
58         * i386-opc.h (NO_BROADCAST, BROADCAST_1TO16, BROADCAST_1TO8,
59         BROADCAST_1TO4, BROADCAST_1TO2): Delete.
60         (struct i386_opcode_modifier): Shrink broadcast field to 1 bit.
61         * i386-opc.tbl: Replace Broadcast=<N> by Broadcast.
62         * i386-tlb.h: Re-generate.
63
64 2018-03-28  Jan Beulich  <jbeulich@suse.com>
65
66         * i386-opc.tbl (vcvt*d2si, vcvt*d2usi, vcvt*s2si, vcvt*s2usi):
67         Fold AVX512 forms
68         * i386-tlb.h: Re-generate.
69
70 2018-03-28  Jan Beulich  <jbeulich@suse.com>
71
72         * i386-dis.c (prefix_table): Drop Y for cvt*2si.
73         (vex_len_table): Drop Y for vcvt*2si.
74         (putop): Replace plain 'Y' handling by abort().
75
76 2018-03-28  Nick Clifton  <nickc@redhat.com>
77
78         PR 22988
79         * aarch64-tbl.h (aarch64_opcode_table): Add entries for LDFF1xx
80         instructions with only a base address register.
81         * aarch64-opc.c (operand_general_constraint_met_p): Add code to
82         handle AARHC64_OPND_SVE_ADDR_R.
83         (aarch64_print_operand): Likewise.
84         * aarch64-asm-2.c: Regenerate.
85         * aarch64_dis-2.c: Regenerate.
86         * aarch64-opc-2.c: Regenerate.
87
88 2018-03-22  Jan Beulich  <jbeulich@suse.com>
89
90         * i386-opc.tbl: Drop VecESize from register only insn forms and
91         memory forms not allowing broadcast.
92         * i386-tlb.h: Re-generate.
93
94 2018-03-22  Jan Beulich  <jbeulich@suse.com>
95
96         * i386-opc.tbl (vfrczs*, vphadd*, vphsub*, vpmacs*, vpmadcs*,
97         vprot*, vpsha*, vpshl*, bextr, blc*, bls*, t1mskc, tzmsk, sha1*,
98         sha256*): Drop Disp<N>.
99
100 2018-03-22  Jan Beulich  <jbeulich@suse.com>
101
102         * i386-dis.c (EbndS, bnd_swap_mode): New.
103         (prefix_table): Use EbndS.
104         (OP_E_register, OP_E_memory): Also handle bnd_swap_mode.
105         * i386-opc.tbl (bndmov): Move misplaced Load.
106         * i386-tlb.h: Re-generate.
107
108 2018-03-22  Jan Beulich  <jbeulich@suse.com>
109
110         * i386-opc.tbl (vcvtdq2pd, vcvtps2pd, vcvtudq2pd): Use separate
111         templates allowing memory operands and folded ones for register
112         only flavors.
113         * i386-tlb.h: Re-generate.
114
115 2018-03-22  Jan Beulich  <jbeulich@suse.com>
116
117         * i386-opc.tbl (vfrczp*, vpcmov, vpermil2p*): Fold 128- and
118         256-bit templates. Drop redundant leftover Disp<N>.
119         * i386-tlb.h: Re-generate.
120
121 2018-03-14  Kito Cheng  <kito.cheng@gmail.com>
122
123         * riscv-opc.c (riscv_insn_types): New.
124
125 2018-03-13  Nick Clifton  <nickc@redhat.com>
126
127         * po/pt_BR.po: Updated Brazilian Portuguese translation.
128
129 2018-03-08  H.J. Lu  <hongjiu.lu@intel.com>
130
131         * i386-opc.tbl: Add Optimize to clr.
132         * i386-tbl.h: Regenerated.
133
134 2018-03-08  H.J. Lu  <hongjiu.lu@intel.com>
135
136         * i386-gen.c (opcode_modifiers): Remove OldGcc.
137         * i386-opc.h (OldGcc): Removed.
138         (i386_opcode_modifier): Remove oldgcc.
139         * i386-opc.tbl: Remove fsubp, fsubrp, fdivp and fdivrp
140         instructions for old (<= 2.8.1) versions of gcc.
141         * i386-tbl.h: Regenerated.
142
143 2018-03-08  Jan Beulich  <jbeulich@suse.com>
144
145         * i386-opc.h (EVEXDYN): New.
146         * i386-opc.tbl: Fold various AVX512VL templates.
147         * i386-tlb.h: Re-generate.
148
149 2018-03-08  Jan Beulich  <jbeulich@suse.com>
150
151         * i386-opc.tbl (vexpandpd, vexpandps, vmovapd, vmovaps,
152         vmovdqa32, vmovdqa64, vmovdqu32, vmovdqu64, vmovupd, vmovups,
153         vpexpandd, vpexpandq): Fold AFX512VF templates.
154         * i386-tlb.h: Re-generate.
155
156 2018-03-08  Jan Beulich  <jbeulich@suse.com>
157
158         * i386-opc.tbl (vgf2p8affineinvqb, vgf2p8affineqb, vgf2p8mulb):
159         Fold 128- and 256-bit VEX-encoded templates.
160         * i386-tlb.h: Re-generate.
161
162 2018-03-08  Jan Beulich  <jbeulich@suse.com>
163
164         * i386-opc.tbl (vexpandpd, vexpandps, vmovapd, vmovaps,
165         vmovdqa32, vmovdqa64, vmovdqu32, vmovdqu64, vmovupd, vmovups,
166         vpexpandd, vpexpandq): Fold AVX512F templates.
167         * i386-tlb.h: Re-generate.
168
169 2018-03-08  Jan Beulich  <jbeulich@suse.com>
170
171         * i386-opc.tbl (llwpcb, slwpcb, lwpval, lwpins): Fold 32- and
172         64-bit templates. Drop Disp<N>.
173         * i386-tlb.h: Re-generate.
174
175 2018-03-08  Jan Beulich  <jbeulich@suse.com>
176
177         * i386-opc.tbl (vfmadd*, vfmsub*, vfnmadd*, vfnmsub*): Fold 128-
178         and 256-bit templates.
179         * i386-tlb.h: Re-generate.
180
181 2018-03-08  Jan Beulich  <jbeulich@suse.com>
182
183         * i386-opc.tbl (cmpxchg8b): Add NoRex64.
184         * i386-tlb.h: Re-generate.
185
186 2018-03-08  Jan Beulich  <jbeulich@suse.com>
187
188         * i386-opc.tbl (cmpxchg16b, fisttp, fisttpll, bndmov, mwaitx):
189         Drop NoAVX.
190         * i386-tlb.h: Re-generate.
191
192 2018-03-08  Jan Beulich  <jbeulich@suse.com>
193
194         * i386-opc.tbl (ldmxcsr, stmxcsr): Add NoAVX.
195         * i386-tlb.h: Re-generate.
196
197 2018-03-08  Jan Beulich  <jbeulich@suse.com>
198
199         * i386-gen.c (opcode_modifiers): Delete FloatD.
200         * i386-opc.h (FloatD): Delete.
201         (struct i386_opcode_modifier): Delete floatd.
202         * i386-opc.tbl (fadd, fsub, fsubr, fmul, fdiv, fdivr): Replace
203         FloatD by D.
204         * i386-tlb.h: Re-generate.
205
206 2018-03-08  Jan Beulich  <jbeulich@suse.com>
207
208         * i386-dis.c (float_reg): Adjust DC and DE fsub*/fdiv* patterns.
209
210 2018-03-08  Jan Beulich  <jbeulich@suse.com>
211
212         * i386-opc.tbl (vmovd): Disallow Qword memory operands.
213         * i386-tlb.h: Re-generate.
214
215 2018-03-08  Jan Beulich  <jbeulich@suse.com>
216
217         * i386-opc.tbl (vcvtpd2ps): Fold AVX 128- and 256-bit memory
218         forms.
219         * i386-tlb.h: Re-generate.
220
221 2018-03-07  Alan Modra  <amodra@gmail.com>
222
223         * disassemble.c (disassembler): Use bfd_arch_powerpc entry for
224         bfd_arch_rs6000.
225         * disassemble.h (print_insn_rs6000): Delete.
226         * ppc-dis.c (powerpc_init_dialect): Handle rs6000.
227         (disassemble_init_powerpc): Call powerpc_init_dialect for rs6000.
228         (print_insn_rs6000): Delete.
229
230 2018-03-03  Alan Modra  <amodra@gmail.com>
231
232         * sysdep.h (opcodes_error_handler): Define.
233         (_bfd_error_handler): Declare.
234         * Makefile.am: Remove stray #.
235         * opc2c.c (main): Remove bogus -l arg handling.  Print "DO NOT
236         EDIT" comment.
237         * aarch64-dis.c, * arc-dis.c, * arm-dis.c, * avr-dis.c,
238         * d30v-dis.c, * h8300-dis.c, * mmix-dis.c, * ppc-dis.c,
239         * riscv-dis.c, * s390-dis.c, * sparc-dis.c, * v850-dis.c: Use
240         opcodes_error_handler to print errors.  Standardize error messages.
241         * msp430-decode.opc, * nios2-dis.c, * rl78-decode.opc: Likewise,
242         and include opintl.h.
243         * nds32-asm.c: Likewise, and include sysdep.h and opintl.h.
244         * i386-gen.c: Standardize error messages.
245         * msp430-decode.c, * rl78-decode.c, rx-decode.c: Regenerate.
246         * Makefile.in: Regenerate.
247         * epiphany-asm.c, * epiphany-desc.c, * epiphany-dis.c,
248         * epiphany-ibld.c, * fr30-asm.c, * fr30-desc.c, * fr30-dis.c,
249         * fr30-ibld.c, * frv-asm.c, * frv-desc.c, * frv-dis.c, * frv-ibld.c,
250         * frv-opc.c, * ip2k-asm.c, * ip2k-desc.c, * ip2k-dis.c, * ip2k-ibld.c,
251         * iq2000-asm.c, * iq2000-desc.c, * iq2000-dis.c, * iq2000-ibld.c,
252         * lm32-asm.c, * lm32-desc.c, * lm32-dis.c, * lm32-ibld.c,
253         * m32c-asm.c, * m32c-desc.c, * m32c-dis.c, * m32c-ibld.c,
254         * m32r-asm.c, * m32r-desc.c, * m32r-dis.c, * m32r-ibld.c,
255         * mep-asm.c, * mep-desc.c, * mep-dis.c, * mep-ibld.c, * mt-asm.c,
256         * mt-desc.c, * mt-dis.c, * mt-ibld.c, * or1k-asm.c, * or1k-desc.c,
257         * or1k-dis.c, * or1k-ibld.c, * xc16x-asm.c, * xc16x-desc.c,
258         * xc16x-dis.c, * xc16x-ibld.c, * xstormy16-asm.c, * xstormy16-desc.c,
259         * xstormy16-dis.c, * xstormy16-ibld.c: Regenerate.
260
261 2018-03-01  H.J. Lu  <hongjiu.lu@intel.com>
262
263         * * i386-opc.tbl: Add "Optimize" to AVX256 and AVX512
264         vpsub[bwdq] instructions.
265         * i386-tbl.h: Regenerated.
266
267 2018-03-01  Alan Modra  <amodra@gmail.com>
268
269         * configure.ac (ALL_LINGUAS): Sort.
270         * configure: Regenerate.
271
272 2018-02-27  Thomas Preud'homme  <thomas.preudhomme@arm.com>
273
274         * arm-dis.c (print_insn_coprocessor): Replace uses of ARM_FEATURE_COPY
275         macro by assignements.
276
277 2018-02-27  H.J. Lu  <hongjiu.lu@intel.com>
278
279         PR gas/22871
280         * i386-gen.c (opcode_modifiers): Add Optimize.
281         * i386-opc.h (Optimize): New enum.
282         (i386_opcode_modifier): Add optimize.
283         * i386-opc.tbl: Add "Optimize" to "mov $imm, reg",
284         "sub reg, reg/mem", "test $imm, acc", "test $imm, reg/mem",
285         "and $imm, acc", "and $imm, reg/mem", "xor reg, reg/mem",
286         "movq $imm, reg" and AVX256 and AVX512 versions of vandnps,
287         vandnpd, vpandn, vpandnd, vpandnq, vxorps, vxorpd, vpxor,
288         vpxord and vpxorq.
289         * i386-tbl.h: Regenerated.
290
291 2018-02-26  Alan Modra  <amodra@gmail.com>
292
293         * crx-dis.c (getregliststring): Allocate a large enough buffer
294         to silence false positive gcc8 warning.
295
296 2018-02-22  Shea Levy <shea@shealevy.com>
297
298         * disassemble.c (ARCH_riscv): Define if ARCH_all.
299
300 2018-02-22  H.J. Lu  <hongjiu.lu@intel.com>
301
302         * i386-opc.tbl: Add {rex},
303         * i386-tbl.h: Regenerated.
304
305 2018-02-20  Maciej W. Rozycki  <macro@mips.com>
306
307         * mips16-opc.c (decode_mips16_operand) <'M'>: Remove case.
308         (mips16_opcodes): Replace `M' with `m' for "restore".
309
310 2018-02-19  Thomas Preud'homme  <thomas.preudhomme@arm.com>
311
312         * arm-dis.c (thumb_opcodes): Fix BXNS mask.
313
314 2018-02-13  Maciej W. Rozycki  <macro@mips.com>
315
316         * wasm32-dis.c (print_insn_wasm32): Rename `index' local
317         variable to `function_index'.
318
319 2018-02-13  Nick Clifton  <nickc@redhat.com>
320
321         PR 22823
322         * metag-dis.c (print_fmmov): Double buffer size to avoid warning
323         about truncation of printing.
324
325 2018-02-12  Henry Wong <henry@stuffedcow.net>
326
327         * mips-opc.c (mips_builtin_opcodes): Correct "sigrie" encoding.
328
329 2018-02-05  Nick Clifton  <nickc@redhat.com>
330
331         * po/pt_BR.po: Updated Brazilian Portuguese translation.
332
333 2018-01-23  Igor Tsimbalist  <igor.v.tsimbalist@intel.com>
334
335         * i386-dis.c (enum): Add pconfig.
336         * i386-gen.c (cpu_flag_init): Add CPU_PCONFIG_FLAGS.
337         (cpu_flags): Add CpuPCONFIG.
338         * i386-opc.h (enum): Add CpuPCONFIG.
339         (i386_cpu_flags): Add cpupconfig.
340         * i386-opc.tbl: Add PCONFIG instruction.
341         * i386-init.h: Regenerate.
342         * i386-tbl.h: Likewise.
343
344 2018-01-23  Igor Tsimbalist  <igor.v.tsimbalist@intel.com>
345
346         * i386-dis.c (enum): Add PREFIX_0F09.
347         * i386-gen.c (cpu_flag_init): Add CPU_WBNOINVD_FLAGS.
348         (cpu_flags): Add CpuWBNOINVD.
349         * i386-opc.h (enum): Add CpuWBNOINVD.
350         (i386_cpu_flags): Add cpuwbnoinvd.
351         * i386-opc.tbl: Add WBNOINVD instruction.
352         * i386-init.h: Regenerate.
353         * i386-tbl.h: Likewise.
354
355 2018-01-17  Jim Wilson  <jimw@sifive.com>
356
357         * riscv-opc.c (riscv_opcodes) <addi>: Use z instead of 0.
358
359 2018-01-17  Igor Tsimbalist  <igor.v.tsimbalist@intel.com>
360
361         * i386-gen.c (cpu_flag_init): Delete CPU_CET_FLAGS, CpuCET.
362         Add CPU_IBT_FLAGS, CPU_SHSTK_FLAGS, CPY_ANY_IBT_FLAGS,
363         CPU_ANY_SHSTK_FLAGS, CpuIBT, CpuSHSTK.
364         (cpu_flags): Add CpuIBT, CpuSHSTK.
365         * i386-opc.h (enum): Add CpuIBT, CpuSHSTK.
366         (i386_cpu_flags): Add cpuibt, cpushstk.
367         * i386-opc.tbl: Change CpuCET to CpuSHSTK and CpuIBT.
368         * i386-init.h: Regenerate.
369         * i386-tbl.h: Likewise.
370
371 2018-01-16  Nick Clifton  <nickc@redhat.com>
372
373         * po/pt_BR.po: Updated Brazilian Portugese translation.
374         * po/de.po: Updated German translation.
375
376 2018-01-15  Jim Wilson  <jimw@sifive.com>
377
378         * riscv-opc.c (match_c_nop): New.
379         (riscv_opcodes) <addi>: Handle an addi that compresses to c.nop.
380
381 2018-01-15  Nick Clifton  <nickc@redhat.com>
382
383         * po/uk.po: Updated Ukranian translation.
384
385 2018-01-13  Nick Clifton  <nickc@redhat.com>
386
387         * po/opcodes.pot: Regenerated.
388
389 2018-01-13  Nick Clifton  <nickc@redhat.com>
390
391         * configure: Regenerate.
392
393 2018-01-13  Nick Clifton  <nickc@redhat.com>
394
395         2.30 branch created.
396
397 2018-01-11  Igor Tsimbalist  <igor.v.tsimbalist@intel.com>
398
399         * i386-opc.tbl: Remove VL variants for 4FMAPS and 4VNNIW insns.
400         * i386-tbl.h: Regenerate.
401
402 2018-01-10  Jan Beulich  <jbeulich@suse.com>
403
404         * i386-opc.tbl (v4fmaddss, v4fnmaddss): Adjust Disp8MemShift.
405         * i386-tbl.h: Re-generate.
406
407 2018-01-10  Jan Beulich  <jbeulich@suse.com>
408
409         * i386-opc.tbl (vpcmpeqb, vpcmpleb, vpcmpltb, vpcmpneqb,
410         vpcmpnleb, vpcmpnltb, vpcmpequb, vpcmpleub, vpcmpltub,
411         vpcmpnequb, vpcmpnleub, vpcmpnltub, vpcmpeqw, vpcmplew,
412         vpcmpltw, vpcmpneqw, vpcmpnlew, vpcmpnltw, vpcmpequw, vpcmpleuw,
413         vpcmpltuw, vpcmpnequw, vpcmpnleuw, vpcmpnltuw): Adjust
414         Disp8MemShift of AVX512VL forms.
415         * i386-tbl.h: Re-generate.
416
417 2018-01-09  Jim Wilson  <jimw@sifive.com>
418
419         * riscv-dis.c (maybe_print_address): If base_reg is zero,
420         then the hi_addr value is zero.
421
422 2018-01-09  James Greenhalgh  <james.greenhalgh@arm.com>
423
424         * arm-dis.c (arm_opcodes): Add csdb.
425         (thumb32_opcodes): Add csdb.
426
427 2018-01-09  James Greenhalgh  <james.greenhalgh@arm.com>
428
429         * aarch64-tbl.h (aarch64_opcode_table): Add "csdb".
430         * aarch64-asm-2.c: Regenerate.
431         * aarch64-dis-2.c: Regenerate.
432         * aarch64-opc-2.c: Regenerate.
433
434 2018-01-08  H.J. Lu  <hongjiu.lu@intel.com>
435
436         PR gas/22681
437         * i386-opc.tbl: Properly encode vmovd with Qword memeory operand.
438         Remove AVX512 vmovd with 64-bit operands.
439         * i386-tbl.h: Regenerated.
440
441 2018-01-05  Jim Wilson  <jimw@sifive.com>
442
443         * riscv-dis.c (print_insn_args) <'s'>: Call maybe_print_address for a
444         jalr.
445
446 2018-01-03  Alan Modra  <amodra@gmail.com>
447
448         Update year range in copyright notice of all files.
449
450 2018-01-02  Jan Beulich  <jbeulich@suse.com>
451
452         * i386-gen.c (operand_type_init): Restore OPERAND_TYPE_REGYMM
453         and OPERAND_TYPE_REGZMM entries.
454
455 For older changes see ChangeLog-2017
456 \f
457 Copyright (C) 2018 Free Software Foundation, Inc.
458
459 Copying and distribution of this file, with or without modification,
460 are permitted in any medium without royalty provided the copyright
461 notice and this notice are preserved.
462
463 Local Variables:
464 mode: change-log
465 left-margin: 8
466 fill-column: 74
467 version-control: never
468 End: