opcodes/
[external/binutils.git] / opcodes / ChangeLog
1 2009-04-02  Peter Bergner  <bergner@vnet.ibm.com>
2
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.
13
14 2009-04-01  Peter Bergner  <bergner@vnet.ibm.com>
15
16         * ppc-opc.c (powerpc_opcodes) <"dcbzl">: Merge the POWER4 and
17         E500MC entries.
18
19 2009-04-01  Christophe Lyon  <christophe.lyon@st.com>
20
21         * arm-dis.c (print_insn): Print BE8 opcodes in little endianness.
22
23 2009-03-30  Joseph Myers  <joseph@codesourcery.com>
24
25         * arm-dis.c (print_insn): Also check section matches in backwards
26         search for mapping symbol.
27
28 2009-03-26  H.J. Lu  <hongjiu.lu@intel.com>
29
30         * i386-dis.c (get_valid_dis386): Abort on unhandled table.
31
32 2009-03-18  Alan Modra  <amodra@bigpond.net.au>
33
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.
38
39 2009-03-10  Nick Clifton  <nickc@redhat.com>
40
41         * po/id.po: Updated Indonesian translation.
42
43 2009-03-10  Alan Modra  <amodra@bigpond.net.au>
44
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.
51
52 2009-03-06  Nick Clifton  <nickc@redhat.com>
53
54         * po/es.po: Updated Spanish translation.
55
56 2009-03-04  Alan Modra  <amodra@bigpond.net.au>
57
58         PR 6768
59         * configure.in: Test for ld --as-needed support.  Link shared
60         libopcodes against libm.
61         * configure: Regenerate.
62
63 2009-03-03  Peter Bergner  <bergner@vnet.ibm.com>
64
65         * ppc-opc.c (powerpc_opcodes): Reorder the opcode table so that
66         instructions from newer processors are listed before older ones.
67
68 2009-03-03  Alan Modra  <amodra@bigpond.net.au>
69
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.
74
75 2009-03-02  Qinwei  <qinwei@sunnorth.com.cn>
76
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.
84
85 2009-03-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
86
87         * configure: Regenerate.
88
89 2009-02-27  H.J. Lu  <hongjiu.lu@intel.com>
90
91         * i386-dis.c (OP_EX): Call OP_E_memory instead of OP_E.
92
93 2009-02-26  Peter Bergner  <bergner@vnet.ibm.com>
94
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.
146
147 2009-02-23  H.J. Lu  <hongjiu.lu@intel.com>
148
149         * i386-gen.c (operand_type_init): Remove OPERAND_TYPE_VEX_IMM4.
150         (operand_types): Remove Vex_Imm4.
151
152         * i386-opc.h (Vex_Imm4): Removed.
153         (OTMax): Updated.
154         (i386_operand_type): Remove vex_imm4.
155
156         * i386-opc.tbl: Remove Vex_Imm4 comments.
157         * i386-init.h: Regenerated.
158         * i386-tbl.h: Likewise.
159
160 2009-02-23  Richard Earnshaw  <rearnsha@arm.com>
161
162         * arm-dis.c (neon_opcodes): Correct bit-mask and patterns for
163         vq{r}shr{u}n.s64 insnstructions.
164
165 2009-02-19  Peter Bergner  <bergner@vnet.ibm.com>
166
167         * ppc-opc.c (powerpc_opcodes) <"lfdepx", "stfdepx">: Fix the first
168         operand to be a float point register (FRT/FRS).
169
170 2009-02-18  Adam Nemet  <anemet@caviumnetworks.com>
171
172         * mips-opc.c (mips_builtin_opcodes): Move the Octeon-specific
173         dmfc2 and dmtc2 before the architecture-level variants.
174
175 2009-02-18  Pierre Muller  <muller@ics.u-strasbg.fr>
176
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.
190
191 2009-02-12  Nathan Sidwell  <nathan@codesourcery.com>
192
193         * m68k-opc.c (m68k_opcodes): Add stldsr instruction.
194
195 2009-02-05  Peter Bergner  <bergner@vnet.ibm.com>
196
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.
200
201 2009-02-04  H.J. Lu  <hongjiu.lu@intel.com>
202
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.
211
212         * i386-opc.tbl: Add PCLMUL + AVX instructions.
213         * i386-tbl.h: Regenerated.
214
215 2009-02-03  Sandip Matte  <sandip@rmicorp.com>
216
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.
221
222 2009-02-03  Carlos O'Donell  <carlos@codesourcery.com>
223
224         * Makefile.am: Add install-pdf target.
225         * po/Make-in: Add install-pdf target.
226         * Makefile.in: Regenerate.
227
228 2009-02-02  DJ Delorie  <dj@redhat.com>
229
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.
237
238 2009-01-29  Mark Mitchell  <mark@codesourcery.com>
239
240         * arm-dis.c (thumb32_opcodes): Correct decoding for qadd, qdadd,
241         qsub, and qdsub.
242
243 2009-01-28  Chao-ying Fu  <fu@mips.com>
244
245         * mips-opc.c (suxc1): Add the flag of FP_D.
246
247 2009-01-20  Alan Modra  <amodra@bigpond.net.au>
248
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.
257
258 2009-01-16  Alan Modra  <amodra@bigpond.net.au>
259
260         * configure.in (commonbfdlib): Delete.
261         (SHARED_LIBADD): Add pic libiberty if such is available.
262         * configure: Regenerate.
263         * po/POTFILES.in: Regenerate.
264
265 2009-01-14  Peter Bergner  <bergner@vnet.ibm.com>
266
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.
272
273 2009-01-14  Mike Frysinger  <vapier@gentoo.org>
274
275         * bfin-dis.c (OUTS): Use "%s" as format string.
276
277 2009-01-13  H.J. Lu  <hongjiu.lu@intel.com>
278
279         * i386-gen.c (cpu_flag_init): Remove a white space.
280         (operand_type_init): Likewise.
281
282 2009-01-12  H.J. Lu  <hongjiu.lu@intel.com>
283
284         * i386-opc.tbl: Add NoAVX to movnti, lfence and mfence.
285         * i386-tbl.h: Regenerated.
286
287 2009-01-12  H.J. Lu  <hongjiu.lu@intel.com>
288
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.
292
293 2009-01-10  H.J. Lu  <hongjiu.lu@intel.com>
294
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.
311
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.
320
321         * i386-opc.tbl: Update movnti, clflush, lfence, mfence, pause,
322         syscall and sysret.
323         * i386-init.h: Regenerated.
324         * i386-tbl.h: Likewise.
325
326 2009-01-09  H.J. Lu  <hongjiu.lu@intel.com>
327
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.
332
333         * i386-opc.h (CpuRdtscp): New.
334         (CpuLM): Updated.
335         (i386_cpu_flags): Add cpurdtscp.
336
337         * i386-opc.tbl: Replace CpuSledgehammer with CpuRdtscp.
338         * i386-init.h: Regenerated.
339         * i386-tbl.h: Likewise.
340
341 2009-01-09  Peter Bergner  <bergner@vnet.ibm.com>
342
343         * ppc-opc.c (PPCNONE): Define.
344         (NOPOWER4): Delete.
345         (powerpc_opcodes): Initialize the new "deprecated" field.
346
347 2009-01-06  H.J. Lu  <hongjiu.lu@intel.com>
348
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.
356
357         * i386-opc.tbl: Add 256bit vmovntdq, vmovntpd and vmovntps.
358         * i386-tbl.h: Regenerated.
359
360 2009-01-05  H.J. Lu  <hongjiu.lu@intel.com>
361
362         * i386-gen.c (process_copyright): Update for 2009.
363
364         * i386-init.h: Regenerated.
365         * i386-tbl.h: Likewise.
366
367 2009-01-05  H.J. Lu  <hongjiu.lu@intel.com>
368
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.
417
418         * i386-opc.h (VexNDS): Add a comment for VEX NDS and VEX DDS.
419
420         * i386-opc.tbl: Remove vpermil2pd/vpermil2ps and old FMA
421         instructions.  Add new FMA instructions.
422         * i386-tbl.h: Regenerated.
423
424 2009-01-02  Matthias Klose  <doko@ubuntu.com> 
425
426         * or32-opc.c (or32_print_register, or32_print_immediate, 
427         disassemble_insn): Don't rely on undefined sprintf behaviour. 
428
429 For older changes see ChangeLog-2008
430 \f
431 Local Variables:
432 mode: change-log
433 left-margin: 8
434 fill-column: 74
435 version-control: never
436 End: