binutils/
[binutils.git] / opcodes / ChangeLog
blob01d4cd40d717b48e333aa7be2aeea7f7915401bf
1 2007-05-18  Alan Modra  <amodra@bigpond.net.au>
3         * ppc-dis.c (print_insn_powerpc): Don't skip all operands
4         after setting skip_optional.
6 2007-05-16  Peter Bergner  <bergner@vnet.ibm.com>
8         * ppc-dis.c (operand_value_powerpc, skip_optional_operands): New.
9         (print_insn_powerpc): Use the new operand_value_powerpc and
10         skip_optional_operands functions to omit or print all optional
11         operands as a group.
12         * ppc-opc.c (BFF, W, XFL_L, XWRA_MASK): New.
13         (XFL_MASK): Delete L and W bits from the mask.
14         (mtfsfi, mtfsfi.): Replace use of BF with BFF.  Relpace use of XRA_MASK
15         with XWRA_MASK.  Use W.
16         (mtfsf, mtfsf.): Use XFL_L and W.
18 2007-05-14  H.J. Lu  <hongjiu.lu@intel.com>
20         PR binutils/4502
21         * i386-dis.c (Suffix3DNow): Replace "pfmulhrw" with "pmulhrw".
23 2007-05-10  H.J. Lu  <hongjiu.lu@intel.com>
25         * i386-opc.h (ShortForm): Redefined.
26         (Jump): Likewise.
27         (JumpDword): Likewise.
28         (JumpByte): Likewise.
29         (JumpInterSegment): Likewise.
30         (FloatMF): Likewise.
31         (FloatR): Likewise.
32         (FloatD): Likewise.
33         (Size16): Likewise.
34         (Size32): Likewise.
35         (Size64): Likewise.
36         (IgnoreSize): Likewise.
37         (DefaultSize): Likewise.
38         (No_bSuf): Likewise.
39         (No_wSuf): Likewise.
40         (No_lSuf): Likewise.
41         (No_sSuf): Likewise.
42         (No_qSuf): Likewise.
43         (No_xSuf): Likewise.
44         (FWait): Likewise.
45         (IsString): Likewise.
46         (regKludge): Likewise.
47         (IsPrefix): Likewise.
48         (ImmExt): Likewise.
49         (NoRex64): Likewise.
50         (Rex64): Likewise.
51         (Ugh): Likewise.
53 2007-05-07  H.J. Lu  <hongjiu.lu@intel.com>
55         * i386-dis.c (threebyte_0x38_uses_DATA_prefix): Correct entries
56         for some SSE4 instructions.
57         (threebyte_0x3a_uses_DATA_prefix): Likewise.
59 2007-05-03  H.J. Lu  <hongjiu.lu@intel.com>
61         * i386-dis.c (CRC32_Fixup): Don't print suffix in Intel mode.
63         * i386-opc.c (i386_optab): Remove IgnoreSize and correct operand
64         type for crc32.
66 2007-05-01  H.J. Lu  <hongjiu.lu@intel.com>
68         * i386-dis.c (CRC32_Fixup): Properly handle Intel mode and
69         check data size prefix in 16bit mode.
71         * i386-opc.c (i386_optab): Default crc32 to non-8bit and
72         support Intel mode.
74 2007-04-30  Mark Salter  <msalter@redhat.com>
76         * frv-desc.c: Regenerate.
77         * frv-desc.h: Regenerate.
79 2007-04-30  Alan Modra  <amodra@bigpond.net.au>
81         PR 4436
82         * ppc-opc.c (powerpc_operands): Correct bitm for second entry of MBE.
84 2007-04-27  H.J. Lu  <hongjiu.lu@intel.com>
86         * i386-dis.c (modrm): Put reg before rm.
88 2007-04-26  H.J. Lu  <hongjiu.lu@intel.com>
90         PR binutils/4430
91         * i386-dis.c (print_displacement): New.
92         (OP_E): Call print_displacement instead of print_operand_value
93         to output displacement when either base or index exist.  Print
94         the explicit zero displacement in 16bit mode.
96 2007-04-26  H.J. Lu  <hongjiu.lu@intel.com>
98         PR binutils/4429
99         * i386-dis.c (print_insn): Also swap the order of op_riprel
100         when swapping op_index.  Break when the RIP relative address
101         is printed.
102         (OP_E): Properly handle RIP relative addressing and print the
103         explicit zero displacement for Intel mode.
105 2007-04-27  Alan Modra  <amodra@bigpond.net.au>
107         * Makefile.am: Run "make dep-am".
108         * Makefile.in: Regenerate.
109         * ns32k-dis.c: Include sysdep.h first.
111 2007-04-24  Andreas Krebbel  <krebbel1@de.ibm.com>
113         * opcodes/s390-opc.c (MASK_SSF_RRDRD): Fourth nybble belongs to the
114         opcode.
115         * opcodes/s390-opc.txt (pfpo, ectg, csst): Add new z9-ec instructions.
117 2007-04-24  Nick Clifton  <nickc@redhat.com>
119         * arm-dis.c (print_insn): Initialise type.
121 2007-04-24  Alan Modra  <amodra@bigpond.net.au>
123         * cgen-types.h: Include bfd_stdint.h, not stdint.h.
124         * Makefile.am: Run "make dep-am".
125         * Makefile.in: Regenerate.
127 2007-04-23  Nathan Sidwell  <nathan@codesourcery.com>
129         * m68k-opc.c: Mark mcfisa_c instructions.
131 2007-04-21  Richard Earnshaw  <rearnsha@arm.com>
133         * arm-dis.c (arm_opcodes): Disassemble to unified syntax.
134         (thumb_opcodes): Add missing white space in adr.
135         (arm_decode_shift): New parameter, print_shift.  Only decode the
136         shift parameter if set.  Adjust callers.
137         (print_insn_arm): Support for operand type q with no shift decode.
139 2007-04-21  Alan Modra  <amodra@bigpond.net.au>
141         * i386-opc.c (i386_float_regtab, i386_float_regtab_size): Delete.
142         Move contents to..
143         (i386_regtab): ..here.
144         * i386-opc.h (i386_float_regtab, i386_float_regtab_size): Delete.
146         * ppc-opc.c (powerpc_operands): Delete duplicate entries.
147         (BA_MASK, FXM_MASK, STRM_MASK, VA_MASK, VB_MASK, VC_MASK): Delete.
148         (VD_MASK, WS_MASK, MTMSRD_L, XRT_L): Delete.
149         (powerpc_opcodes): Replace uses of MTMSRD_L and XRT_L.
151 2007-04-20  Nathan Sidwell  <nathan@codesourcery.com>
153         * m68k-dis.c (print_insn_arg): Show c04 as rambar0 and c05 as
154         rambar1.
156 2007-04-20  Alan Modra  <amodra@bigpond.net.au>
158         * ppc-dis.c (print_insn_powerpc): Adjust for struct powerpc_operand
159         change.
160         * ppc-opc.c (powerpc_operands): Replace bit count with bit mask
161         in all entries.  Add PPC_OPERAND_SIGNED to DE entry.  Remove
162         references to following deleted functions.
163         (insert_bd, extract_bd, insert_dq, extract_dq): Delete.
164         (insert_ds, extract_ds, insert_de, extract_de): Delete.
165         (insert_des, extract_des, insert_li, extract_li): Delete.
166         (insert_nb, insert_rsq, insert_rtq, insert_ev2, extract_ev2): Delete.
167         (insert_ev4, extract_ev4, insert_ev8, extract_ev8): Delete.
168         (num_powerpc_operands): New constant.
169         (XSPRG_MASK): Remove entire SPRG field.
170         (powerpc_opcodes <bcctre, bcctrel>): Use XLBB_MASK not XLYBB_MASK.
172 2007-04-20  Alan Modra  <amodra@bigpond.net.au>
174         * ppc-opc.c (DCM, DGM, TE, RMC, R, SP, S): Correct shift.
175         (Z2_MASK): Define.
176         (powerpc_opcodes): Use Z2_MASK in all insns taking RMC operand.
178 2007-04-20  Richard Earnshaw  <rearnsha@arm.com>
180         * arm-dis.c (print_insn): Only look for a mapping symbol in the section
181         being disassembled.
183 2007-04-19  Alan Modra  <amodra@bigpond.net.au>
185         * Makefile.am: Run "make dep-am".
186         * Makefile.in: Regenerate.
187         * po/POTFILES.in: Regenerate.
189 2007-04-19  Alan Modra  <amodra@bigpond.net.au>
191         * ppc-opc.c (powerpc_opcodes): Add cctpl, cctpm, cctph, db8cyc,
192         db10cyc, db12cyc, db16cyc.
194 2007-04-19  Nathan Froyd <froydnj@codesourcery.com>
196         * ppc-opc.c (powerpc_opcodes): Recognize three-operand tlbsxe.
198 2007-04-18  H.J. Lu <hongjiu.lu@intel.com>
200         * i386-dis.c (CRC32_Fixup): New.
201         (PREGRP85, PREGRP86, PREGRP87, PREGRP88, PREGRP89, PREGRP90,
202          PREGRP91): New.
203         (threebyte_0x38_uses_DATA_prefix): Updated for SSE4.2.
204         (threebyte_0x3a_uses_DATA_prefix): Likewise.
205         (prefix_user_table): Add PREGRP85, PREGRP86, PREGRP87,
206         PREGRP88, PREGRP89, PREGRP90 and PREGRP91.
207         (three_byte_table): Likewise.
209         * i386-opc.c (i386_optab): Add SSE4.2 opcodes.
211         * i386-opc.h (CpuSSE4_2): New.
212         (CpuSSE4): Likewise.
213         (CpuUnknownFlags): Add CpuSSE4_2.
215 2007-04-18  H.J. Lu <hongjiu.lu@intel.com>
217         * i386-dis.c (XMM_Fixup): New.
218         (Edqb): New.
219         (Edqd): New.
220         (XMM0): New.
221         (dqb_mode): New.
222         (dqd_mode): New.
223         (PREGRP39 ... PREGRP85): New.
224         (threebyte_0x38_uses_DATA_prefix): Updated for SSE4.
225         (threebyte_0x3a_uses_DATA_prefix): Likewise.
226         (prefix_user_table): Add PREGRP39 ... PREGRP85.
227         (three_byte_table): Likewise.
228         (putop): Handle 'K'.
229         (intel_operand_size): Handle dqb_mode, dqd_mode):
230         (OP_E): Likewise.
231         (OP_G): Likewise.
233         * i386-opc.c (i386_optab): Add SSE4.1 opcodes.
235         * i386-opc.h (CpuSSE4_1): New.
236         (CpuUnknownFlags): Add CpuSSE4_1.
237         (regKludge): Update comment.
239 2007-04-18  Matthias Klose  <doko@ubuntu.com>
241         * Makefile.am (libopcodes_la_LDFLAGS): Use bfd soversion.
242         * Makefile.in: Regenerate.
244 2007-04-14  Steve Ellcey  <sje@cup.hp.com>
246         * Makefile.am: Add ACLOCAL_AMFLAGS.
247         * Makefile.in: Regenerate.
249 2007-04-13  H.J. Lu  <hongjiu.lu@intel.com>
251         * i386-dis.c: Remove trailing white spaces.
252         * i386-opc.c: Likewise.
253         * i386-opc.h: Likewise.
255 2007-04-11  H.J. Lu  <hongjiu.lu@intel.com>
257         PR binutils/4333
258         * i386-dis.c (GRP1a): New.
259         (GRP1b ... GRPPADLCK2): Update index.
260         (dis386): Use GRP1a for entry 0x8f.
261         (mod, rm, reg): Removed. Replaced by ...
262         (modrm): This.
263         (grps): Add GRP1a.
265 2007-04-09  Kazu Hirata  <kazu@codesourcery.com>
267         * m68k-dis.c (print_insn_m68k): Restore info->fprintf_func and
268         info->print_address_func if longjmp is called.
270 2007-03-29  DJ Delorie  <dj@redhat.com>
272         * m32c-desc.c: Regenerate.
273         * m32c-dis.c: Regenerate.
274         * m32c-opc.c: Regenerate.
276 2007-03-28  H.J. Lu  <hongjiu.lu@intel.com>
278         * i386-opc.c (i386_optab): Change InvMem to RegMem for mov and
279         movq.  Remove InvMem from sldt, smsw and str.
281         * i386-opc.h (InvMem): Renamed to ...
282         (RegMem): Update comments.
283         (AnyMem): Remove InvMem.
285 2007-03-27  Paul Brook  <paul@codesourcery.com>
287         * arm-dis.c (thumb_opcodes): Add entry for undefined insns (0xbe??).
289 2007-03-24  Paul Brook  <paul@codesourcery.com>
291         * arm-dis.c (coprocessor_opcodes): Remove superfluous 0x.
292         (print_insn_coprocessor): Handle %<bitfield>x.
294 2007-03-24  Paul Brook  <paul@codesourcery.com>
295             Mark Shinwell  <shinwell@codesourcery.com>
297         * arm-dis.c (arm_opcodes): Print SRS base register.
299 2007-03-23  H.J. Lu  <hongjiu.lu@intel.com>
301         * i386-dis.c (prefix_name): Replace rex64XYZ with rex.WRXB.
303         * i386-opc.c (i386_optab): Add rex.wrxb.
305 2007-03-21  H.J. Lu  <hongjiu.lu@intel.com>
307         * i386-dis.c (REX_MODE64): Remove definition.
308         (REX_EXTX): Likewise.
309         (REX_EXTY): Likewise.
310         (REX_EXTZ): Likewise.
311         (USED_REX): Use REX_OPCODE instead of 0x40.
312         Replace REX_MODE64, REX_EXTX, REX_EXTY and REX_EXTZ with REX_W,
313         REX_R, REX_X and REX_B respectively.
315 2007-03-21  H.J. Lu  <hongjiu.lu@intel.com>
317         PR binutils/4218
318         * i386-dis.c (PREGRP38): New.
319         (dis386): Use PREGRP38 for 0x90.
320         (prefix_user_table): Add PREGRP38.
321         (print_insn): Set uses_REPZ_prefix to 1 for pause.
322         (NOP_Fixup1): Properly handle REX bits.
323         (NOP_Fixup2): Likewise.
325         * i386-opc.c (i386_optab): Allow %eax with xchg in 64bit.
326         Allow register with nop.
328 2007-03-20  DJ Delorie  <dj@redhat.com>
330         * m32c-asm.c: Regenerate.
331         * m32c-desc.c: Regenerate.
332         * m32c-desc.h: Regenerate.
333         * m32c-dis.h: Regenerate.
334         * m32c-ibld.c: Regenerate.
335         * m32c-opc.c: Regenerate.
336         * m32c-opc.h: Regenerate.
338 2007-03-15  H.J. Lu  <hongjiu.lu@intel.com>
340         * i386-opc.c: Include "libiberty.h".
341         (i386_regtab): Remove the last entry.
342         (i386_regtab_size): New.
343         (i386_float_regtab_size): Likewise.
345         * i386-opc.h (i386_regtab_size): New.
346         (i386_float_regtab_size): Likewise.
348 2007-03-15  H.J. Lu  <hongjiu.lu@intel.com>
350         * Makefile.am (CFILES): Add i386-opc.c.
351         (ALL_MACHINES): Add i386-opc.lo.
352         Run "make dep-am".
353         * Makefile.in: Regenerated.
355         * configure.in: Add i386-opc.lo for bfd_i386_arch.
356         * configure: Regenerated.
358         * i386-dis.c: Include "opcode/i386.h".
359         (MAXLEN): Renamed to MAX_MNEM_SIZE. Remove definition.
360         (FWAIT_OPCODE): Remove definition.
361         (UNIXWARE_COMPAT): Renamed to SYSV386_COMPAT. Remove definition.
362         (MAX_OPERANDS): Remove definition.
364         * i386-opc.c: New file.
365         * i386-opc.h: Likewise.
367 2007-03-15  H.J. Lu  <hongjiu.lu@intel.com>
369         * Makefile.in: Regenerated.
371 2007-03-09  H.J. Lu  <hongjiu.lu@intel.com>
373         * i386-dis.c (OP_Rd): Renamed to ...
374         (OP_R): This.
375         (Rd): Updated.
376         (Rm): Likewise.
378 2007-03-08  Alan Modra  <amodra@bigpond.net.au>
380         * fr30-asm.c: Regenerate.
381         * frv-asm.c: Regenerate.
382         * ip2k-asm.c: Regenerate.
383         * iq2000-asm.c: Regenerate.
384         * m32c-asm.c: Regenerate.
385         * m32r-asm.c: Regenerate.
386         * m32r-dis.c: Regenerate.
387         * mt-asm.c: Regenerate.
388         * mt-ibld.c: Regenerate.
389         * mt-opc.c: Regenerate.
390         * openrisc-asm.c: Regenerate.
391         * xc16x-asm.c: Regenerate.
392         * xstormy16-asm.c: Regenerate.
394         * Makefile.am: Run "make dep-am".
395         * Makefile.in: Regenerate.
396         * po/POTFILES.in: Regenerate.
398 2007-03-06  Andreas Krebbel  <krebbel1@de.ibm.com>
400         * opcodes/s390-opc.c (INSTR_RRE_FR, INSTR_RRF_F0FF2, INSTR_RRF_F0FR,
401         INSTR_RRF_UUFF, INSTR_RRF_0UFF, INSTR_RRF_FFFU, INSTR_RRR_F0FF): New
402         instruction formats added.
403         (MASK_RRE_FR, MASK_RRF_F0FF2, MASK_RRF_F0FR, MASK_RRF_UUFF,
404         MASK_RRF_0UFF, MASK_RRF_FFFU, MASK_RRR_F0FF): New instruction format
405         masks added.
406         * opcodes/s390-opc.txt (lpdfr - tgxt): Decimal floating point
407         instructions added.
408         * opcodes/s390-mkopc.c (s390_opcode_cpu_val): S390_OPCODE_Z9_EC added.
409         (main): z9-ec cpu type option added.
410         * include/opcode/s390.h (s390_opcode_cpu_val): S390_OPCODE_Z9_EC added.
412 2007-02-22  DJ Delorie  <dj@redhat.com>
414         * s390-opc.c (INSTR_SS_L2RDRD): New.
415         (MASK_SS_L2RDRD): New.
416         * s390-opc.txt (pka): Use it.
418 2007-02-20  Thiemo Seufer  <ths@mips.com>
419             Chao-Ying Fu  <fu@mips.com>
421         * mips-dis.c (mips_arch_choices): Add DSP R2 support.
422         (print_insn_args): Add support for balign instruction.
423         * mips-opc.c (D33): New shortcut for DSP R2 instructions.
424         (mips_builtin_opcodes): Add DSP R2 instructions.
426 2007-02-19  Andreas Krebbel  <krebbel1@de.ibm.com>
428         * s390-opc.c (INSTR_RRF_U0FR, MASK_RRF_U0FR): Removed.
429         (INSTR_RRF_U0RF, MASK_RRF_U0RF): Added.
430         * s390-opc.txt (cfxbr, cfdbr, cfebr, cgebr, cgdbr, cgxbr, cger, cgdr,
431         cgxr, cfxr, cfdr, cfer): Instruction type set to INSTR_RRF_U0RF.
433 2007-02-19  Andreas Krebbel  <krebbel1@de.ibm.com>
435         * s390-opc.txt ("efpc", "sfpc"): Set to RRE_RR_OPT instruction type.
436         * s390-opc.c (s390_operands): Add RO_28 as optional gpr.
437         (INSTR_RRE_RR_OPT, MASK_RRE_RR_OPT): New instruction type for efpc
438         and sfpc.
440 2007-02-16  Nick Clifton  <nickc@redhat.com>
442         PR binutils/4045
443         * avr-dis.c (comment_start): New variable, contains the prefix to
444         use when printing addresses in comments.
445         (print_insn_avr): Set comment_start to an empty space if there is
446         no symbol table available as the generic address printing code
447         will prefix the numeric value of the address with 0x.
449 2007-02-13  H.J. Lu  <hongjiu.lu@intel.com>
451          * i386-dis.c: Updated to use an array of MAX_OPERANDS operands
452          in struct dis386.
454 2007-02-05  Dave Brolley  <brolley@redhat.com>
455             Richard Sandiford  <rsandifo@redhat.com>
456             DJ Delorie  <dj@redhat.com>
457             Graydon Hoare  <graydon@redhat.com>
458             Frank Ch. Eigler  <fche@redhat.com>
459             Ben Elliston  <bje@redhat.com>
461         * Makefile.am (HFILES): Add mep-desc.h mep-opc.h.
462         (CFILES): Add mep-*.c
463         (ALL_MACHINES): Add mep-*.lo.
464         (CLEANFILES): Add stamp-mep.
465         (CGEN_CPUS): Add mep.
466         (MEP_DEPS): New variable.
467         (mep-*): New targets.
468         * configure.in: Handle bfd_mep_arch.
469         * disassemble.c (ARCH_mep): New macro.
470         (disassembler): Handle bfd_arch_mep.
471         (disassemble_init_for_target): Likewise.
472         * mep-*: New files for Toshiba Media Processor (MeP).
473         * Makefile.in: Regenerated.
474         * configure: Regenerated.
476 2007-02-05  H.J. Lu  <hongjiu.lu@intel.com>
478         * i386-dis.c (OP_J): Undo the last change. Properly handle 64K
479         wrap around within the same segment in 16bit mode.
481 2007-02-02  H.J. Lu  <hongjiu.lu@intel.com>
483         * i386-dis.c (OP_J): Mask to 16bit only if there is a data16
484         prefix.
486 2007-02-02  H.J. Lu  <hongjiu.lu@intel.com>
488         * avr-dis.c (avr_operand): Correct PR number in comment.
490 2007-02-02  H.J. Lu  <hongjiu.lu@intel.com>
492         * disassemble.c (disassembler_usage): Call
493         print_i386_disassembler_options for i386 disassembler.
495         * i386-dis.c (print_i386_disassembler_options): New.
496         (print_insn): Support the new addr64 option.
498 2007-02-02  Hiroki Kaminaga  <kaminaga@sm.sony.co.jp>
500         * ppc-dis.c (powerpc_dialect): Handle ppc440.
501         * ppc-dis.c (print_ppc_disassembler_options): Note the -M440 can
502         be used.
504 2007-02-02  Alan Modra  <amodra@bigpond.net.au>
506         * ppc-opc.c (insert_bdm): -Many comment.
507         (valid_bo): Add "extract" param.  Accept both powerpc and power4
508         BO fields when disassembling with -Many.
509         (insert_bo, extract_bo, insert_boe, extract_boe): Adjust valid_bo call.
511 2007-01-08  Kazu Hirata  <kazu@codesourcery.com>
513         * m68k-opc.c (m68k_opcodes): Replace cpu32 with
514         cpu32 | fido_a except on tbl instructions.
516 2007-01-04  Paul Brook  <paul@codesourcery.com>
518         * arm-dis.c (arm_opcodes): Fix cpsie and cpsid entries.
520 2007-01-04  Andreas Schwab  <schwab@suse.de>
522         * m68k-opc.c: Fix encoding of signed bit in the cpu32 tbls insns.
524 2007-01-04  Julian Brown  <julian@codesourcery.com>
526         * arm-dis.c (neon_opcode): Fix disassembly for vshl, vqshl, vrshl,
527         vqrshl instructions.
529 For older changes see ChangeLog-2006
531 Local Variables:
532 mode: change-log
533 left-margin: 8
534 fill-column: 74
535 version-control: never
536 End: