* Makefile.am (mips-opc.lo): Add rules to create automatic
[external/binutils.git] / opcodes / ChangeLog
1 2013-06-17  Alan Modra  <amodra@gmail.com>
2
3         * Makefile.am (mips-opc.lo): Add rules to create automatic
4         dependency files.  Pass archdefs.
5         (micromips-opc.lo, mips16-opc.lo): Likewise.
6         * Makefile.in: Regenerate.
7
8 2013-06-14  DJ Delorie  <dj@redhat.com>
9
10         * rx-decode.opc (rx_decode_opcode): Bit operations on
11         registers are 32-bit operations, not 8-bit operations.
12         * rx-decode.c: Regenerate.
13
14 2013-06-13  Chao-ying Fu  <Chao-ying.Fu@imgtec.com>
15
16         * micromips-opc.c (IVIRT): New define.
17         (IVIRT64): New define.
18         (micromips_opcodes): Add dmfgc0, dmtgc0, hypcall, mfgc0, mtgc0,
19         tlbginv, tlbginvf, tlbgp, tlbgr, tlbgwi, tlbgwr VIRT instructions.
20
21         * mips-dis.c (print_insn_micromips): Handle mfgc0, mtgc0, dmfgc0,
22         dmtgc0 to print cp0 names.
23
24 2013-06-09  Sandra Loosemore  <sandra@codesourcery.com>
25
26         * nios2-opc.c (nios2_builtin_opcodes): Give "trap" a type-"b"
27         argument.
28
29 2013-06-08  Catherine Moore  <clm@codesourcery.com>
30             Richard Sandiford  <rdsandiford@googlemail.com>
31
32         * micromips-opc.c (D32, D33, MC): Update definitions.
33         (micromips_opcodes):  Initialize ase field.
34         * mips-dis.c (mips_arch_choice): Add ase field.
35         (mips_arch_choices): Initialize ase field.
36         (set_default_mips_dis_options): Declare and setup mips_ase.
37         * mips-opc.c (M3D, SMT, MX, IVIRT, IVIRT64, D32, D33, D64,
38         MT32, MC): Update definitions.
39         (mips_builtin_opcodes): Initialize ase field.
40
41 2013-05-24  Richard Sandiford  <rsandifo@linux.vnet.ibm.com>
42
43         * s390-opc.txt (flogr): Require a register pair destination.
44
45 2013-05-23  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
46
47         * s390-opc.c: Fix length operand in RSL_LRDFU and RSL_LRDFEU
48         instruction format.
49
50 2013-05-22  Jürgen Urban  <JuergenUrban@gmx.de>
51
52         * mips-opc.c (mips_builtin_opcodes): Add R5900 VU0 instructions.
53
54 2013-05-20  Peter Bergner <bergner@vnet.ibm.com>
55
56         * ppc-dis.c (powerpc_init_dialect): Set default dialect to power8.
57         * ppc-opc.c (BHRBE, ST, SIX, PS, SXL, VXPS_MASK, XX1RB_MASK,
58         XLS_MASK, PPCVSX2): New defines.
59         (powerpc_opcodes) <bcdadd., bcdsub., bctar, bctar, bctarl, clrbhrb,
60         fmrgew, fmrgow, lqarx, lxsiwax, lxsiwzx, lxsspx, mfbhrbe,
61         mffprd, mffprwz, mfvrd, mfvrwz, mfvsrd, mfvsrwz, msgclrp, msgsndp,
62         mtfprd, mtfprwa, mtfprwz, mtsle, mtvrd, mtvrwa, mtvrwz, mtvsrd,
63         mtvsrwa, mtvsrwz, pbt., rfebb, stqcx., stxsiwx, stxsspx,
64         vaddcuq, vaddecuq, vaddeuqm, vaddudm, vadduqm, vbpermq, vcipher,
65         vcipherlast, vclzb, vclzd, vclzh, vclzw, vcmpequd, vcmpequd.,
66         vcmpgtsd, vcmpgtsd., vcmpgtud, vcmpgtud., veqv, vgbbd, vmaxsd,
67         vmaxud, vminsd, vminud, vmrgew, vmrgow, vmulesw, vmuleuw, vmulosw,
68         vmulouw, vmuluwm, vnand, vncipher, vncipherlast, vorc, vpermxor,
69         vpksdss, vpksdus, vpkudum, vpkudus, vpmsumb, vpmsumd, vpmsumh,
70         vpmsumw, vpopcntb, vpopcntd, vpopcnth, vpopcntw, vrld, vsbox,
71         vshasigmad, vshasigmaw, vsld, vsrad, vsrd, vsubcuq, vsubecuq,
72         vsubeuqm, vsubudm, vsubuqm, vupkhsw, vupklsw, waitasec, xsaddsp,
73         xscvdpspn, xscvspdpn, xscvsxdsp, xscvuxdsp, xsdivsp, xsmaddasp,
74         xsmaddmsp, xsmsubasp, xsmsubmsp, xsmulsp, xsnmaddasp, xsnmaddmsp,
75         xsnmsubasp, xsnmsubmsp, xsresp, xsrsp, xsrsqrtesp, xssqrtsp,
76         xssubsp, xxleqv, xxlnand, xxlorc>: New instructions.
77         <lxvx, stxvx>: New extended mnemonics.
78
79 2013-05-17  Alan Modra  <amodra@gmail.com>
80
81         * ia64-raw.tbl: Replace non-ASCII char.
82         * ia64-waw.tbl: Likewise.
83         * ia64-asmtab.c: Regenerate.
84
85 2013-05-15  Saravanan Ekanathan <saravanan.ekanathan@amd.com>
86
87         * i386-gen.c (cpu_flag_init): Add CpuFSGSBase in CPU_BDVER3_FLAGS.
88         * i386-init.h: Regenerated.
89
90 2013-05-13  Yufeng Zhang  <yufeng.zhang@arm.com>
91
92         * aarch64-asm.c (aarch64_ins_advsimd_imm_modified): Remove assertion.
93         * aarch64-opc.c (operand_general_constraint_met_p): Relax the range
94         check from [0, 255] to [-128, 255].
95
96 2013-05-09  Andrew Pinski  <apinski@cavium.com>
97
98         * mips-dis.c (mips_arch_choices): Add INSN_VIRT to mips32r2.
99         Add INSN_VIRT and INSN_VIRT64 to mips64r2.
100         (parse_mips_dis_option): Handle the virt option.
101         (print_insn_args): Handle "+J".
102         (print_mips_disassembler_options): Print out message about virt64.
103         * mips-opc.c (IVIRT): New define.
104         (IVIRT64): New define.
105         (mips_builtin_opcodes): Add dmfgc0, dmtgc0, hypcall, mfgc0, mtgc0,
106         tlbgr, tlbgwi, tlbginv, tlbginvf, tlbgwr, tlbgp VIRT instructions.
107         Move rfe to the bottom as it conflicts with tlbgp.
108
109 2013-05-09  Alan Modra  <amodra@gmail.com>
110
111         * ppc-opc.c (extract_vlesi): Properly sign extend.
112         (extract_vlensi): Likewise.  Comment reason for setting invalid.
113
114 2013-05-02  Nick Clifton  <nickc@redhat.com>
115
116         * msp430-dis.c: Add support for MSP430X instructions.
117
118 2013-04-24  Sandra Loosemore  <sandra@codesourcery.com>
119
120         * nios2-opc.c (nios2_builtin_reg): Rename "fstatus" control register
121         to "eccinj".
122
123 2013-04-17  Wei-chen Wang  <cole945@gmail.com>
124
125         PR binutils/15369
126         * cgen-dis.c (hash_insn_array): Use CGEN_CPU_INSN_ENDIAN instead
127         of CGEN_CPU_ENDIAN.
128         (hash_insns_list): Likewise.
129
130 2013-04-10  Jan Kratochvil  <jan.kratochvil@redhat.com>
131
132         * rl78-dis.c (print_insn_rl78): Use alternative form as a GCC false
133         warning workaround.
134
135 2013-04-08  Jan Beulich <jbeulich@suse.com>
136
137         * i386-opc.tbl: Fold 64-bit and non-64-bit jecxz entries.
138         * i386-tbl.h: Re-generate.
139
140 2013-04-06  David S. Miller  <davem@davemloft.net>
141
142         * sparc-dis.c (compare_opcodes): When encountering multiple aliases
143         of an opcode, prefer the one with F_PREFERRED set.
144         * sparc-opc.c (sparc_opcodes): Add ldtw, ldtwa, sttw, sttwa,
145         lzcnt, flush with '[address]' syntax, and missing cbcond pseudo
146         ops.  Make 64-bit VIS logical ops have "d" suffix in their names,
147         mark existing mnenomics as aliases.  Add "cc" suffix to edge
148         instructions generating condition codes, mark existing mnenomics
149         as aliases.  Add "fp" prefix to VIS compare instructions, mark
150         existing mnenomics as aliases.
151
152 2013-04-03  Nick Clifton  <nickc@redhat.com>
153
154         * v850-dis.c (print_value): With V850_INVERSE_PCREL compute the
155         destination address by subtracting the operand from the current
156         address.
157         * v850-opc.c (insert_u16_loop): Disallow negative offsets.  Store
158         a positive value in the insn.
159         (extract_u16_loop): Do not negate the returned value.
160         (D16_LOOP): Add V850_INVERSE_PCREL flag.
161
162         (ceilf.sw): Remove duplicate entry.
163         (cvtf.hs): New entry.
164         (cvtf.sh): Likewise.
165         (fmaf.s): Likewise.
166         (fmsf.s): Likewise.
167         (fnmaf.s): Likewise.
168         (fnmsf.s): Likewise.
169         (maddf.s): Restrict to E3V5 architectures.
170         (msubf.s): Likewise.
171         (nmaddf.s): Likewise.
172         (nmsubf.s): Likewise.
173
174 2013-03-27  H.J. Lu  <hongjiu.lu@intel.com>
175
176         * i386-dis.c (get_sib): Add the sizeflag argument.  Properly
177         check address mode.
178         (print_insn): Pass sizeflag to get_sib.
179
180 2013-03-27  Alexis Deruelle  <alexis.deruelle@gmail.com>
181
182         PR binutils/15068
183         * tic6x-dis.c: Add support for displaying 16-bit insns.
184
185 2013-03-20  Alexis Deruelle  <alexis.deruelle@gmail.com>
186
187         PR gas/15095
188         * tic6x-dis.c (print_insn_tic6x): Decode opcodes that have
189         individual msb and lsb halves in src1 & src2 fields.  Discard the
190         src1 (lsb) value and only use src2 (msb), discarding bit 0, to
191         follow what Ti SDK does in that case as any value in the src1
192         field yields the same output with SDK disassembler.
193
194 2013-03-12  Michael Eager <eager@eagercon.com>
195
196         * opcodes/mips-dis.c (print_insn_args): Modify def of reg.
197
198 2013-03-11  Sebastian Huber <sebastian.huber@embedded-brains.de>
199
200         * nios2-opc.c (nios2_builtin_opcodes): Add entry for wrprs.
201
202 2013-03-11  Sebastian Huber <sebastian.huber@embedded-brains.de>
203
204         * nios2-opc.c (nios2_builtin_opcodes): Add entry for rdprs.
205
206 2013-03-11  Sebastian Huber <sebastian.huber@embedded-brains.de>
207
208         * nios2-opc.c (nios2_builtin_regs): Add sstatus alias for ba register.
209
210 2013-03-11  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
211
212         * arm-dis.c (arm_opcodes): Add entries for CRC instructions.
213         (thumb32_opcodes): Likewise.
214         (print_insn_thumb32): Handle 'S' control char.
215
216 2013-03-08  Yann Sionneau  <yann.sionneau@gmail.com>
217
218         * lm32-desc.c: Regenerate.
219
220 2013-03-01  H.J. Lu  <hongjiu.lu@intel.com>
221
222         * i386-reg.tbl (riz): Add RegRex64.
223         * i386-tbl.h: Regenerated.
224
225 2013-02-28  Yufeng Zhang  <yufeng.zhang@arm.com>
226
227         * aarch64-tbl.h (QL_I3SAMEW, QL_I3WWX): New macros.
228         (aarch64_feature_crc): New static.
229         (CRC): New macro.
230         (aarch64_opcode_table): Add entries for the crc32b, crc32h, crc32w,
231         crc32x, crc32cb, crc32ch, crc32cw and crc32cx instructions.
232         * aarch64-asm-2.c: Re-generate.
233         * aarch64-dis-2.c: Ditto.
234         * aarch64-opc-2.c: Ditto.
235
236 2013-02-27  Alan Modra  <amodra@gmail.com>
237
238         * rl78-decode.opc (rl78_decode_opcode): Fix typo.
239         * rl78-decode.c: Regenerate.
240
241 2013-02-25  Kaushik Phatak  <Kaushik.Phatak@kpitcummins.com>
242
243         * rl78-decode.opc: Fix encoding of DIVWU insn.
244         * rl78-decode.c: Regenerate.
245
246 2013-02-19  H.J. Lu  <hongjiu.lu@intel.com>
247
248         PR gas/15159
249         * i386-dis.c (rm_table): Add clac and stac to RM_0F01_REG_1.
250
251         * i386-gen.c (cpu_flag_init): Add CPU_SMAP_FLAGS.
252         (cpu_flags): Add CpuSMAP.
253
254         * i386-opc.h (CpuSMAP): New.
255         (i386_cpu_flags): Add cpusmap.
256
257         * i386-opc.tbl: Add clac and stac.
258
259         * i386-init.h: Regenerated.
260         * i386-tbl.h: Likewise.
261
262 2013-02-15  Markos Chandras  <markos.chandras@imgtec.com>
263
264         * metag-dis.c: Initialize outf->bytes_per_chunk to 4
265         which also makes the disassembler output be in little
266         endian like it should be.
267
268 2013-02-14  Yufeng Zhang  <yufeng.zhang@arm.com>
269
270         * aarch64-opc.c (aarch64_prfops): Change unnamed operation 'name'
271         fields to NULL.
272         (aarch64_print_operand): Adjust the printing for AARCH64_OPND_PRFOP.
273
274 2013-02-13  Maciej W. Rozycki  <macro@codesourcery.com>
275
276         * mips-dis.c (is_compressed_mode_p): Only match symbols from the
277         section disassembled.
278
279 2013-02-11  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
280
281         * arm-dis.c: Update strht pattern.
282
283 2013-02-09  Jürgen Urban  <JuergenUrban@gmx.de>
284
285         * mips-opc.c (mips_builtin_opcodes): Enable l.d and s.d macros for
286         single-float.  Disable ll, lld, sc and scd for EE.  Disable the
287         trunc.w.s macro for EE.
288
289 2013-02-06  Sandra Loosemore  <sandra@codesourcery.com>
290             Andrew Jenner <andrew@codesourcery.com>
291
292         Based on patches from Altera Corporation.
293
294         * Makefile.am (TARGET_LIBOPCODES_CFILES): Add nios2-dis.c and
295         nios2-opc.c.
296         * Makefile.in: Regenerated.
297         * configure.in: Add case for bfd_nios2_arch.
298         * configure: Regenerated.
299         * disassemble.c (ARCH_nios2): Define.
300         (disassembler): Add case for bfd_arch_nios2.
301         * nios2-dis.c: New file.
302         * nios2-opc.c: New file.
303
304 2013-02-04  Alan Modra  <amodra@gmail.com>
305
306         * po/POTFILES.in: Regenerate.
307         * rl78-decode.c: Regenerate.
308         * rx-decode.c: Regenerate.
309
310 2013-01-30  Yufeng Zhang  <yufeng.zhang@arm.com>
311
312         * aarch64-tbl.h (aarch64_opcode_table): Flag sshll, sshll2, ushll and
313         ushll2 with F_HAS_ALIAS.  Add entries for sxtl, sxtl2, uxtl and uxtl2.
314         * aarch64-asm.c (convert_xtl_to_shll): New function.
315         (convert_to_real): Handle OP_SXTL, OP_SXTL2, OP_UXTL and OP_UXTL2 by
316         calling convert_xtl_to_shll.
317         * aarch64-dis.c (convert_shll_to_xtl): New function.
318         (convert_to_alias): Handle OP_SXTL, OP_SXTL2, OP_UXTL and OP_UXTL2 by
319         calling convert_shll_to_xtl.
320         * aarch64-gen.c: Update copyright year.
321         * aarch64-asm-2.c: Re-generate.
322         * aarch64-dis-2.c: Re-generate.
323         * aarch64-opc-2.c: Re-generate.
324
325 2013-01-24  Nick Clifton  <nickc@redhat.com>
326
327         * v850-dis.c: Add support for e3v5 architecture.
328         * v850-opc.c: Likewise.
329
330 2013-01-17  Yufeng Zhang  <yufeng.zhang@arm.com>
331
332         * aarch64-asm.c (aarch64_ins_advsimd_imm_modified): Handle 8-bit MOVI.
333         * aarch64-dis.c (aarch64_ext_advsimd_imm_modified): Likewise.
334         * aarch64-opc.c (operand_general_constraint_met_p): For
335         AARCH64_MOD_LSL, move the range check on the shift amount before the
336         alignment check; change to call set_sft_amount_out_of_range_error
337         instead of set_imm_out_of_range_error.
338         * aarch64-tbl.h (QL_SIMD_IMM_B): Replace NIL with LSL.
339         (aarch64_opcode_table): Remove the OP enumerator from the asimdimm
340         8-bit MOVI entry; change the 2nd operand from SIMD_IMM to
341         SIMD_IMM_SFT.
342
343 2013-01-16  H.J. Lu  <hongjiu.lu@intel.com>
344
345         * i386-gen.c (operand_type_init): Add OPERAND_TYPE_IMM32_64.
346
347         * i386-init.h: Regenerated.
348         * i386-tbl.h: Likewise.
349
350 2013-01-15  Nick Clifton  <nickc@redhat.com>
351
352         * v850-dis.c (get_operand_value): Sign extend V850E_IMMEDIATE
353         values.
354         * v850-opc.c (IMM16LO): Add V850_OPERAND_SIGNED attribute.
355
356 2013-01-14  Will Newton <will.newton@imgtec.com>
357
358         * metag-dis.c (REG_WIDTH): Increase to 64.
359
360 2013-01-10  Peter Bergner <bergner@vnet.ibm.com>
361
362         * ppc-dis.c (ppc_opts): Add "power8", "pwr8" and "htm" entries.
363         * ppc-opc.c (HTM_R, HTM_SI, XRTRB_MASK, XRTRARB_MASK, XRTLRARB_MASK,
364         XRTARARB_MASK, XRTBFRARB_MASK, XRCL, POWER8, PPCHTM): New defines.
365         (SH6): Update.
366         <"tabort.", "tabortdc.", "tabortdci.", "tabortwc.",
367         "tabortwci.", "tbegin.", "tcheck", "tend.", "trechkpt.",
368         "treclaim.", "tsr.">: Add POWER8 HTM opcodes.
369         <"tendall.", "tresume.", "tsuspend.">: Add POWER8 HTM extended opcodes.
370
371 2013-01-10  Will Newton <will.newton@imgtec.com>
372
373         * Makefile.am: Add Meta.
374         * configure.in: Add Meta.
375         * disassemble.c: Add Meta support.
376         * metag-dis.c: New file.
377         * Makefile.in: Regenerate.
378         * configure: Regenerate.
379
380 2013-01-07  Kaushik Phatak  <kaushik.phatak@kpitcummins.com>
381
382         * cr16-dis.c (make_instruction): Rename to cr16_make_instruction.
383         (match_opcode): Rename to cr16_match_opcode.
384
385 2013-01-04  Juergen Urban <JuergenUrban@gmx.de>
386
387         * mips-dis.c: Add names for CP0 registers of r5900.
388         * mips-opc.c: Add M_SQ_AB and M_LQ_AB to support larger range for
389         instructions sq and lq.
390         Add support for MIPS r5900 CPU.
391         Add support for 128 bit MMI (Multimedia Instructions).
392         Add support for EE instructions (Emotion Engine).
393         Disable unsupported floating point instructions (64 bit and
394         undefined compare operations).
395         Enable instructions of MIPS ISA IV which are supported by r5900.
396         Disable 64 bit co processor instructions.
397         Disable 64 bit multiplication and division instructions.
398         Disable instructions for co-processor 2 and 3, because these are
399         not supported (preparation for later VU0 support (Vector Unit)).
400         Disable cvt.w.s because this behaves like trunc.w.s and the
401         correct execution can't be ensured on r5900.
402         Add trunc.w.s using the opcode encoding of cvt.w.s on r5900. This
403         will confuse less developers and compilers.
404
405 2013-01-04  Yufeng Zhang  <yufeng.zhang@arm.com>
406
407         * aarch64-opc.c (aarch64_print_operand): Change to print
408         AARCH64_OPND_IMM_MOV in hexadecimal in the instruction and in decimal
409         in comment.
410         * aarch64-tbl.h (aarch64_opcode_table): Remove the 'F_PSEUDO' flag
411         from the opcode entries of OP_MOV_IMM_LOG, OP_MOV_IMM_WIDEN and
412         OP_MOV_IMM_WIDE.
413
414 2013-01-04  Yufeng Zhang  <yufeng.zhang@arm.com>
415
416         * aarch64-opc.c (aarch64_prfops): Update to support PLIL1KEEP,
417         PLIL1STRM, PLIL2KEEP, PLIL2STRM, PLIL3KEEP and PLIL3STRM.
418
419 2013-01-02  H.J. Lu  <hongjiu.lu@intel.com>
420
421         * i386-gen.c (process_copyright): Update copyright year to 2013.
422
423 2013-01-02  Kaushik Phatak  <kaushik.phatak@kpitcummins.com>
424
425         * cr16-dis.c (match_opcode,make_instruction): Remove static
426         declaration.
427         (dwordU,wordU): Moved typedefs to opcode/cr16.h
428         (cr16_words,cr16_allWords,cr16_currInsn): Added prefix 'cr16_'.
429
430 For older changes see ChangeLog-2012
431 \f
432 Copyright (C) 2013 Free Software Foundation, Inc.
433
434 Copying and distribution of this file, with or without modification,
435 are permitted in any medium without royalty provided the copyright
436 notice and this notice are preserved.
437
438 Local Variables:
439 mode: change-log
440 left-margin: 8
441 fill-column: 74
442 version-control: never
443 End: