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