gas/testsuite/
[binutils.git] / opcodes / ChangeLog
blob6662ef404421e7f4ba1d39219f90ba330fc7d9bf
1 2008-09-11  H.J. Lu  <hongjiu.lu@intel.com>
3         * i386-opc.tbl: Fix memory operand size for cmpXXXs[sd].
4         * i386-tbl.h: Regenerated.
6 2008-08-28  Jan Beulich  <jbeulich@novell.com>
8         * i386-dis.c (dis386): Adjust far return mnemonics.
9         * i386-opc.tbl: Add retf.
10         * i386-tbl.h: Re-generate.
12 2008-08-28  Jan Beulich  <jbeulich@novell.com>
14         * i386-dis.c (dis386_twobyte): Adjust cmovXX mnemonics.
16 2008-08-28  H.J. Lu  <hongjiu.lu@intel.com>
18         * ia64-dis.c (print_insn_ia64): Handle cr.iib0 and cr.iib1.
19         * ia64-gen.c (lookup_specifier): Likewise.
21         * ia64-ic.tbl: Add support for cr.iib0 and cr.iib1.
22         * ia64-raw.tbl: Likewise.
23         * ia64-waw.tbl: Likewise.
24         * ia64-asmtab.c: Regenerated.
26 2008-08-27  H.J. Lu  <hongjiu.lu@intel.com>
28         * i386-opc.tbl: Correct fidivr operand size.
30         * i386-tbl.h: Regenerated.
32 2008-08-24  Alan Modra  <amodra@bigpond.net.au>
34         * configure.in: Update a number of obsolete autoconf macros.
35         * aclocal.m4: Regenerate.
37 2008-08-20  H.J. Lu  <hongjiu.lu@intel.com>
39         AVX Programming Reference (August, 2008)
40         * i386-dis.c (PREFIX_VEX_38DB): New.
41         (PREFIX_VEX_38DC): Likewise.
42         (PREFIX_VEX_38DD): Likewise.
43         (PREFIX_VEX_38DE): Likewise.
44         (PREFIX_VEX_38DF): Likewise.
45         (PREFIX_VEX_3ADF): Likewise.
46         (VEX_LEN_38DB_P_2): Likewise.
47         (VEX_LEN_38DC_P_2): Likewise.
48         (VEX_LEN_38DD_P_2): Likewise.
49         (VEX_LEN_38DE_P_2): Likewise.
50         (VEX_LEN_38DF_P_2): Likewise.
51         (VEX_LEN_3ADF_P_2): Likewise.
52         (PREFIX_VEX_3A04): Updated.
53         (VEX_LEN_3A06_P_2): Likewise.
54         (prefix_table): Add PREFIX_VEX_38DB, PREFIX_VEX_38DC,
55         PREFIX_VEX_38DD, PREFIX_VEX_38DE and PREFIX_VEX_3ADF.
56         (x86_64_table): Likewise.
57         (vex_len_table): Add VEX_LEN_38DB_P_2, VEX_LEN_38DC_P_2,
58         VEX_LEN_38DD_P_2, VEX_LEN_38DE_P_2, VEX_LEN_38DF_P_2 and
59         VEX_LEN_3ADF_P_2.
61         * i386-opc.tbl: Add AES + AVX instructions.
62         * i386-init.h: Regenerated.
63         * i386-tbl.h: Likewise.
65 2008-08-15  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
67         * s390-opc.c (INSTR_RRF_FFRU, MASK_RRF_FFRU): New instruction format.
68         * s390-opc.txt (lxr, rrdtr, rrxtr): Fix instruction format.
70 2008-08-15  Alan Modra  <amodra@bigpond.net.au>
72         PR 6526
73         * configure.in: Invoke AC_USE_SYSTEM_EXTENSIONS.
74         * Makefile.in: Regenerate.
75         * aclocal.m4: Regenerate.
76         * config.in: Regenerate.
77         * configure: Regenerate.
79 2008-08-14  Sebastian Huber  <sebastian.huber@embedded-brains.de>
81         PR 6825
82         * ppc-opc.c (powerpc_opcodes): Enable rfci, mfpmr, mtpmr for e300.
84 2008-08-12  H.J. Lu  <hongjiu.lu@intel.com>
86         * i386-opc.tbl: Add syscall and sysret for Cpu64.
88         * i386-tbl.h: Regenerated.
90 2008-08-04  Alan Modra  <amodra@bigpond.net.au>
92         * Makefile.am (POTFILES.in): Set LC_ALL=C.
93         * Makefile.in: Regenerate.
94         * po/POTFILES.in: Regenerate.
96 2008-08-01  Peter Bergner  <bergner@vnet.ibm.com>
98         * ppc-dis.c (powerpc_init_dialect): Handle power7 and vsx options.
99         (print_insn_powerpc): Prepend 'vs' when printing VSX registers.
100         (print_ppc_disassembler_options): Document -Mpower7 and -Mvsx.
101         * ppc-opc.c (insert_xt6): New static function.
102         (extract_xt6): Likewise.
103         (insert_xa6): Likewise.
104         (extract_xa6: Likewise.
105         (insert_xb6): Likewise.
106         (extract_xb6): Likewise.
107         (insert_xb6s): Likewise.
108         (extract_xb6s): Likewise.
109         (XS6, XT6, XA6, XB6, XB6S, DM, XX3, XX3DM, XX1_MASK, XX3_MASK,
110         XX3DM_MASK, PPCVSX): New.
111         (powerpc_opcodes): Add opcodes "lxvd2x", "lxvd2ux", "stxvd2x",
112         "stxvd2ux", "xxmrghd", "xxmrgld", "xxpermdi", "xvmovdp", "xvcpsgndp".
114 2008-08-01  Pedro Alves  <pedro@codesourcery.com>
116         * Makefile.am ($(srcdir)/ia64-asmtab.c): Remove line continuation.
117         * Makefile.in: Regenerate.
119 2008-08-01  H.J. Lu  <hongjiu.lu@intel.com>
121         * i386-reg.tbl: Use Dw2Inval on AVX registers.
122         * i386-tbl.h: Regenerated.
124 2008-07-30  Michael J. Eager  <eager@eagercon.com>
126         * ppc-dis.c (print_insn_powerpc): Disassemble FSL/FCR/UDI fields.
127         * ppc-opc.c (powerpc_operands): Add Xilinx APU related operands.
128         (insert_sprg, PPC405): Use PPC_OPCODE_405.
129         (powerpc_opcodes): Add Xilinx APU related opcodes.
131 2008-07-30  Alan Modra  <amodra@bigpond.net.au>
133         * bfin-dis.c, cris-dis.c, i386-dis.c, or32-opc.c: Silence gcc warnings.
135 2008-07-10  Richard Sandiford  <rdsandiford@googlemail.com>
137         * mips-dis.c (_print_insn_mips): Use ELF_ST_IS_MIPS16.
139 2008-07-07  Adam Nemet  <anemet@caviumnetworks.com>
141         * mips-opc.c (CP): New macro.
142         (mips_builtin_opcodes): Mark c0, c2 and c3 as CP.  Add Octeon to the
143         membership of di, dmfc0, dmtc0, ei, mfc0 and mtc0.  Add dmfc2 and
144         dmtc2 Octeon instructions.
146 2008-07-07  Stan Shebs  <stan@codesourcery.com>
148         * dis-init.c (init_disassemble_info): Init endian_code field.
149         * arm-dis.c (print_insn): Disassemble code according to
150         setting of endian_code.
151         (print_insn_big_arm): Detect when BE8 extension flag has been set.
153 2008-06-30  Richard Sandiford  <rdsandiford@googlemail.com>
155         * mips-dis.c (_print_insn_mips): Use bfd_asymbol_flavour to check
156         for ELF symbols.
158 2008-06-25  Peter Bergner  <bergner@vnet.ibm.com>
160         * ppc-dis.c (powerpc_init_dialect): Handle -M464.
161         (print_ppc_disassembler_options): Likewise.
162         * ppc-opc.c (PPC464): Define.
163         (powerpc_opcodes): Add mfdcrux and mtdcrux.
165 2008-06-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
167         * configure: Regenerate.
169 2008-06-13  Peter Bergner  <bergner@vnet.ibm.com>
171         * ppc-dis.c (print_insn_powerpc): Update prototye to use new
172         ppc_cpu_t typedef.
173         (struct dis_private): New.
174         (POWERPC_DIALECT): New define.
175         (powerpc_dialect): Renamed to...
176         (powerpc_init_dialect): This.  Update to use ppc_cpu_t and
177         struct dis_private.
178         (print_insn_big_powerpc): Update for using structure in
179         info->private_data.
180         (print_insn_little_powerpc): Likewise.
181         (operand_value_powerpc): Change type of dialect param to ppc_cpu_t.
182         (skip_optional_operands): Likewise.
183         (print_insn_powerpc): Likewise.  Remove initialization of dialect.
184         * ppc-opc.c (extract_bat, extract_bba, extract_bdm, extract_bdp,
185         extract_bo, extract_boe, extract_fxm, extract_mb6, extract_mbe,
186         extract_nb, extract_nsi, extract_rbs, extract_sh6, extract_spr,
187         extract_sprg, extract_tbr insert_bat, insert_bba, insert_bdm,
188         insert_bdp, insert_bo, insert_boe, insert_fxm, insert_mb6, insert_mbe,
189         insert_nsi, insert_ral, insert_ram, insert_raq, insert_ras, insert_rbs,
190         insert_sh6, insert_spr, insert_sprg, insert_tbr): Change the dialect
191         param to be of type ppc_cpu_t.  Update prototype.
193 2008-06-12  Adam Nemet  <anemet@caviumnetworks.com>
195         * mips-dis.c (print_insn_args): Handle field descriptors +x, +p,
196         +s, +S.
197         * mips-opc.c (mips_builtin_opcodes): Add Octeon instructions
198         baddu, bbit*, cins*, dmul, pop, dpop, exts*, mtm*, mtp*, syncs,
199         syncw, syncws, vm3mulu, vm0 and vmulu.
201         * mips-dis.c (print_insn_args): Handle field descriptor +Q.
202         * mips-opc.c (mips_builtin_opcodes): Add Octeon instructions seq,
203         seqi, sne and snei.
205 2008-05-30  H.J. Lu  <hongjiu.lu@intel.com>
207         * i386-opc.tbl: Add vmovd with 64bit operand.
208         * i386-tbl.h: Regenerated.
210 2008-05-27  Martin Schwidefsky  <schwidefsky@de.ibm.com>
212         * s390-opc.c (INSTR_RRF_R0RR): Fix RRF_R0RR operand format.
214 2008-05-22  H.J. Lu  <hongjiu.lu@intel.com>
216         * i386-opc.tbl: Add NoAVX to cvtpd2pi, cvtpi2pd and cvttpd2pi.
217         * i386-tbl.h: Regenerated.
219 2008-05-22  H.J. Lu  <hongjiu.lu@intel.com>
221         PR gas/6517
222         * i386-opc.tbl: Break cvtsi2ss/cvtsi2sd/vcvtsi2sd/vcvtsi2ss
223         into 32bit and 64bit.  Remove Reg64|Qword and add 
224         IgnoreSize|No_qSuf on 32bit version.
225         * i386-tbl.h: Regenerated.
227 2008-05-21  H.J. Lu  <hongjiu.lu@intel.com>
229         * i386-opc.tbl: Add NoAVX to movdq2q and movq2dq.
230         * i386-tbl.h: Regenerated.
232 2008-05-21  M R Swami Reddy <MR.Swami.Reddy@nsc.com>
234         * cr16-dis.c (build_mask): Adjust the mask for 32-bit bcond.
236 2008-05-14  Alan Modra  <amodra@bigpond.net.au>
238         * Makefile.am: Run "make dep-am".
239         * Makefile.in: Regenerate.
241 2008-05-02  H.J. Lu  <hongjiu.lu@intel.com>
243         * i386-dis.c (MOVBE_Fixup): New.
244         (Mo): Likewise.
245         (PREFIX_0F3880): Likewise.
246         (PREFIX_0F3881): Likewise.
247         (PREFIX_0F38F0): Updated.
248         (prefix_table): Add PREFIX_0F3880 and PREFIX_0F3881.  Update
249         PREFIX_0F38F0 and PREFIX_0F38F1 for movbe.
250         (three_byte_table): Use PREFIX_0F3880 and PREFIX_0F3881.
252         * i386-gen.c (cpu_flag_init): Add CPU_MOVBE_FLAGS and
253         CPU_EPT_FLAGS.
254         (cpu_flags): Add CpuMovbe and CpuEPT.
256         * i386-opc.h (CpuMovbe): New.
257         (CpuEPT): Likewise.
258         (CpuLM): Updated.
259         (i386_cpu_flags): Add cpumovbe and cpuept.
261         * i386-opc.tbl: Add entries for movbe and EPT instructions.
262         * i386-init.h: Regenerated.
263         * i386-tbl.h: Likewise.
265 2008-04-29  Adam Nemet  <anemet@caviumnetworks.com>
267         * mips-opc.c (mips_builtin_opcodes): Set field `match' to 0 for
268         the two drem and the two dremu macros.
270 2008-04-28  Adam Nemet  <anemet@caviumnetworks.com>
272         * mips-opc.c (mips_builtin_opcodes): Mark prefx and c1
273         instructions FP_S.  Mark l.s, li.s, lwc1, swc1, s.s, trunc.w.s and
274         cop1 macros INSN2_M_FP_S.  Mark l.d, li.d, ldc1 and sdc1 macros
275         INSN2_M_FP_D.  Mark trunc.w.d macro INSN2_M_FP_S and INSN2_M_FP_D.
277 2008-04-25  David S. Miller  <davem@davemloft.net>
279         * sparc-dis.c: Emit %stick instead of %sys_tick, and %stick_cmpr
280         instead of %sys_tick_cmpr, as suggested in architecture manuals.
282 2008-04-23  Paolo Bonzini  <bonzini@gnu.org>
284         * aclocal.m4: Regenerate.
285         * configure: Regenerate.
287 2008-04-23  David S. Miller  <davem@davemloft.net>
289         * sparc-opc.c (asi_table): Add UltraSPARC and Niagara
290         extended values.
291         (prefetch_table): Add missing values.
293 2008-04-22  H.J. Lu  <hongjiu.lu@intel.com>
295         * i386-gen.c (opcode_modifiers): Add NoAVX.
297         * i386-opc.h (NoAVX): New.
298         (OldGcc): Updated.
299         (i386_opcode_modifier): Add noavx.
301         * i386-opc.tbl: Add NoAVX to SSE, SSE2, SSE3 and SSSE3
302         instructions which don't have AVX equivalent.
303         * i386-tbl.h: Regenerated.
305 2008-04-18  H.J. Lu  <hongjiu.lu@intel.com>
307         * i386-dis.c (OP_VEX_FMA): New.
308         (OP_EX_VexImmW): Likewise.
309         (VexFMA): Likewise.
310         (Vex128FMA): Likewise.
311         (EXVexImmW): Likewise.
312         (get_vex_imm8): Likewise.
313         (OP_EX_VexReg): Likewise.
314         (vex_i4_done): Renamed to ...
315         (vex_w_done): This.
316         (prefix_table): Replace EXVexW with EXVexImmW on vpermil2ps
317         and vpermil2pd.  Replace Vex/Vex128 with VexFMA/Vex128FMA on
318         FMA instructions.
319         (print_insn): Updated.
320         (OP_EX_VexW): Rewrite to swap register in VEX with EX.
321         (OP_REG_VexI4): Check invalid high registers.
323 2008-04-16  Dwarakanath Rajagopal  <dwarak.rajagopal@amd.com>
324             Michael Meissner  <michael.meissner@amd.com>
326         * i386-opc.tbl: Fix protX to allow memory in the middle operand.
327         * i386-tbl.h: Regenerate from i386-opc.tbl.
329 2008-04-14  Edmar Wienskoski  <edmar@freescale.com>
331         * ppc-dis.c (powerpc_dialect): Handle "e500mc".  Extend "e500" to
332         accept Power E500MC instructions.
333         (print_ppc_disassembler_options): Document -Me500mc.
334         * ppc-opc.c (DUIS, DUI, T): New.
335         (XRT, XRTRA): Likewise.
336         (E500MC): Likewise.
337         (powerpc_opcodes): Add new Power E500MC instructions.
339 2008-04-10  Andreas Krebbel  <krebbel1@de.ibm.com>
341         * s390-dis.c (init_disasm): Evaluate disassembler_options.
342         (print_s390_disassembler_options): New function.
343         * disassemble.c (disassembler_usage): Invoke
344         print_s390_disassembler_options.
346 2008-04-10  Andreas Krebbel  <krebbel1@de.ibm.com>
348         * s390-mkopc.c (insertExpandedMnemonic): Expand string sizes
349         of local variables used for mnemonic parsing: prefix, suffix and
350         number.
352 2008-04-10  Andreas Krebbel  <krebbel1@de.ibm.com>
354         * s390-mkopc.c (s390_cond_ext_format): Add back the mnemonic
355         extensions for conditional jumps (o, p, m, nz, z, nm, np, no).
356         (s390_crb_extensions): New extensions table.
357         (insertExpandedMnemonic): Handle '$' tag.
358         * s390-opc.txt: Remove conditional jump variants which can now
359         be expanded automatically.
360         Replace '*' tag with '$' in the compare and branch instructions.
362 2008-04-07  H.J. Lu  <hongjiu.lu@intel.com>
364         * i386-dis.c (PREFIX_VEX_38XX): Add a tab.
365         (PREFIX_VEX_3AXX): Likewis.
367 2008-04-07  H.J. Lu  <hongjiu.lu@intel.com>
369         * i386-opc.tbl: Remove 4 extra blank lines.
371 2008-04-04  H.J. Lu  <hongjiu.lu@intel.com>
373         * i386-gen.c (cpu_flag_init): Replace CPU_CLMUL_FLAGS/CpuCLMUL
374         with CPU_PCLMUL_FLAGS/CpuPCLMUL.
375         (cpu_flags): Replace CpuCLMUL with CpuPCLMUL.
376         * i386-opc.tbl: Likewise.
378         * i386-opc.h (CpuCLMUL): Renamed to ...
379         (CpuPCLMUL): This.
380         (CpuFMA): Updated.
381         (i386_cpu_flags): Replace cpuclmul with cpupclmul.
383         * i386-init.h: Regenerated.
385 2008-04-03  H.J. Lu  <hongjiu.lu@intel.com>
387         * i386-dis.c (OP_E_register): New.
388         (OP_E_memory): Likewise.
389         (OP_VEX): Likewise.
390         (OP_EX_Vex): Likewise.
391         (OP_EX_VexW): Likewise.
392         (OP_XMM_Vex): Likewise.
393         (OP_XMM_VexW): Likewise.
394         (OP_REG_VexI4): Likewise.
395         (PCLMUL_Fixup): Likewise.
396         (VEXI4_Fixup): Likewise.
397         (VZERO_Fixup): Likewise.
398         (VCMP_Fixup): Likewise.
399         (VPERMIL2_Fixup): Likewise.
400         (rex_original): Likewise.
401         (rex_ignored): Likewise.
402         (Mxmm): Likewise.
403         (XMM): Likewise.
404         (EXxmm): Likewise.
405         (EXxmmq): Likewise.
406         (EXymmq): Likewise.
407         (Vex): Likewise.
408         (Vex128): Likewise.
409         (Vex256): Likewise.
410         (VexI4): Likewise.
411         (EXdVex): Likewise.
412         (EXqVex): Likewise.
413         (EXVexW): Likewise.
414         (EXdVexW): Likewise.
415         (EXqVexW): Likewise.
416         (XMVex): Likewise.
417         (XMVexW): Likewise.
418         (XMVexI4): Likewise.
419         (PCLMUL): Likewise.
420         (VZERO): Likewise.
421         (VCMP): Likewise.
422         (VPERMIL2): Likewise.
423         (xmm_mode): Likewise.
424         (xmmq_mode): Likewise.
425         (ymmq_mode): Likewise.
426         (vex_mode): Likewise.
427         (vex128_mode): Likewise.
428         (vex256_mode): Likewise.
429         (USE_VEX_C4_TABLE): Likewise.
430         (USE_VEX_C5_TABLE): Likewise.
431         (USE_VEX_LEN_TABLE): Likewise.
432         (VEX_C4_TABLE): Likewise.
433         (VEX_C5_TABLE): Likewise.
434         (VEX_LEN_TABLE): Likewise.
435         (REG_VEX_XX): Likewise.
436         (MOD_VEX_XXX): Likewise.
437         (PREFIX_0F38DB..PREFIX_0F38DF): Likewise.
438         (PREFIX_0F3A44): Likewise.
439         (PREFIX_0F3ADF): Likewise.
440         (PREFIX_VEX_XXX): Likewise.
441         (VEX_OF): Likewise.
442         (VEX_OF38): Likewise.
443         (VEX_OF3A): Likewise.
444         (VEX_LEN_XXX): Likewise.
445         (vex): Likewise.
446         (need_vex): Likewise.
447         (need_vex_reg): Likewise.
448         (vex_i4_done): Likewise.
449         (vex_table): Likewise.
450         (vex_len_table): Likewise.
451         (OP_REG_VexI4): Likewise.
452         (vex_cmp_op): Likewise.
453         (pclmul_op): Likewise.
454         (vpermil2_op): Likewise.
455         (m_mode): Updated.
456         (es_reg): Likewise.
457         (PREFIX_0F38F0): Likewise.
458         (PREFIX_0F3A60): Likewise.
459         (reg_table): Add REG_VEX_71...REG_VEX_73 and REG_VEX_AE.
460         (prefix_table): Add PREFIX_0F38DB..PREFIX_0F38DF, PREFIX_0F3ADF
461         and PREFIX_VEX_XXX entries.
462         (x86_64_table): Use VEX_C4_TABLE and VEX_C5_TABLE.
463         (three_byte_table): Use PREFIX_0F38DB..PREFIX_0F38DF and
464         PREFIX_0F3ADF.
465         (mod_table): Use VEX_C4_TABLE, VEX_C5_TABLE and VEX_LEN_TABLE.
466         Add MOD_VEX_XXX entries.
467         (ckprefix): Initialize rex_original and rex_ignored.  Store the
468         REX byte in rex_original.
469         (get_valid_dis386): Handle the implicit prefix in VEX prefix
470         bytes and USE_VEX_LEN_TABLE/USE_VEX_C4_TABLE/USE_VEX_C5_TABLE.
471         (print_insn): Set need_vex/need_vex_reg/vex_i4_done to 0 before
472         calling get_valid_dis386.  Use rex_original and rex_ignored when
473         printing out REX.
474         (putop): Handle "XY".
475         (intel_operand_size): Handle VEX, xmm_mode, xmmq_mode and
476         ymmq_mode.
477         (OP_E_extended): Updated to use OP_E_register and
478         OP_E_memory.
479         (OP_XMM): Handle VEX.
480         (OP_EX): Likewise.
481         (XMM_Fixup): Likewise.
482         (CMP_Fixup): Use ARRAY_SIZE.
484         * i386-gen.c (cpu_flag_init): Add CpuAES, CPU_CLMUL_FLAGS,
485         CPU_FMA_FLAGS and CPU_AVX_FLAGS.
486         (operand_type_init): Add OPERAND_TYPE_REGYMM and
487         OPERAND_TYPE_VEX_IMM4.
488         (cpu_flags): Add CpuAVX, CpuAES, CpuCLMUL and CpuFMA.
489         (opcode_modifiers): Add Implicit1stXmm0, Vex, Vex256, VexNDD,
490         VexNDS, VexW0, VexW1, Vex0F, Vex0F38, Vex0F3A, Vex3Sources,
491         VexImmExt and SSE2AVX.
492         (operand_types): Add RegYMM, Ymmword and Vex_Imm4.
494         * i386-opc.h (CpuAVX): New.
495         (CpuAES): Likewise.
496         (CpuCLMUL): Likewise.
497         (CpuFMA): Likewise.
498         (Vex): Likewise.
499         (Vex256): Likewise.
500         (VexNDS): Likewise.
501         (VexNDD): Likewise.
502         (VexW0): Likewise.
503         (VexW1): Likewise.
504         (Vex0F): Likewise.
505         (Vex0F38): Likewise.
506         (Vex0F3A): Likewise.
507         (Vex3Sources): Likewise.
508         (VexImmExt): Likewise.
509         (SSE2AVX): Likewise.
510         (RegYMM): Likewise.
511         (Ymmword): Likewise.
512         (Vex_Imm4): Likewise.
513         (Implicit1stXmm0): Likewise.
514         (CpuXsave): Updated.
515         (CpuLM): Likewise.
516         (ByteOkIntel): Likewise.
517         (OldGcc): Likewise.
518         (Control): Likewise.
519         (Unspecified): Likewise.
520         (OTMax): Likewise.
521         (i386_cpu_flags): Add cpuavx, cpuaes, cpuclmul and cpufma.
522         (i386_opcode_modifier): Add implicit1stxmm0, vex, vex256,
523         vexnds, vexndd, vexw0, vexw1, vex0f, vex0f38, vex0f3a,
524         vex3sources, veximmext and sse2avx.
525         (i386_operand_type): Add regymm, ymmword and vex_imm4.
527         * i386-opc.tbl: Add AES, CLMUL, AVX and FMA new instructions.
529         * i386-reg.tbl: Add AVX registers, ymm0..ymm15.
531         * i386-init.h: Regenerated.
532         * i386-tbl.h: Likewise.
534 2008-03-26  Bernd Schmidt  <bernd.schmidt@analog.com>
536         From  Robin Getz  <robin.getz@analog.com>
537         * bfin-dis.c (bu32): Typedef.
538         (enum const_forms_t): Add c_uimm32 and c_huimm32.
539         (constant_formats[]): Add uimm32 and huimm16.
540         (fmtconst_val): New.
541         (uimm32): Define.
542         (huimm32): Define.
543         (imm16_val): Define.
544         (luimm16_val): Define.
545         (struct saved_state): Define.
546         (GREG, DPREG, DREG, PREG, SPREG, FPREG, IREG, MREG, BREG, LREG,
547         A0XREG, A0WREG, A1XREG, A1WREG,CCREG, LC0REG, LT0REG, LB0REG,
548         LC1REG, LT1REG, LB1REG, RETSREG, PCREG): Define.
549         (get_allreg): New.
550         (decode_LDIMMhalf_0): Print out the whole register value.
552         From Jie Zhang  <jie.zhang@analog.com>
553         * bfin-dis.c (decode_dsp32mac_0): Decode (IU) option for
554         multiply and multiply-accumulate to data register instruction.
556         * bfin-dis.c: (c_uimm4s4d, c_imm5d, c_imm7d, c_imm16d, c_uimm16s4d,
557         c_imm32, c_huimm32e): Define.
558         (constant_formats): Add flags for printing decimal, leading spaces, and
559         exact symbols.
560         (comment, parallel): Add global flags in all disassembly.
561         (fmtconst): Take advantage of new flags, and print default in hex.
562         (fmtconst_val): Likewise.
563         (decode_macfunc): Be consistant with spaces, tabs, comments,
564         capitalization in disassembly, fix minor coding style issues.
565         (reg_names, amod0, amod1, amod0amod2, aligndir, get_allreg): Likewise.
566         (decode_ProgCtrl_0, decode_PushPopMultiple_0, decode_CCflag_0,
567         decode_CC2dreg_0, decode_CC2stat_0, decode_BRCC_0, decode_UJUMP_0,
568         decode_REGMV_0, decode_ALU2op_0, decode_PTR2op_0, decode_LOGI2op_0,
569         decode_COMP3op_0, decode_COMPI2opD_0, decode_COMPI2opP_0,
570         decode_LDSTpmod_0, decode_dagMODim_0, decode_dagMODik_0,
571         decode_dspLDST_0, decode_LDST_0, decode_LDSTiiFP_0, decode_LDSTii_0,
572         decode_LoopSetup_0, decode_LDIMMhalf_0, decode_CALLa_0,
573         decode_LDSTidxI_0, decode_linkage_0, decode_dsp32alu_0,
574         decode_dsp32shift_0, decode_dsp32shiftimm_0, decode_pseudodbg_assert_0,
575         _print_insn_bfin, print_insn_bfin): Likewise.
577 2008-03-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
579         * aclocal.m4: Regenerate.
580         * configure: Likewise.
581         * Makefile.in: Likewise.
583 2008-03-13  Alan Modra  <amodra@bigpond.net.au>
585         * Makefile.am: Run "make dep-am".
586         * Makefile.in: Regenerate.
587         * configure: Regenerate.
589 2008-03-07  Alan Modra  <amodra@bigpond.net.au>
591         * ppc-opc.c (powerpc_opcodes): Order and format.
593 2008-03-01  H.J. Lu  <hongjiu.lu@intel.com>
595         * i386-opc.tbl: Allow 16-bit near indirect branches for x86-64.
596         * i386-tbl.h: Regenerated.
598 2008-02-23  H.J. Lu  <hongjiu.lu@intel.com>
600         * i386-opc.tbl: Disallow 16-bit near indirect branches for
601         x86-64.
602         * i386-tbl.h: Regenerated.
604 2008-02-21  Jan Beulich  <jbeulich@novell.com>
606         * i386-opc.tbl: Allow Dword for far indirect call. Allow Dword
607         and Fword for far indirect jmp. Allow Reg16 and Word for near
608         indirect jmp on x86-64. Disallow Fword for lcall.
609         * i386-tbl.h: Re-generate.
611 2008-02-18  M R Swami Reddy <MR.Swami.Reddy@nsc.com>
613         * cr16-opc.c  (cr16_num_optab): Defined
615 2008-02-16  H.J. Lu  <hongjiu.lu@intel.com>
617         * i386-gen.c  (operand_type_init): Add OPERAND_TYPE_INOUTPORTREG.
618         * i386-init.h: Regenerated.
620 2008-02-14  Nick Clifton  <nickc@redhat.com>
622         PR binutils/5524
623         * configure.in (SHARED_LIBADD): Select the correct host specific
624         file extension for shared libraries.
625         * configure: Regenerate.
627 2008-02-13  Jan Beulich  <jbeulich@novell.com>
629         * i386-opc.h (RegFlat): New.
630         * i386-reg.tbl (flat): Add.
631         * i386-tbl.h: Re-generate.
633 2008-02-13  Jan Beulich  <jbeulich@novell.com>
635         * i386-dis.c (a_mode): New.
636         (cond_jump_mode): Adjust.
637         (Ma): Change to a_mode.
638         (intel_operand_size): Handle a_mode.
639         * i386-opc.tbl: Allow Dword and Qword for bound.
640         * i386-tbl.h: Re-generate.
642 2008-02-13  Jan Beulich  <jbeulich@novell.com>
644         * i386-gen.c (process_i386_registers): Process new fields.
645         * i386-opc.h (reg_entry): Shrink reg_flags and reg_num to
646         unsigned char. Add dw2_regnum and Dw2Inval.
647         * i386-reg.tbl: Provide initializers for dw2_regnum. Add pseudo
648         register names.
649         * i386-tbl.h: Re-generate.
651 2008-02-11  H.J. Lu  <hongjiu.lu@intel.com>
653         * i386-gen.c (cpu_flag_init): Add CPU_XSAVE_FLAGS.
654         * i386-init.h: Updated.
656 2008-02-11  H.J. Lu  <hongjiu.lu@intel.com>
658         * i386-gen.c (cpu_flags): Add CpuXsave.
660         * i386-opc.h (CpuXsave): New.
661         (CpuLM): Updated.
662         (i386_cpu_flags): Add cpuxsave.
664         * i386-dis.c (MOD_0FAE_REG_4): New.
665         (RM_0F01_REG_2): Likewise.
666         (MOD_0FAE_REG_5): Updated.
667         (RM_0F01_REG_3): Likewise.
668         (reg_table): Use MOD_0FAE_REG_4.
669         (mod_table): Use RM_0F01_REG_2.  Add MOD_0FAE_REG_4.  Updated
670         for xrstor.
671         (rm_table): Add RM_0F01_REG_2.
673         * i386-opc.tbl: Add xsave, xrstor, xgetbv and xsetbv.
674         * i386-init.h: Regenerated.
675         * i386-tbl.h: Likewise.
677 2008-02-11  Jan Beulich  <jbeulich@novell.com>
679         * i386-opc.tbl: Remove Disp32S from CpuNo64 opcodes. Remove
680         Disp16 from Cpu64 non-jump opcodes (including loop and j?cxz).
681         * i386-tbl.h: Re-generate.
683 2008-02-04  H.J. Lu  <hongjiu.lu@intel.com>
685         PR 5715
686         * configure: Regenerated.
688 2008-02-04  Adam Nemet  <anemet@caviumnetworks.com>
690         * mips-dis.c: Update copyright.
691         (mips_arch_choices): Add Octeon.
692         * mips-opc.c: Update copyright.
693         (IOCT): New macro.
694         (mips_builtin_opcodes): Add Octeon instruction synciobdma.
696 2008-01-29  Alan Modra  <amodra@bigpond.net.au>
698         * ppc-opc.c: Support optional L form mtmsr.
700 2008-01-24  H.J. Lu  <hongjiu.lu@intel.com>
702         * i386-dis.c (OP_E_extended): Handle r12 like rsp.
704 2008-01-23  H.J. Lu  <hongjiu.lu@intel.com>
706         * i386-gen.c (cpu_flag_init): Add CpuLM to CPU_GENERIC64_FLAGS.
707         * i386-init.h: Regenerated.
709 2008-01-23  Tristan Gingold  <gingold@adacore.com>
711         * ia64-dis.c (print_insn_ia64): Display symbolic name of ar.fcr,
712         ar.eflag, ar.csd, ar.ssd, ar.cflg, ar.fsr, ar.fir and ar.fdr.
714 2008-01-22  H.J. Lu  <hongjiu.lu@intel.com>
716         * i386-gen.c (cpu_flag_init): Remove CpuMMX2.
717         (cpu_flags): Likewise.
719         * i386-opc.h (CpuMMX2): Removed.
720         (CpuSSE): Updated.
722         * i386-opc.tbl: Replace CpuMMX2 with CpuSSE|Cpu3dnowA.
723         * i386-init.h: Regenerated.
724         * i386-tbl.h: Likewise.
726 2008-01-22  H.J. Lu  <hongjiu.lu@intel.com>
728         * i386-gen.c (cpu_flag_init): Add CPU_VMX_FLAGS and
729         CPU_SMX_FLAGS.
730         * i386-init.h: Regenerated.
732 2008-01-15  H.J. Lu  <hongjiu.lu@intel.com>
734         * i386-opc.tbl: Use Qword on movddup.
735         * i386-tbl.h: Regenerated.
737 2008-01-15  H.J. Lu  <hongjiu.lu@intel.com>
739         * i386-opc.tbl: Put back 16bit movsx/movzx for AT&T syntax.
740         * i386-tbl.h: Regenerated.
742 2008-01-15  H.J. Lu  <hongjiu.lu@intel.com>
744         * i386-dis.c (Mx): New.
745         (PREFIX_0FC3): Likewise.
746         (PREFIX_0FC7_REG_6): Updated.
747         (dis386_twobyte): Use PREFIX_0FC3.
748         (prefix_table): Add PREFIX_0FC3.  Use Mq on movntq and movntsd.
749         Use Mx on movntps, movntpd, movntdq and movntdqa.  Use Md on
750         movntss.
752 2008-01-14  H.J. Lu  <hongjiu.lu@intel.com>
754         * i386-gen.c (opcode_modifiers): Add IntelSyntax.
755         (operand_types): Add Mem.
757         * i386-opc.h (IntelSyntax): New.
758         * i386-opc.h (Mem): New.
759         (Byte): Updated.
760         (Opcode_Modifier_Max): Updated.
761         (i386_opcode_modifier): Add intelsyntax.
762         (i386_operand_type): Add mem.
764         * i386-opc.tbl: Remove Reg16 from movnti.  Add sizes to more
765         instructions.
767         * i386-reg.tbl: Add size for accumulator.
769         * i386-init.h: Regenerated.
770         * i386-tbl.h: Likewise.
772 2008-01-13  H.J. Lu  <hongjiu.lu@intel.com>
774         * i386-opc.h (Byte): Fix a typo.
776 2008-01-12  H.J. Lu  <hongjiu.lu@intel.com>
778         PR gas/5534
779         * i386-gen.c (operand_type_init): Add Dword to
780         OPERAND_TYPE_ACC32.  Add Qword to OPERAND_TYPE_ACC64.
781         (opcode_modifiers): Remove CheckSize, Byte, Word, Dword,
782         Qword and Xmmword.
783         (operand_types): Add Byte, Word, Dword, Fword, Qword, Tbyte,
784         Xmmword, Unspecified and Anysize.
785         (set_bitfield): Make Mmword an alias of Qword.  Make Oword
786         an alias of Xmmword.
788         * i386-opc.h (CheckSize): Removed.
789         (Byte): Updated.
790         (Word): Likewise.
791         (Dword): Likewise.
792         (Qword): Likewise.
793         (Xmmword): Likewise.
794         (FWait): Updated.
795         (OTMax): Likewise.
796         (i386_opcode_modifier): Remove checksize, byte, word, dword,
797         qword and xmmword.
798         (Fword): New.
799         (TBYTE): Likewise.
800         (Unspecified): Likewise.
801         (Anysize): Likewise.
802         (i386_operand_type): Add byte, word, dword, fword, qword,
803         tbyte xmmword, unspecified and anysize.
805         * i386-opc.tbl: Updated to use Byte, Word, Dword, Fword, Qword,
806         Tbyte, Xmmword, Unspecified and Anysize.
808         * i386-reg.tbl: Add size for accumulator.
810         * i386-init.h: Regenerated.
811         * i386-tbl.h: Likewise.
813 2008-01-10  H.J. Lu  <hongjiu.lu@intel.com>
815         * i386-dis.c (REG_0F0E): Renamed to REG_0F0D.
816         (REG_0F18): Updated.
817         (reg_table): Updated.
818         (dis386_twobyte): Updated.  Use "nopQ" on 0x19 to 0x1e.
819         (twobyte_has_modrm): Set 1 for 0x19 to 0x1e.
821 2008-01-08  H.J. Lu  <hongjiu.lu@intel.com>
823         * i386-gen.c (set_bitfield): Use fail () on error.
825 2008-01-08  H.J. Lu  <hongjiu.lu@intel.com>
827         * i386-gen.c (lineno): New.
828         (filename): Likewise.
829         (set_bitfield): Report filename and line numer on error.
830         (process_i386_opcodes): Set filename and update lineno.
831         (process_i386_registers): Likewise.
833 2008-01-05  H.J. Lu  <hongjiu.lu@intel.com>
835         * i386-gen.c (opcode_modifiers): Rename IntelMnemonic to
836         ATTSyntax.
838         * i386-opc.h (IntelMnemonic): Renamed to ..
839         (ATTSyntax): This
840         (Opcode_Modifier_Max): Updated.
841         (i386_opcode_modifier): Remove intelmnemonic. Add attsyntax
842         and intelsyntax.
844         * i386-opc.tbl: Remove IntelMnemonic and update with ATTSyntax
845         on fsub, fubp, fsubr, fsubrp, div, fdivp, fdivr and fdivrp.
846         * i386-tbl.h: Regenerated.
848 2008-01-04  H.J. Lu  <hongjiu.lu@intel.com>
850         * i386-gen.c: Update copyright to 2008.
851         * i386-opc.h: Likewise.
852         * i386-opc.tbl: Likewise.
854         * i386-init.h: Regenerated.
855         * i386-tbl.h: Likewise.
857 2008-01-04  H.J. Lu  <hongjiu.lu@intel.com>
859         * i386-opc.tbl: Add NoRex64 to extractps, movmskpd, movmskps,
860         pextrb, pextrw, pinsrb, pinsrw and pmovmskb.
861         * i386-tbl.h: Regenerated.
863 2008-01-03  H.J. Lu  <hongjiu.lu@intel.com>
865         * i386-gen.c (cpu_flag_init): Remove CpuSSE4_1_Or_5 and
866         CpuSSE4_2_Or_ABM.
867         (cpu_flags): Likewise.
869         * i386-opc.h (CpuSSE4_1_Or_5): Removed.
870         (CpuSSE4_2_Or_ABM): Likewise.
871         (CpuLM): Updated.
872         (i386_cpu_flags): Remove cpusse4_1_or_5 and cpusse4_2_or_abm.
874         * i386-opc.tbl: Replace CpuSSE4_1_Or_5, CpuSSE4_2_Or_ABM and
875         Cpu686|CpuPadLock with CpuSSE4_1|CpuSSE5, CpuABM|CpuSSE4_2
876         and CpuPadLock, respectively.
877         * i386-init.h: Regenerated.
878         * i386-tbl.h: Likewise.
880 2008-01-03  H.J. Lu  <hongjiu.lu@intel.com>
882         * i386-gen.c (opcode_modifiers): Remove No_xSuf.
884         * i386-opc.h (No_xSuf): Removed.
885         (CheckSize): Updated.
887         * i386-tbl.h: Regenerated.
889 2008-01-02  H.J. Lu  <hongjiu.lu@intel.com>
891         * i386-gen.c (cpu_flag_init): Add CpuSSE4_2_Or_ABM to
892         CPU_AMDFAM10_FLAGS, CPU_SSE4_2_FLAGS, CpuABM and
893         CPU_SSE5_FLAGS.
894         (cpu_flags): Add CpuSSE4_2_Or_ABM.
896         * i386-opc.h (CpuSSE4_2_Or_ABM): New.
897         (CpuLM): Updated.
898         (i386_cpu_flags): Add cpusse4_2_or_abm.
900         * i386-opc.tbl: Use CpuSSE4_2_Or_ABM instead of
901         CpuABM|CpuSSE4_2 on popcnt.
902         * i386-init.h: Regenerated.
903         * i386-tbl.h: Likewise.
905 2008-01-02  H.J. Lu  <hongjiu.lu@intel.com>
907         * i386-opc.h: Update comments.
909 2008-01-02  H.J. Lu  <hongjiu.lu@intel.com>
911         * i386-gen.c (opcode_modifiers): Use Qword instead of QWord.
912         * i386-opc.h: Likewise.
913         * i386-opc.tbl: Likewise.
915 2008-01-02  H.J. Lu  <hongjiu.lu@intel.com>
917         PR gas/5534
918         * i386-gen.c (opcode_modifiers): Add No_xSuf, CheckSize,
919         Byte, Word, Dword, QWord and Xmmword.
921         * i386-opc.h (No_xSuf): New.
922         (CheckSize): Likewise.
923         (Byte): Likewise.
924         (Word): Likewise.
925         (Dword): Likewise.
926         (QWord): Likewise.
927         (Xmmword): Likewise.
928         (FWait): Updated.
929         (i386_opcode_modifier): Add No_xSuf, CheckSize, Byte, Word,
930         Dword, QWord and Xmmword.
932         * i386-opc.tbl: Add CheckSize|QWord to movq if IgnoreSize is
933         used.
934         * i386-tbl.h: Regenerated.
936 2008-01-02  Mark Kettenis  <kettenis@gnu.org>
938         * m88k-dis.c (instructions): Fix fcvt.* instructions.
939         From Miod Vallat.
941 For older changes see ChangeLog-2007
943 Local Variables:
944 mode: change-log
945 left-margin: 8
946 fill-column: 74
947 version-control: never
948 End: