2009-04-06 H.J. Lu <hongjiu.lu@intel.com>
[binutils.git] / opcodes / ChangeLog
blob4cdc26136e3d55217edff495e14ec3cea882010a
1 2009-04-02  Peter Bergner  <bergner@vnet.ibm.com>
3         * ppc-dis.c (powerpc_init_dialect): Do not choose a default dialect
4         due to -many/-Many.
5         (print_insn_powerpc): Make sure we only deprecate instructions using
6         the original dialect and not a modified dialect due to -Many handling.
7         Move the handling of the condition register and default operands to
8         the end of the if/else if/else chain.
9         * ppc-opc.c (powerpc_opcodes): Reorder the opcode table so that
10         instructions from newer processors are listed before older ones.
11         <"icblce", "sync", "eieio", "tlbld">: Deprecate for processors
12         that have instructions with conflicting opcodes.
14 2009-04-01  Peter Bergner  <bergner@vnet.ibm.com>
16         * ppc-opc.c (powerpc_opcodes) <"dcbzl">: Merge the POWER4 and
17         E500MC entries.
19 2009-04-01  Christophe Lyon  <christophe.lyon@st.com>
21         * arm-dis.c (print_insn): Print BE8 opcodes in little endianness.
23 2009-03-30  Joseph Myers  <joseph@codesourcery.com>
25         * arm-dis.c (print_insn): Also check section matches in backwards
26         search for mapping symbol.
28 2009-03-26  H.J. Lu  <hongjiu.lu@intel.com>
30         * i386-dis.c (get_valid_dis386): Abort on unhandled table.
32 2009-03-18  Alan Modra  <amodra@bigpond.net.au>
34         * cgen-opc.c: Include alloca-conf.h rather than alloca.h.
35         * Makefile.am: Run "make dep-am".
36         * Makefile.in: Regenerate.
37         * openrisc-opc.c: Regenerate.
39 2009-03-10  Nick Clifton  <nickc@redhat.com>
41         * po/id.po: Updated Indonesian translation.
43 2009-03-10  Alan Modra  <amodra@bigpond.net.au>
45         * ppc-dis.c: Include "opintl.h".
46         (struct ppc_mopt, ppc_opts): New.
47         (ppc_parse_cpu): New function.
48         (powerpc_init_dialect): Use it.
49         (print_ppc_disassembler_options): Dump options from ppc_opts.
50         Internationalize message.
52 2009-03-06  Nick Clifton  <nickc@redhat.com>
54         * po/es.po: Updated Spanish translation.
56 2009-03-04  Alan Modra  <amodra@bigpond.net.au>
58         PR 6768
59         * configure.in: Test for ld --as-needed support.  Link shared
60         libopcodes against libm.
61         * configure: Regenerate.
63 2009-03-03  Peter Bergner  <bergner@vnet.ibm.com>
65         * ppc-opc.c (powerpc_opcodes): Reorder the opcode table so that
66         instructions from newer processors are listed before older ones.
68 2009-03-03  Alan Modra  <amodra@bigpond.net.au>
70         * Makefile.am: Run "make dep-am".
71         (HFILES): Move lm32-desc.h and lm32-opc.h from..
72         (CFILES): ..here.
73         * Makefile.in: Regenerate.
75 2009-03-02  Qinwei  <qinwei@sunnorth.com.cn>
77         * score7-dis.c: New file.
78         * Makefile.am: Add dependencies for score7-dis.c.
79         * Makefile.in: Regenerate.
80         * configure.in: Add score7-dis to score files.
81         * configure: Regenerate.
82         * score-dis.c: Add support for score7 architecture.
83         * score-opc.h: Likewise.
85 2009-03-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
87         * configure: Regenerate.
89 2009-02-27  H.J. Lu  <hongjiu.lu@intel.com>
91         * i386-dis.c (OP_EX): Call OP_E_memory instead of OP_E.
93 2009-02-26  Peter Bergner  <bergner@vnet.ibm.com>
95         * ppc-dis.c (powerpc_init_dialect): Extend -Mpower7 to disassemble
96         the power7 and the isel instructions.
97         * ppc-opc.c (insert_xc6, extract_xc6): New static functions.
98         (insert_dm, extract_dm): Likewise.
99         (XB6): Update comment to include XX2 form.
100         (WC, XC6, SHW, DMEX, UIM, XX2, XX3RC, XX4, XX2_MASK, XX2UIM_MASK,
101         XX2BF_MASK, XX3BF_MASK, XX3SHW_MASK, XX4_MASK, XWC_MASK, POWER7): New.
102         (RemoveXX3DM): Delete.
103         (powerpc_opcodes): <"lfdp", "lfdpx", "mcrxr", "mftb", "mffgpr",
104         "mftgpr">: Deprecate for POWER7.
105         <"fres", "fres.", "frsqrtes", "frsqrtes.", "fre", "fre.", "frsqrte",
106         "frsqrte.">: Deprecate the three operand form and enable the two
107         operand form for POWER7 and later.
108         <"wait">: Extend to accept optional parameter.  Enable for POWER7.
109         <"waitsrv", "waitimpl">: Add extended opcodes.
110         <"ldbrx", "stdbrx">: Enable for POWER7.
111         <"cdtbcd", "cbcdtd", "addg6s">: Add POWER6 opcodes.
112         <"bpermd", "dcbtstt", "dcbtt", "dcffix.", "dcffix", "divde.", "divde",
113         "divdeo.", "divdeo", "divdeu.", "divdeu", "divdeuo.", "divdeuo",
114         "divwe.", "divwe", "divweo.", "divweo", "divweu.", "divweu", "divweuo.",
115         "divweuo", "fcfids.", "fcfids", "fcfidu.", "fcfidu", "fcfidus.",
116         "fcfidus", "fctidu.", "fctidu", "fctiduz.", "fctiduz", "fctiwu.",
117         "fctiwu", "fctiwuz.", "fctiwuz", "ftdiv", "ftsqrt", "lbarx", "lfiwzx",
118         "lharx", "popcntd", "popcntw", "stbcx.", "sthcx.">: Add POWER7 opcodes.
119         <"lxsdux", "lxsdx", "lxvdsx", "lxvw4ux", "lxvw4x", "stxsdux", "stxsdx",
120         "stxvw4ux", "stxvw4x", "xsabsdp", "xsadddp", "xscmpodp", "xscmpudp",
121         "xscpsgndp", "xscvdpsp", "xscvdpsxds", "xscvdpsxws", "xscvdpuxds",
122         "xscvdpuxws", "xscvspdp", "xscvsxddp", "xscvuxddp", "xsdivdp",
123         "xsmaddadp", "xsmaddmdp", "xsmaxdp", "xsmindp", "xsmsubadp",
124         "xsmsubmdp", "xsmuldp", "xsnabsdp", "xsnegdp", "xsnmaddadp",
125         "xsnmaddmdp", "xsnmsubadp", "xsnmsubmdp", "xsrdpi", "xsrdpic",
126         "xsrdpim", "xsrdpip", "xsrdpiz", "xsredp", "xsrsqrtedp", "xssqrtdp",
127         "xssubdp", "xstdivdp", "xstsqrtdp", "xvabsdp", "xvabssp", "xvadddp",
128         "xvaddsp", "xvcmpeqdp.", "xvcmpeqdp", "xvcmpeqsp.", "xvcmpeqsp",
129         "xvcmpgedp.", "xvcmpgedp", "xvcmpgesp.", "xvcmpgesp", "xvcmpgtdp.",
130         "xvcmpgtdp", "xvcmpgtsp.", "xvcmpgtsp", "xvcpsgnsp", "xvcvdpsp",
131         "xvcvdpsxds", "xvcvdpsxws", "xvcvdpuxds", "xvcvdpuxws", "xvcvspdp",
132         "xvcvspsxds", "xvcvspsxws", "xvcvspuxds", "xvcvspuxws", "xvcvsxddp",
133         "xvcvsxdsp", "xvcvsxwdp", "xvcvsxwsp", "xvcvuxddp", "xvcvuxdsp",
134         "xvcvuxwdp", "xvcvuxwsp", "xvdivdp", "xvdivsp", "xvmaddadp",
135         "xvmaddasp", "xvmaddmdp", "xvmaddmsp", "xvmaxdp", "xvmaxsp",
136         "xvmindp", "xvminsp", "xvmovsp", "xvmsubadp", "xvmsubasp", "xvmsubmdp",
137         "xvmsubmsp", "xvmuldp", "xvmulsp", "xvnabsdp", "xvnabssp", "xvnegdp",
138         "xvnegsp", "xvnmaddadp", "xvnmaddasp", "xvnmaddmdp", "xvnmaddmsp",
139         "xvnmsubadp", "xvnmsubasp", "xvnmsubmdp", "xvnmsubmsp", "xvrdpi",
140         "xvrdpic", "xvrdpim", "xvrdpip", "xvrdpiz", "xvredp", "xvresp",
141         "xvrspi", "xvrspic", "xvrspim", "xvrspip", "xvrspiz", "xvrsqrtedp",
142         "xvrsqrtesp", "xvsqrtdp", "xvsqrtsp", "xvsubdp", "xvsubsp", "xvtdivdp",
143         "xvtdivsp", "xvtsqrtdp", "xvtsqrtsp", "xxland", "xxlandc", "xxlnor",
144         "xxlor", "xxlxor", "xxmrghw", "xxmrglw", "xxsel", "xxsldwi", "xxspltd",
145         "xxspltw", "xxswapd">: Add VSX opcodes.
147 2009-02-23  H.J. Lu  <hongjiu.lu@intel.com>
149         * i386-gen.c (operand_type_init): Remove OPERAND_TYPE_VEX_IMM4.
150         (operand_types): Remove Vex_Imm4.
152         * i386-opc.h (Vex_Imm4): Removed.
153         (OTMax): Updated.
154         (i386_operand_type): Remove vex_imm4.
156         * i386-opc.tbl: Remove Vex_Imm4 comments.
157         * i386-init.h: Regenerated.
158         * i386-tbl.h: Likewise.
160 2009-02-23  Richard Earnshaw  <rearnsha@arm.com>
162         * arm-dis.c (neon_opcodes): Correct bit-mask and patterns for
163         vq{r}shr{u}n.s64 insnstructions.
165 2009-02-19  Peter Bergner  <bergner@vnet.ibm.com>
167         * ppc-opc.c (powerpc_opcodes) <"lfdepx", "stfdepx">: Fix the first
168         operand to be a float point register (FRT/FRS).
170 2009-02-18  Adam Nemet  <anemet@caviumnetworks.com>
172         * mips-opc.c (mips_builtin_opcodes): Move the Octeon-specific
173         dmfc2 and dmtc2 before the architecture-level variants.
175 2009-02-18  Pierre Muller  <muller@ics.u-strasbg.fr>
177         * fr30-opc.c: Regenerate.
178         * frv-opc.c: Regenerate.
179         * ip2k-opc.c: Regenerate.
180         * iq2000-opc.c: Regenerate.
181         * lm32-opc.c: Regenerate.
182         * m32c-opc.c: Regenerate.
183         * m32r-opc.c: Regenerate.
184         * mep-opc.c: Regenerate.
185         * mt-opc.c: Regenerate.
186         * xc16x-opc.c: Regenerate.
187         * xstormy16-opc.c: Regenerate.
188         * tic54x-dis.c (print_instruction): Avoid compiler warning on
189         sprintf call.
191 2009-02-12  Nathan Sidwell  <nathan@codesourcery.com>
193         * m68k-opc.c (m68k_opcodes): Add stldsr instruction.
195 2009-02-05  Peter Bergner  <bergner@vnet.ibm.com>
197         * ppc-opc.c: Update copyright year.
198         (powerpc_opcodes) <"dcbt", "dcbtst">: Deprecate the Embedded operand
199         ordering for POWER4 and later and use the correct Server ordering.
201 2009-02-04  H.J. Lu  <hongjiu.lu@intel.com>
203         AVX Programming Reference (January, 2009)
204         * i386-dis.c (PREFIX_VEX_3A44): New.
205         (VEX_LEN_3A44_P_2): Likewise.
206         (PREFIX_VEX_3A48): Updated.
207         (VEX_LEN_3A4C_P_2): Likewise.
208         (prefix_table): Add PREFIX_VEX_3A44.
209         (vex_table): Likewise.
210         (vex_len_table): Add VEX_LEN_3A44_P_2.
212         * i386-opc.tbl: Add PCLMUL + AVX instructions.
213         * i386-tbl.h: Regenerated.
215 2009-02-03  Sandip Matte  <sandip@rmicorp.com>
217         * mips-dis.c (mips_cp0_names_xlr, mips_cp0sel_names_xlr): Define.
218         (mips_arch_choices): Add XLR entry.
219         * mips-opc.c (XLR): Define.
220         (mips_builtin_opcodes): Add XLR instructions.
222 2009-02-03  Carlos O'Donell  <carlos@codesourcery.com>
224         * Makefile.am: Add install-pdf target.
225         * po/Make-in: Add install-pdf target.
226         * Makefile.in: Regenerate.
228 2009-02-02  DJ Delorie  <dj@redhat.com>
230         * mep-asm.c: Regenerate.
231         * mep-desc.c: Regenerate.
232         * mep-desc.h: Regenerate.
233         * mep-dis.c: Regenerate.
234         * mep-ibld.c: Regenerate.
235         * mep-opc.c: Regenerate.
236         * mep-opc.h: Regenerate.
238 2009-01-29  Mark Mitchell  <mark@codesourcery.com>
240         * arm-dis.c (thumb32_opcodes): Correct decoding for qadd, qdadd,
241         qsub, and qdsub.
243 2009-01-28  Chao-ying Fu  <fu@mips.com>
245         * mips-opc.c (suxc1): Add the flag of FP_D.
247 2009-01-20  Alan Modra  <amodra@bigpond.net.au>
249         * fr30-asm.c, fr30-dis.c, fr30-ibld.c, frv-asm.c, frv-dis.c,
250         * frv-ibld.c, ip2k-asm.c, ip2k-dis.c, ip2k-ibld.c,
251         * iq2000-asm.c, iq2000-dis.c, iq2000-ibld.c, m32c-asm.c,
252         * m32c-dis.c, m32c-ibld.c, m32r-asm.c, m32r-dis.c,
253         * m32r-ibld.c, mep-asm.c, mep-dis.c, mep-ibld.c, mt-asm.c,
254         * mt-dis.c, mt-ibld.c, openrisc-asm.c, openrisc-dis.c,
255         * openrisc-ibld.c, xc16x-asm.c, xc16x-dis.c, xc16x-ibld.c,
256         * xstormy16-asm.c, xstormy16-dis.c, xstormy16-ibld.c: Regenerate.
258 2009-01-16  Alan Modra  <amodra@bigpond.net.au>
260         * configure.in (commonbfdlib): Delete.
261         (SHARED_LIBADD): Add pic libiberty if such is available.
262         * configure: Regenerate.
263         * po/POTFILES.in: Regenerate.
265 2009-01-14  Peter Bergner  <bergner@vnet.ibm.com>
267         * ppc-dis.c (print_insn_powerpc): Skip insn if it is deprecated.
268         * ppc-opc.c (powerpc_opcodes) <mtfsf, mtfsf.>: Deprecate the two
269         operand form and enable the four operand form for POWER6 and later.
270         <mtfsfi, mtfsfi.>: Deprecate the two operand form and enable the
271         three operand form for POWER6 and later.
273 2009-01-14  Mike Frysinger  <vapier@gentoo.org>
275         * bfin-dis.c (OUTS): Use "%s" as format string.
277 2009-01-13  H.J. Lu  <hongjiu.lu@intel.com>
279         * i386-gen.c (cpu_flag_init): Remove a white space.
280         (operand_type_init): Likewise.
282 2009-01-12  H.J. Lu  <hongjiu.lu@intel.com>
284         * i386-opc.tbl: Add NoAVX to movnti, lfence and mfence.
285         * i386-tbl.h: Regenerated.
287 2009-01-12  H.J. Lu  <hongjiu.lu@intel.com>
289         * i386-dis.c (dis386): Use EbS on addB, orB, adcB, sbbB, andB,
290         subB, xorB and cmpB.  Use EvS on addS, orS, adcS, sbbS, andS,
291         subS, xorS and cmpS.
293 2009-01-10  H.J. Lu  <hongjiu.lu@intel.com>
295         * i386-gen.c (cpu_flag_init): Replace CpuP4 and CpuK6 with
296         CpuClflush and CpuSYSCALL, respectively. Remove CpuK8.  Add
297         CPU_COREI7_FLAGS, CPU_CLFLUSH_FLAGS and CPU_SYSCALL_FLAGS.
298         (cpu_flags): Remove CpuP4, CpuK6 and CpuK8.  Add CpuClflush
299         and CpuSYSCALL.
300         (lineno): Removed.
301         (set_bitfield): Take an argument, lineno.  Don't report lineno
302         on error if it is -1.
303         (process_i386_cpu_flag): Take an argument, lineno.
304         (process_i386_opcode_modifier): Likewise.
305         (process_i386_operand_type): Likewise.
306         (output_i386_opcode): Likewise.
307         (opcode_hash_entry): Add lineno.
308         (process_i386_opcodes): Updated.
309         (process_i386_registers): Likewise.
310         (process_i386_initializers): Likewise.
312         * i386-opc.h (CpuP4): Removed.
313         (CpuK6): Likewise.
314         (CpuK8): Likewise.
315         (CpuClflush): New.
316         (CpuSYSCALL): Likewise.
317         (CpuMMX): Updated.
318         (i386_cpu_flags): Remove cpup4, cpuk6 and cpuk8.  Add
319         cpuclflush and cpusyscall.
321         * i386-opc.tbl: Update movnti, clflush, lfence, mfence, pause,
322         syscall and sysret.
323         * i386-init.h: Regenerated.
324         * i386-tbl.h: Likewise.
326 2009-01-09  H.J. Lu  <hongjiu.lu@intel.com>
328         * i386-gen.c (cpu_flag_init): Add CpuRdtscp to CPU_K8_FLAGS
329         and CPU_AMDFAM10_FLAGS.  Add CPU_RDTSCP_FLAGS.
330         (cpu_flags): Add CpuRdtscp.
331         (set_bitfield): Remove CpuSledgehammer check.
333         * i386-opc.h (CpuRdtscp): New.
334         (CpuLM): Updated.
335         (i386_cpu_flags): Add cpurdtscp.
337         * i386-opc.tbl: Replace CpuSledgehammer with CpuRdtscp.
338         * i386-init.h: Regenerated.
339         * i386-tbl.h: Likewise.
341 2009-01-09  Peter Bergner  <bergner@vnet.ibm.com>
343         * ppc-opc.c (PPCNONE): Define.
344         (NOPOWER4): Delete.
345         (powerpc_opcodes): Initialize the new "deprecated" field.
347 2009-01-06  H.J. Lu  <hongjiu.lu@intel.com>
349         AVX Programming Reference (December, 2008)
350         * i386-dis.c (VEX_LEN_2B_M_0): Removed.
351         (VEX_LEN_E7_P_2_M_0): Likewise.
352         (VEX_LEN_2C_P_1): Updated.
353         (VEX_LEN_E8_P_2): Likewise.
354         (vex_len_table): Remove VEX_LEN_2B_M_0 and VEX_LEN_E7_P_2_M_0.
355         (mod_table): Likewise.
357         * i386-opc.tbl: Add 256bit vmovntdq, vmovntpd and vmovntps.
358         * i386-tbl.h: Regenerated.
360 2009-01-05  H.J. Lu  <hongjiu.lu@intel.com>
362         * i386-gen.c (process_copyright): Update for 2009.
364         * i386-init.h: Regenerated.
365         * i386-tbl.h: Likewise.
367 2009-01-05  H.J. Lu  <hongjiu.lu@intel.com>
369         AVX Programming Reference (December, 2008)
370         * i386-dis.c (OP_VEX_FMA): Removed.
371         (OP_EX_VexW): Likewise.
372         (OP_EX_VexImmW): Likewise.
373         (OP_XMM_VexW): Likewise.
374         (VEXI4_Fixup): Likewise.
375         (VPERMIL2_Fixup): Likewise.
376         (VexI4): Likewise.
377         (VexFMA): Likewise.
378         (Vex128FMA): Likewise.
379         (EXVexW): Likewise.
380         (EXdVexW): Likewise.
381         (EXqVexW): Likewise.
382         (EXVexImmW): Likewise.
383         (XMVexW): Likewise.
384         (VPERMIL2): Likewise.
385         (PREFIX_VEX_3A48...PREFIX_VEX_3A4A): Likewise.
386         (PREFIX_VEX_3A5C...PREFIX_VEX_3A5F): Likewise.
387         (PREFIX_VEX_3A68...PREFIX_VEX_3A6F): Likewise.
388         (PREFIX_VEX_3A78...PREFIX_VEX_3A7F): Likewise.
389         (VEX_LEN_3A6A_P_2...VEX_LEN_3A6F_P_2): Likewise.
390         (VEX_LEN_3A7A_P_2...VEX_LEN_3A7F_P_2): Likewise.
391         (get_vex_imm8): Likewise.
392         (OP_EX_VexReg): Likewise.
393         vpermil2_op): Likewise.
394         (EXVexWdq): New.
395         (vex_w_dq_mode): Likewise.
396         (PREFIX_VEX_3896...PREFIX_VEX_389F): Likewise.
397         (PREFIX_VEX_38A6...PREFIX_VEX_38AF): Likewise.
398         (PREFIX_VEX_38B6...PREFIX_VEX_38BF): Likewise.
399         (es_reg): Updated.
400         (PREFIX_VEX_38DB): Likewise.
401         (PREFIX_VEX_3A4A): Likewise.
402         (PREFIX_VEX_3A60): Likewise.
403         (PREFIX_VEX_3ADF): Likewise.
404         (VEX_LEN_3ADF_P_2): Likewise.
405         (prefix_table): Remove PREFIX_VEX_3A48...PREFIX_VEX_3A4A,
406         PREFIX_VEX_3A5C...PREFIX_VEX_3A5F, 
407         PREFIX_VEX_3A68...PREFIX_VEX_3A6F and
408         PREFIX_VEX_3A78...PREFIX_VEX_3A7F.  Add
409         PREFIX_VEX_3896...PREFIX_VEX_389F,
410         PREFIX_VEX_38A6...PREFIX_VEX_38AF and
411         PREFIX_VEX_38B6...PREFIX_VEX_38BF.
412         (vex_table): Likewise.
413         (vex_len_table): Remove VEX_LEN_3A6A_P_2...VEX_LEN_3A6F_P_2
414         and VEX_LEN_3A7A_P_2...VEX_LEN_3A7F_P_2.
415         (putop): Support "%XW".
416         (intel_operand_size): Handle vex_w_dq_mode.
418         * i386-opc.h (VexNDS): Add a comment for VEX NDS and VEX DDS.
420         * i386-opc.tbl: Remove vpermil2pd/vpermil2ps and old FMA
421         instructions.  Add new FMA instructions.
422         * i386-tbl.h: Regenerated.
424 2009-01-02  Matthias Klose  <doko@ubuntu.com> 
426         * or32-opc.c (or32_print_register, or32_print_immediate, 
427         disassemble_insn): Don't rely on undefined sprintf behaviour. 
429 For older changes see ChangeLog-2008
431 Local Variables:
432 mode: change-log
433 left-margin: 8
434 fill-column: 74
435 version-control: never
436 End: