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