1 2007-09-13 H.J. Lu <hongjiu.lu@intel.com>
3 * i386-dis.c (get_valid_dis386): Take a pointer to
4 disassemble_info. Handle IS_3BYTE_OPCODE.
5 (print_insn): Updated. Don't handle IS_3BYTE_OPCODE here.
7 2007-09-12 H.J. Lu <hongjiu.lu@intel.com>
9 * i386-opc.h (CpuUnused): Defined with CpuMax.
10 (OTUnused): Defined with OTMax.
12 2007-09-12 Jan Beulich <jbeulich@novell.com>
14 * i386-opc.tbl: Add two-operand forms of blendvps, blendvpd, and
16 * i386-tbl.h: Regenerate.
18 2007-09-09 H.J. Lu <hongjiu.lu@intel.com>
20 * i386-gen.c (main): Remove the local variable, unused.
22 2007-09-08 H.J. Lu <hongjiu.lu@intel.com>
24 * Makefile.am: Run "make dep-am".
25 * Makefile.in: Regenerate.
27 2007-09-08 H.J. Lu <hongjiu.lu@intel.com>
29 * configure.in (AC_CHECK_HEADERS): Add limits.h.
30 * configure: Regenerated.
31 * config.in: Likewise.
33 * i386-gen.c: Include "sysdep.h" instead of <stdlib.h> and
34 <string.h>. Use xstrerror instead of strerror.
36 (cpu_flag_init): Likewise.
39 (cpu_flags): Likewise.
40 (opcode_modifiers): Likewise.
41 (operand_types): Likewise.
43 (set_cpu_flags): Likewise.
44 (output_cpu_flags): Likewise.
45 (process_i386_cpu_flags): Likewise.
46 (output_opcode_modifier): Likewise.
47 (process_i386_opcode_modifier): Likewise.
48 (output_operand_type): Likewise.
49 (process_i386_operand_type): Likewise.
50 (set_bitfield): Likewise.
51 (operand_type_init): Likewise.
52 (process_i386_initializers): Likewise.
53 (process_i386_opcodes): Call process_i386_opcode_modifier to
54 process opcode_modifier. Call process_i386_operand_type to
55 process operand_types.
56 (process_i386_registers): Call process_i386_operand_type to
58 (main): Check unused bits in i386_cpu_flags and i386_operand_type.
59 Sort cpu_flags, opcode_modifiers and operand_types. Call
60 process_i386_initializers.
63 * i386-tbl.h: Regenerated.
65 * i386-opc.h: Include <limits.h>.
66 (CHAR_BIT): Define as 8 if not defined.
67 (Cpu186): Changed to position of bitfiled.
81 (Cpu3dnowA): Likewise.
83 (CpuPadLock): Likewise.
89 (CpuSSE4_1): Likewise.
90 (CpuSSE4_2): Likewise.
96 (ShortForm): Likewise.
98 (JumpDword): Likewise.
100 (JumpInterSegment): Likewise.
107 (IgnoreSize): Likewise.
108 (DefaultSize): Likewise.
116 (IsString): Likewise.
117 (RegKludge): Likewise.
118 (IsPrefix): Likewise.
127 (FloatReg): Likewise.
137 (BaseIndex): Likewise.
143 (InOutPortReg): Likewise.
144 (ShiftCount): Likewise.
151 (FloatAcc): Likewise.
152 (JumpAbsolute): Likewise.
156 (Reg): Commented out.
158 (ImplicitRegister): Likewise.
163 (LLongMem): Likewise.
165 (ShortMem): Likewise.
170 (CpuNumOfUints): Likewise.
171 (CpuNumOfBits): Likewise.
172 (CpuUnused): Likewise.
173 (OTNumOfUints): Likewise.
174 (OTNumOfBits): Likewise.
175 (OTUnused): Likewise.
176 (i386_cpu_flags): New type.
177 (i386_operand_type): Likewise.
178 (i386_opcode_modifier): Likewise.
179 (CpuSledgehammer): Removed.
181 (CpuUnknownFlags): Likewise.
184 (ImplicitRegister): Likewise.
189 (LLongMem): Likewise.
191 (ShortMem): Likewise.
194 (template): Use i386_cpu_flags for cpu_flags, use
195 i386_opcode_modifier for opcode_modifier, use
196 i386_operand_type for operand_types.
197 (reg_entry): Use i386_operand_type for reg_type.
199 * Makefile.am (HFILES): Add i386-init.h.
200 ($(srcdir)/i386-init.h): New rule.
201 ($(srcdir)/i386-tbl.h): Depend on $(srcdir)/i386-init.h
203 * Makefile.in: Regenerated.
205 2007-09-06 H.J. Lu <hongjiu.lu@intel.com>
207 * i386-gen.c (next_field): Updated to take a separator.
208 (process_i386_opcodes): Updated.
209 (process_i386_registers): Likewise.
211 2007-09-06 H.J. Lu <hongjiu.lu@intel.com>
213 * i386-gen.c (table): Moved ...
214 (main): Here. Call process_copyright to output copyright.
215 (process_copyright): New.
216 (process_i386_opcodes): Take FILE *table.
217 (process_i386_registers): Likewise.
219 2007-09-06 H.J. Lu <hongjiu.lu@intel.com>
221 * i386-gen.c (table): New.
222 (process_i386_opcodes): Report errno when faied to open
223 i386-opc.tbl. Output opcodes to table. Close i386-opc.tbl
225 (process_i386_registers): Report errno when faied to open
226 i386-reg.tbl. Output opcodes to table. Close i386-reg.tbl
228 (main): Open i386-tbl.h for output.
230 * Makefile.am ($(srcdir)/i386-tbl.h): Remove " > $@".
231 * Makefile.in: Regenerated.
233 2007-09-06 H.J. Lu <hongjiu.lu@intel.com>
235 * i386-opc.tbl: Correct SVME instructions to allow 32bit register
236 operand in 64bit mode.
237 * i386-tbl.h: Regenerated.
239 2007-08-31 H.J. Lu <hongjiu.lu@intel.com>
241 * i386-dis.c (OPC_EXT_40...OPC_EXT_45): New.
242 (dis386_twobyte): Use OPC_EXT_40...OPC_EXT_45.
243 (opc_ext_table): Add OPC_EXT_40...OPC_EXT_45.
245 2007-08-31 H.J. Lu <hongjiu.lu@intel.com>
247 * i386-dis.c (SVME_Fixup): Removed.
249 (OPC_EXT_RM_6): Likewise.
250 (grps): Use OPC_EXT_39.
251 (opc_ext_table): Add OPC_EXT_39.
252 (opc_ext_rm_table): Add OPC_EXT_RM_6.
254 * i386-opc.tbl: Correct SVME instructions to take register
256 * i386-tbl.h: Regenerated.
258 2007-08-31 H.J. Lu <hongjiu.lu@intel.com>
260 * Makefile.am (INCLUDES): Remove -D_GNU_SOURCE.
261 * Makefile.in: Regenerated.
263 * configure.in (AC_GNU_SOURCE): Added.
264 (AC_PROG_CC): Moved before AC_GNU_SOURCE.
265 (AC_CHECK_DECLS): Add stpcpy.
266 * configure: Regenerated.
267 * config.in: Likewise.
269 * i386-dis.c: Include "sysdep.h" before "dis-asm.h".
271 * sysdep.h (stpcpy): New.
273 2007-08-30 H.J. Lu <hongjiu.lu@intel.com>
275 * i386-dis.c (INVLPG_Fixup): Removed.
277 (OPC_EXT_RM_5): Likewise.
278 (grps): Use OPC_EXT_38.
279 (opc_ext_table): Add OPC_EXT_38.
280 (opc_ext_rm_table): Add OPC_EXT_RM_5.
282 2007-08-29 H.J. Lu <hongjiu.lu@intel.com>
284 * i386-dis.c (SIMD_Fixup): Removed.
285 (OPC_EXT_34...OPC_EXT_37): New.
286 (dis386_twobyte): Use OPC_EXT_34 and OPC_EXT_35.
287 (prefix_user_table): Use OPC_EXT_36 and OPC_EXT_37.
288 (opc_ext_table): Add OPC_EXT_34...OPC_EXT_37.
290 2007-08-29 H.J. Lu <hongjiu.lu@intel.com>
292 * i386-dis.c (OPC_EXT_25...OPC_EXT_33): New.
293 (dis386): Use OPC_EXT_0...OPC_EXT_2.
294 (dis386_twobyte): Use OPC_EXT_3...OPC_EXT_5.
295 (grps): Updated to use OPC_EXT_6...OPC_EXT_31.
296 (prefix_user_table): Use OPC_EXT_32.
297 (x86_64_table): Use OPC_EXT_33.
298 (opc_ext_table): Reorder and add OPC_EXT_25...OPC_EXT_33.
300 2007-08-29 H.J. Lu <hongjiu.lu@intel.com>
302 * i386-dis.c (prefix_user_table): Fix comment.
304 2007-08-29 H.J. Lu <hongjiu.lu@intel.com>
306 * i386-dis.c (OP_Skip_MODRM): New.
307 (OP_Monitor): Likewise.
308 (OP_Mwait): Likewise.
310 (Skip_MODRM): Likewise.
311 (USE_OPC_EXT_TABLE): Likewise.
312 (USE_OPC_EXT_RM_TABLE): Likewise.
313 (PREGRP98...PREGRP100): Likewise.
314 (OPC_EXT_0...OPC_EXT_24): Likewise.
315 (OPC_EXT_RM_0...OPC_EXT_RM_4): Likewise.
316 (lock_prefix): Likewise.
317 (data_prefix): Likewise.
318 (addr_prefix): Likewise.
319 (repz_prefix): Likewise.
320 (repnz_prefix): Likewise.
321 (opc_ext_table): Likewise.
322 (opc_ext_rm_table): Likewise.
323 (get_valid_dis386): Likewise.
326 (PNI_Fixup): Likewise.
327 (VMX_Fixup): Likewise.
329 (twobyte_uses_DATA_prefix): Likewise.
330 (twobyte_uses_REPNZ_prefix): Likewise.
331 (twobyte_uses_REPZ_prefix): Likewise.
332 (threebyte_0x38_uses_DATA_prefix): Likewise.
333 (threebyte_0x38_uses_REPNZ_prefix): Likewise.
334 (threebyte_0x38_uses_REPZ_prefix): Likewise.
335 (threebyte_0x3a_uses_DATA_prefix): Likewise.
336 (threebyte_0x3a_uses_REPNZ_prefix): Likewise.
337 (threebyte_0x3a_uses_REPZ_prefix): Likewise.
338 (grps): Use OPC_EXT_0...OPC_EXT_24.
339 (prefix_user_table): Add PREGRP98...PREGRP100.
340 (print_insn): Remove uses_DATA_prefix, uses_LOCK_prefix,
341 uses_REPNZ_prefix and uses_REPZ_prefix. Initialize
342 repz_prefix, repnz_prefix, lock_prefix, addr_prefix and
343 data_prefix based on prefixes. Call get_valid_dis386 to
344 get a pointer to the valid dis386. Print out prefixes if
346 (OP_C): Clear lock_prefix if PREFIX_LOCK is used.
347 (REP_Fixup): Set repz_prefix to "rep " when seeing
350 2007-08-28 Daniel Jacobowitz <dan@codesourcery.com>
352 * po/nl.po: Updated translation.
354 2007-08-28 H.J. Lu <hongjiu.lu@intel.com>
356 * i386-dis.c (Md): New.
357 (grps): Use 0 on invlpg. Use M on fxsave and fxrstor. Use
358 Md on ldmxcsr and stmxcsr. Use b_mode on clflush.
359 (OP_0fae): Clear bytemode for sfence.
361 2007-08-22 Ben Elliston <bje@au.ibm.com>
363 * ppc-opc.c (PSW, PSWM, PSQ, PSQM, PSD, MTMSRD_L): New.
364 (XOPS, XOPS_MASK, XW, XW_MASK): Likewise.
366 (powerpc_opcodes): Add all pair singles instructions.
367 * ppc-dis.c (powerpc_dialect): Handle "ppcps".
368 (print_ppc_disassembler_options): Document -Mppcps.
370 2007-08-21 Andreas Krebbel <krebbel1@de.ibm.com>
372 * s390-mkopc.c (struct s390_cond_ext_format): New global struct.
373 (s390_cond_ext_format): New global variable.
374 (expandConditionalJump): New function.
375 (main): Invoke expandConditionalJump for mnemonics containing '*'.
376 * s390-opc.txt: Replace mnemonics with conditional
377 mask extensions with instructions using the newly introduced '*' tag.
379 2007-08-17 Alan Modra <amodra@bigpond.net.au>
381 * po/Make-in: Add --msgid-bugs-address to xgettext invocation.
383 2007-08-10 Nick Clifton <nickc@redhat.com>
385 * po/fi.po: Updated Finnish translation.
386 * po/ga.po: Updated Irish translation.
387 * po/vi.po: Updated Vietnamese translation.
389 2007-08-09 H.J. Lu <hongjiu.lu@intel.com>
391 * i386-opc.tbl: Add NoRex64 to pmovsxbw, pmovsxwd, pmovsxdq,
392 pmovzxbw, pmovzxwd, pmovzxdq and roundsd.
393 * i386-tbl.h: Regenerated.
395 2007-08-03 James E. Wilson <wilson@specifix.com>
397 * ia64-gen.c: (main): Add missing newline to copyright message.
398 * ia64-ic.tbl (fp-non-arith): Add xmpy.
399 * ia64-asmtab.c: Regenerate.
401 2007-08-01 Michael Snyder <msnyder@access-company.com>
403 * i386-dis.c (print_insn): Guard against NULL.
405 2007-07-29 H.J. Lu <hongjiu.lu@intel.com>
408 * i386-dis.c (EXw): New.
409 (prefix_user_table): Updated to use EXw, EXd and EXq for SSE4
410 instructions when appropriated.
412 2007-07-28 H.J. Lu <hongjiu.lu@intel.com>
415 * i386-dis.c (Eq): New.
416 (EMC): Renamed to ...
417 (EMCq): This. Use q_mode instead of v_mode.
418 (prefix_user_table): Updated to use EXd, EXq, EMCq, Ed and Eq
421 2007-07-28 H.J. Lu <hongjiu.lu@intel.com>
423 * i386-dis.c (dis386_twobyte): Change "movd" to "movK".
424 (prefix_user_table): Likewise. Use EXq instead of EXx on
427 2007-07-27 Nathan Sidwell <nathan@codesourcery.com>
429 * ppc-opc (PPC7450): New.
430 (powerpc_opcodes): Use it in dcba.
432 2007-07-24 H.J. Lu <hongjiu.lu@intel.com>
434 * i386-gen.c (main): Print a newline after copyright notice.
436 2007-07-19 Nick Clifton <nickc@redhat.com>
439 * maxq-dis.c (get_reg_name): Fix the scan of the
440 mem_access_syntax_table.
442 2007-07-16 H.J. Lu <hongjiu.lu@intel.com>
444 * i386-dis.c (EMq): Removed.
446 (prefix_user_table): Replace EMq with EMx.
448 2007-07-16 Nick Clifton <nickc@redhat.com>
450 * po/nl.po: Updated translation.
452 2007-07-12 Nick Clifton <nickc@redhat.com>
454 * po/vi.po: Updated translation.
455 * po/nl.po: Updated translation.
457 2007-07-06 Mark Kettenis <kettenis@gnu.org>
458 H.J. Lu <hongjiu.lu@intel.com>
460 * Makefile.am (i386-tbl.h): Add $(srcdir)/ to target.
461 (ia64-asmtab.c): Likewise.
462 * Makefile.in: Regenerate.
464 2007-07-05 H.J. Lu <hongjiu.lu@intel.com>
466 * aclocal.m4: Regenerated.
468 2007-07-04 Nick Clifton <nickc@redhat.com>
470 * alpha-dis.c: Update copyright notice to refer to GPLv3.
471 * alpha-opc.c, arc-dis.c, arc-dis.h, arc-ext.c, arc-ext.h,
472 arc-opc.c, arm-dis.c, avr-dis.c, bfin-dis.c, cgen-asm.c,
473 cgen-asm.in, cgen-bitset.c, cgen-dis.c, cgen-dis.in, cgen-ibld.in,
474 cgen-opc.c, cgen-ops.h, cgen.sh, cgen-types.h, cr16-dis.c,
475 cr16-opc.c, cris-dis.c, cris-opc.c, crx-dis.c, crx-opc.c,
476 d10v-dis.c, d10v-opc.c, d30v-dis.c, d30v-opc.c, disassemble.c,
477 dis-buf.c, dis-init.c, dlx-dis.c, h8300-dis.c, h8500-dis.c,
478 h8500-opc.h, hppa-dis.c, i370-dis.c, i370-opc.c, i386-dis.c,
479 i386-gen.c, i386-opc.c, i386-opc.h, i860-dis.c, i960-dis.c,
480 ia64-asmtab.h, ia64-dis.c, ia64-gen.c, ia64-opc-a.c, ia64-opc-b.c,
481 ia64-opc.c, ia64-opc-d.c, ia64-opc-f.c, ia64-opc.h, ia64-opc-i.c,
482 ia64-opc-m.c, ia64-opc-x.c, m10200-dis.c, m10200-opc.c,
483 m10300-dis.c, m10300-opc.c, m68hc11-dis.c, m68hc11-opc.c,
484 m68k-dis.c, m68k-opc.c, m88k-dis.c, maxq-dis.c, mcore-dis.c,
485 mcore-opc.h, mips16-opc.c, mips-dis.c, mips-opc.c, mmix-dis.c,
486 mmix-opc.c, msp430-dis.c, ns32k-dis.c, opintl.h, or32-dis.c,
487 or32-opc.c, pdp11-dis.c, pdp11-opc.c, pj-dis.c, pj-opc.c,
488 ppc-dis.c, ppc-opc.c, s390-dis.c, s390-mkopc.c, s390-opc.c,
489 score-dis.c, score-opc.h, sh64-dis.c, sh64-opc.c, sh64-opc.h,
490 sh-dis.c, sh-opc.h, sparc-dis.c, sparc-opc.c, spu-dis.c,
491 spu-opc.c, sysdep.h, tic30-dis.c, tic4x-dis.c, tic54x-dis.c,
492 tic54x-opc.c, tic80-dis.c, tic80-opc.c, v850-dis.c, v850-opc.c,
493 vax-dis.c, w65-dis.c, w65-opc.h, xtensa-dis.c, z80-dis.c,
494 z8k-dis.c, z8kgen.c: Likewise.
495 * i386-opc.tbl, i386-reg.tbl: Add copyright notice.
496 * aclocal.m4, configure, fr30-asm.c, fr30-desc.c, fr30-desc.h,
497 fr30-dis.c, fr30-ibld.c, fr30-opc.c, fr30-opc.h, frv-asm.c,
498 frv-desc.c, frv-desc.h, frv-dis.c, frv-ibld.c, frv-opc.c,
499 frv-opc.h, i386-tbl.h, ia64-asmtab.c, ip2k-asm.c, ip2k-desc.c,
500 ip2k-desc.h, ip2k-dis.c, ip2k-ibld.c, ip2k-opc.c, ip2k-opc.h,
501 iq2000-asm.c, iq2000-desc.c, iq2000-desc.h, iq2000-dis.c,
502 iq2000-ibld.c, iq2000-opc.c, iq2000-opc.h, m32c-asm.c,
503 m32c-desc.c, m32c-desc.h, m32c-dis.c, m32c-ibld.c, m32c-opc.c,
504 m32c-opc.h, m32r-asm.c, m32r-desc.c, m32r-desc.h, m32r-dis.c,
505 m32r-ibld.c, m32r-opc.c, m32r-opc.h, m32r-opinst.c, mep-asm.c,
506 mep-desc.c, mep-desc.h, mep-dis.c, mep-ibld.c, mep-opc.c,
507 mep-opc.h, mt-asm.c, mt-desc.c, mt-desc.h, mt-dis.c, mt-ibld.c,
508 mt-opc.c, mt-opc.h, openrisc-asm.c, openrisc-desc.c,
509 openrisc-desc.h, openrisc-dis.c, openrisc-ibld.c, openrisc-opc.c,
510 openrisc-opc.h, xc16x-asm.c, xc16x-desc.c, xc16x-desc.h,
511 xc16x-dis.c, xc16x-ibld.c, xc16x-opc.c, xc16x-opc.h,
512 xstormy16-asm.c, xstormy16-desc.c, xstormy16-desc.h,
513 xstormy16-dis.c, xstormy16-ibld.c, xstormy16-opc.c,
514 xstormy16-opc.h, z8k-opc.h: Regenerated
516 2007-07-04 M R Swami Reddy <MR.Swami.Reddy@nsc.com>
518 * cr16-dis.c (getcinvstring): Add const qualifier to char *
520 (print_insn_cr16): Remove cast to char *.
522 2007-07-03 Nathan Sidwell <nathan@codesourcery.com>
524 * m68k-dis.c (fetch_arg): Add E. Replace length switch with
526 (print_ins_arg): Add j & K operand types.
527 (match_insn_m68k): Check and skip initial '.' arg character.
528 (m68k_scan_mask): Likewise.
529 * m68k-opc.c (m68k_opcodes): Add coprocessor instructions.
531 2007-07-02 Alan Modra <amodra@bigpond.net.au>
533 * Makefile.am: Run "make dep-am".
534 * Makefile.in: Regenerate.
535 * aclocal.m4: Regenerate.
536 * config.in: Regenerate.
537 * po/POTFILES.in: Regenerate.
538 * po/opcodes.pot: Regenerate.
540 2007-06-30 H.J. Lu <hongjiu.lu@intel.com>
542 * aclocal.m4: Regenerated.
543 * Makefile.in: Likewise.
545 2007-06-29 H.J. Lu <hongjiu.lu@intel.com>
547 * i386-reg.tbl: Remove spaces before comments.
549 2007-06-29 M R Swami Reddy <MR.Swami.Reddy@nsc.com>
551 * cr16-opc.c: New file.
552 * cr16-dis.c: New file.
553 * Makefile.am: Entries for cr16.
554 * Makefile.in: Regenerate.
555 * cofigure.in: Add cr16 target information.
556 * configure : Regenerate.
557 * disassemble.c: Add cr16 target information.
559 2007-06-28 H.J. Lu <hongjiu.lu@intel.com>
561 * Makefile.am (HFILES): Add i386-opc.h and i386-tbl.h.
562 (CFILES): Add i386-gen.c.
563 (i386-gen): New rule.
564 (i386-gen.o): Likewise.
565 (i386-tbl.h): Likewise.
567 * Makefile.in: Regenerated.
569 * i386-gen.c: New file.
570 * i386-opc.tbl: Likewise.
571 * i386-reg.tbl: Likewise.
572 * i386-tbl.h: Likewise.
574 * i386-opc.c: Include "i386-tbl.h".
575 (i386_optab): Removed.
576 (i386_regtab): Likewise.
577 (i386_regtab_size): Likewise.
579 2007-06-26 Paul Brook <paul@codesourcery.com>
581 * arm-dis.c (coprocessor_opcodes): Add fmxr/fmrx mvfr0/mvfr1.
583 2007-06-25 H.J. Lu <hongjiu.lu@intel.com>
585 * i386-opc.h (regKludge): Renamed to ...
588 * i386-opc.c (i386_optab): Replace regKludge with RegKludge.
590 2007-06-23 H.J. Lu <hongjiu.lu@intel.com>
593 * i386-dis.c (EX): Removed.
599 (PREGRP93...PREGRP97): Likewise.
600 (dis386_twobyte): Updated.
601 (prefix_user_table): Updated. Add PREGRP93...PREGRP97.
602 (OP_EX): Remove Intel syntax handling.
604 2007-06-18 Nathan Sidwell <nathan@codesourcery.com>
606 * m68k-opc.c (m68k_opcodes): Add wdebugl variants.
608 2007-06-14 H.J. Lu <hongjiu.lu@intel.com>
610 * Makefile.am (ACLOCAL_AMFLAGS): Add -I ../config -I ../bfd.
612 * acinclude.m4: Removed.
614 * Makefile.in: Regenerated.
615 * doc/Makefile.in: Likewise.
616 * aclocal.m4: Likewise.
617 * configure: Likewise.
619 2007-06-05 Paul Brook <paul@codesourcery.com>
621 * arm-dis.c (thumb32_opcodes): Display writeback ldrd/strd addresses.
623 2007-05-24 Steve Ellcey <sje@cup.hp.com>
625 * Makefile.in: Regnerate.
626 * configure: Regenerate.
627 * aclocal.m4: Regenerate.
629 2007-05-18 Alan Modra <amodra@bigpond.net.au>
631 * ppc-dis.c (print_insn_powerpc): Don't skip all operands
632 after setting skip_optional.
634 2007-05-16 Peter Bergner <bergner@vnet.ibm.com>
636 * ppc-dis.c (operand_value_powerpc, skip_optional_operands): New.
637 (print_insn_powerpc): Use the new operand_value_powerpc and
638 skip_optional_operands functions to omit or print all optional
640 * ppc-opc.c (BFF, W, XFL_L, XWRA_MASK): New.
641 (XFL_MASK): Delete L and W bits from the mask.
642 (mtfsfi, mtfsfi.): Replace use of BF with BFF. Relpace use of XRA_MASK
643 with XWRA_MASK. Use W.
644 (mtfsf, mtfsf.): Use XFL_L and W.
646 2007-05-14 H.J. Lu <hongjiu.lu@intel.com>
649 * i386-dis.c (Suffix3DNow): Replace "pfmulhrw" with "pmulhrw".
651 2007-05-10 H.J. Lu <hongjiu.lu@intel.com>
653 * i386-opc.h (ShortForm): Redefined.
655 (JumpDword): Likewise.
656 (JumpByte): Likewise.
657 (JumpInterSegment): Likewise.
664 (IgnoreSize): Likewise.
665 (DefaultSize): Likewise.
673 (IsString): Likewise.
674 (regKludge): Likewise.
675 (IsPrefix): Likewise.
681 2007-05-07 H.J. Lu <hongjiu.lu@intel.com>
683 * i386-dis.c (threebyte_0x38_uses_DATA_prefix): Correct entries
684 for some SSE4 instructions.
685 (threebyte_0x3a_uses_DATA_prefix): Likewise.
687 2007-05-03 H.J. Lu <hongjiu.lu@intel.com>
689 * i386-dis.c (CRC32_Fixup): Don't print suffix in Intel mode.
691 * i386-opc.c (i386_optab): Remove IgnoreSize and correct operand
694 2007-05-01 H.J. Lu <hongjiu.lu@intel.com>
696 * i386-dis.c (CRC32_Fixup): Properly handle Intel mode and
697 check data size prefix in 16bit mode.
699 * i386-opc.c (i386_optab): Default crc32 to non-8bit and
702 2007-04-30 Mark Salter <msalter@redhat.com>
704 * frv-desc.c: Regenerate.
705 * frv-desc.h: Regenerate.
707 2007-04-30 Alan Modra <amodra@bigpond.net.au>
710 * ppc-opc.c (powerpc_operands): Correct bitm for second entry of MBE.
712 2007-04-27 H.J. Lu <hongjiu.lu@intel.com>
714 * i386-dis.c (modrm): Put reg before rm.
716 2007-04-26 H.J. Lu <hongjiu.lu@intel.com>
719 * i386-dis.c (print_displacement): New.
720 (OP_E): Call print_displacement instead of print_operand_value
721 to output displacement when either base or index exist. Print
722 the explicit zero displacement in 16bit mode.
724 2007-04-26 H.J. Lu <hongjiu.lu@intel.com>
727 * i386-dis.c (print_insn): Also swap the order of op_riprel
728 when swapping op_index. Break when the RIP relative address
730 (OP_E): Properly handle RIP relative addressing and print the
731 explicit zero displacement for Intel mode.
733 2007-04-27 Alan Modra <amodra@bigpond.net.au>
735 * Makefile.am: Run "make dep-am".
736 * Makefile.in: Regenerate.
737 * ns32k-dis.c: Include sysdep.h first.
739 2007-04-24 Andreas Krebbel <krebbel1@de.ibm.com>
741 * opcodes/s390-opc.c (MASK_SSF_RRDRD): Fourth nybble belongs to the
743 * opcodes/s390-opc.txt (pfpo, ectg, csst): Add new z9-ec instructions.
745 2007-04-24 Nick Clifton <nickc@redhat.com>
747 * arm-dis.c (print_insn): Initialise type.
749 2007-04-24 Alan Modra <amodra@bigpond.net.au>
751 * cgen-types.h: Include bfd_stdint.h, not stdint.h.
752 * Makefile.am: Run "make dep-am".
753 * Makefile.in: Regenerate.
755 2007-04-23 Nathan Sidwell <nathan@codesourcery.com>
757 * m68k-opc.c: Mark mcfisa_c instructions.
759 2007-04-21 Richard Earnshaw <rearnsha@arm.com>
761 * arm-dis.c (arm_opcodes): Disassemble to unified syntax.
762 (thumb_opcodes): Add missing white space in adr.
763 (arm_decode_shift): New parameter, print_shift. Only decode the
764 shift parameter if set. Adjust callers.
765 (print_insn_arm): Support for operand type q with no shift decode.
767 2007-04-21 Alan Modra <amodra@bigpond.net.au>
769 * i386-opc.c (i386_float_regtab, i386_float_regtab_size): Delete.
771 (i386_regtab): ..here.
772 * i386-opc.h (i386_float_regtab, i386_float_regtab_size): Delete.
774 * ppc-opc.c (powerpc_operands): Delete duplicate entries.
775 (BA_MASK, FXM_MASK, STRM_MASK, VA_MASK, VB_MASK, VC_MASK): Delete.
776 (VD_MASK, WS_MASK, MTMSRD_L, XRT_L): Delete.
777 (powerpc_opcodes): Replace uses of MTMSRD_L and XRT_L.
779 2007-04-20 Nathan Sidwell <nathan@codesourcery.com>
781 * m68k-dis.c (print_insn_arg): Show c04 as rambar0 and c05 as
784 2007-04-20 Alan Modra <amodra@bigpond.net.au>
786 * ppc-dis.c (print_insn_powerpc): Adjust for struct powerpc_operand
788 * ppc-opc.c (powerpc_operands): Replace bit count with bit mask
789 in all entries. Add PPC_OPERAND_SIGNED to DE entry. Remove
790 references to following deleted functions.
791 (insert_bd, extract_bd, insert_dq, extract_dq): Delete.
792 (insert_ds, extract_ds, insert_de, extract_de): Delete.
793 (insert_des, extract_des, insert_li, extract_li): Delete.
794 (insert_nb, insert_rsq, insert_rtq, insert_ev2, extract_ev2): Delete.
795 (insert_ev4, extract_ev4, insert_ev8, extract_ev8): Delete.
796 (num_powerpc_operands): New constant.
797 (XSPRG_MASK): Remove entire SPRG field.
798 (powerpc_opcodes <bcctre, bcctrel>): Use XLBB_MASK not XLYBB_MASK.
800 2007-04-20 Alan Modra <amodra@bigpond.net.au>
802 * ppc-opc.c (DCM, DGM, TE, RMC, R, SP, S): Correct shift.
804 (powerpc_opcodes): Use Z2_MASK in all insns taking RMC operand.
806 2007-04-20 Richard Earnshaw <rearnsha@arm.com>
808 * arm-dis.c (print_insn): Only look for a mapping symbol in the section
811 2007-04-19 Alan Modra <amodra@bigpond.net.au>
813 * Makefile.am: Run "make dep-am".
814 * Makefile.in: Regenerate.
815 * po/POTFILES.in: Regenerate.
817 2007-04-19 Alan Modra <amodra@bigpond.net.au>
819 * ppc-opc.c (powerpc_opcodes): Add cctpl, cctpm, cctph, db8cyc,
820 db10cyc, db12cyc, db16cyc.
822 2007-04-19 Nathan Froyd <froydnj@codesourcery.com>
824 * ppc-opc.c (powerpc_opcodes): Recognize three-operand tlbsxe.
826 2007-04-18 H.J. Lu <hongjiu.lu@intel.com>
828 * i386-dis.c (CRC32_Fixup): New.
829 (PREGRP85, PREGRP86, PREGRP87, PREGRP88, PREGRP89, PREGRP90,
831 (threebyte_0x38_uses_DATA_prefix): Updated for SSE4.2.
832 (threebyte_0x3a_uses_DATA_prefix): Likewise.
833 (prefix_user_table): Add PREGRP85, PREGRP86, PREGRP87,
834 PREGRP88, PREGRP89, PREGRP90 and PREGRP91.
835 (three_byte_table): Likewise.
837 * i386-opc.c (i386_optab): Add SSE4.2 opcodes.
839 * i386-opc.h (CpuSSE4_2): New.
841 (CpuUnknownFlags): Add CpuSSE4_2.
843 2007-04-18 H.J. Lu <hongjiu.lu@intel.com>
845 * i386-dis.c (XMM_Fixup): New.
851 (PREGRP39 ... PREGRP85): New.
852 (threebyte_0x38_uses_DATA_prefix): Updated for SSE4.
853 (threebyte_0x3a_uses_DATA_prefix): Likewise.
854 (prefix_user_table): Add PREGRP39 ... PREGRP85.
855 (three_byte_table): Likewise.
857 (intel_operand_size): Handle dqb_mode, dqd_mode):
861 * i386-opc.c (i386_optab): Add SSE4.1 opcodes.
863 * i386-opc.h (CpuSSE4_1): New.
864 (CpuUnknownFlags): Add CpuSSE4_1.
865 (regKludge): Update comment.
867 2007-04-18 Matthias Klose <doko@ubuntu.com>
869 * Makefile.am (libopcodes_la_LDFLAGS): Use bfd soversion.
870 * Makefile.in: Regenerate.
872 2007-04-14 Steve Ellcey <sje@cup.hp.com>
874 * Makefile.am: Add ACLOCAL_AMFLAGS.
875 * Makefile.in: Regenerate.
877 2007-04-13 H.J. Lu <hongjiu.lu@intel.com>
879 * i386-dis.c: Remove trailing white spaces.
880 * i386-opc.c: Likewise.
881 * i386-opc.h: Likewise.
883 2007-04-11 H.J. Lu <hongjiu.lu@intel.com>
886 * i386-dis.c (GRP1a): New.
887 (GRP1b ... GRPPADLCK2): Update index.
888 (dis386): Use GRP1a for entry 0x8f.
889 (mod, rm, reg): Removed. Replaced by ...
893 2007-04-09 Kazu Hirata <kazu@codesourcery.com>
895 * m68k-dis.c (print_insn_m68k): Restore info->fprintf_func and
896 info->print_address_func if longjmp is called.
898 2007-03-29 DJ Delorie <dj@redhat.com>
900 * m32c-desc.c: Regenerate.
901 * m32c-dis.c: Regenerate.
902 * m32c-opc.c: Regenerate.
904 2007-03-28 H.J. Lu <hongjiu.lu@intel.com>
906 * i386-opc.c (i386_optab): Change InvMem to RegMem for mov and
907 movq. Remove InvMem from sldt, smsw and str.
909 * i386-opc.h (InvMem): Renamed to ...
910 (RegMem): Update comments.
911 (AnyMem): Remove InvMem.
913 2007-03-27 Paul Brook <paul@codesourcery.com>
915 * arm-dis.c (thumb_opcodes): Add entry for undefined insns (0xbe??).
917 2007-03-24 Paul Brook <paul@codesourcery.com>
919 * arm-dis.c (coprocessor_opcodes): Remove superfluous 0x.
920 (print_insn_coprocessor): Handle %<bitfield>x.
922 2007-03-24 Paul Brook <paul@codesourcery.com>
923 Mark Shinwell <shinwell@codesourcery.com>
925 * arm-dis.c (arm_opcodes): Print SRS base register.
927 2007-03-23 H.J. Lu <hongjiu.lu@intel.com>
929 * i386-dis.c (prefix_name): Replace rex64XYZ with rex.WRXB.
931 * i386-opc.c (i386_optab): Add rex.wrxb.
933 2007-03-21 H.J. Lu <hongjiu.lu@intel.com>
935 * i386-dis.c (REX_MODE64): Remove definition.
936 (REX_EXTX): Likewise.
937 (REX_EXTY): Likewise.
938 (REX_EXTZ): Likewise.
939 (USED_REX): Use REX_OPCODE instead of 0x40.
940 Replace REX_MODE64, REX_EXTX, REX_EXTY and REX_EXTZ with REX_W,
941 REX_R, REX_X and REX_B respectively.
943 2007-03-21 H.J. Lu <hongjiu.lu@intel.com>
946 * i386-dis.c (PREGRP38): New.
947 (dis386): Use PREGRP38 for 0x90.
948 (prefix_user_table): Add PREGRP38.
949 (print_insn): Set uses_REPZ_prefix to 1 for pause.
950 (NOP_Fixup1): Properly handle REX bits.
951 (NOP_Fixup2): Likewise.
953 * i386-opc.c (i386_optab): Allow %eax with xchg in 64bit.
954 Allow register with nop.
956 2007-03-20 DJ Delorie <dj@redhat.com>
958 * m32c-asm.c: Regenerate.
959 * m32c-desc.c: Regenerate.
960 * m32c-desc.h: Regenerate.
961 * m32c-dis.h: Regenerate.
962 * m32c-ibld.c: Regenerate.
963 * m32c-opc.c: Regenerate.
964 * m32c-opc.h: Regenerate.
966 2007-03-15 H.J. Lu <hongjiu.lu@intel.com>
968 * i386-opc.c: Include "libiberty.h".
969 (i386_regtab): Remove the last entry.
970 (i386_regtab_size): New.
971 (i386_float_regtab_size): Likewise.
973 * i386-opc.h (i386_regtab_size): New.
974 (i386_float_regtab_size): Likewise.
976 2007-03-15 H.J. Lu <hongjiu.lu@intel.com>
978 * Makefile.am (CFILES): Add i386-opc.c.
979 (ALL_MACHINES): Add i386-opc.lo.
981 * Makefile.in: Regenerated.
983 * configure.in: Add i386-opc.lo for bfd_i386_arch.
984 * configure: Regenerated.
986 * i386-dis.c: Include "opcode/i386.h".
987 (MAXLEN): Renamed to MAX_MNEM_SIZE. Remove definition.
988 (FWAIT_OPCODE): Remove definition.
989 (UNIXWARE_COMPAT): Renamed to SYSV386_COMPAT. Remove definition.
990 (MAX_OPERANDS): Remove definition.
992 * i386-opc.c: New file.
993 * i386-opc.h: Likewise.
995 2007-03-15 H.J. Lu <hongjiu.lu@intel.com>
997 * Makefile.in: Regenerated.
999 2007-03-09 H.J. Lu <hongjiu.lu@intel.com>
1001 * i386-dis.c (OP_Rd): Renamed to ...
1006 2007-03-08 Alan Modra <amodra@bigpond.net.au>
1008 * fr30-asm.c: Regenerate.
1009 * frv-asm.c: Regenerate.
1010 * ip2k-asm.c: Regenerate.
1011 * iq2000-asm.c: Regenerate.
1012 * m32c-asm.c: Regenerate.
1013 * m32r-asm.c: Regenerate.
1014 * m32r-dis.c: Regenerate.
1015 * mt-asm.c: Regenerate.
1016 * mt-ibld.c: Regenerate.
1017 * mt-opc.c: Regenerate.
1018 * openrisc-asm.c: Regenerate.
1019 * xc16x-asm.c: Regenerate.
1020 * xstormy16-asm.c: Regenerate.
1022 * Makefile.am: Run "make dep-am".
1023 * Makefile.in: Regenerate.
1024 * po/POTFILES.in: Regenerate.
1026 2007-03-06 Andreas Krebbel <krebbel1@de.ibm.com>
1028 * opcodes/s390-opc.c (INSTR_RRE_FR, INSTR_RRF_F0FF2, INSTR_RRF_F0FR,
1029 INSTR_RRF_UUFF, INSTR_RRF_0UFF, INSTR_RRF_FFFU, INSTR_RRR_F0FF): New
1030 instruction formats added.
1031 (MASK_RRE_FR, MASK_RRF_F0FF2, MASK_RRF_F0FR, MASK_RRF_UUFF,
1032 MASK_RRF_0UFF, MASK_RRF_FFFU, MASK_RRR_F0FF): New instruction format
1034 * opcodes/s390-opc.txt (lpdfr - tgxt): Decimal floating point
1036 * opcodes/s390-mkopc.c (s390_opcode_cpu_val): S390_OPCODE_Z9_EC added.
1037 (main): z9-ec cpu type option added.
1038 * include/opcode/s390.h (s390_opcode_cpu_val): S390_OPCODE_Z9_EC added.
1040 2007-02-22 DJ Delorie <dj@redhat.com>
1042 * s390-opc.c (INSTR_SS_L2RDRD): New.
1043 (MASK_SS_L2RDRD): New.
1044 * s390-opc.txt (pka): Use it.
1046 2007-02-20 Thiemo Seufer <ths@mips.com>
1047 Chao-Ying Fu <fu@mips.com>
1049 * mips-dis.c (mips_arch_choices): Add DSP R2 support.
1050 (print_insn_args): Add support for balign instruction.
1051 * mips-opc.c (D33): New shortcut for DSP R2 instructions.
1052 (mips_builtin_opcodes): Add DSP R2 instructions.
1054 2007-02-19 Andreas Krebbel <krebbel1@de.ibm.com>
1056 * s390-opc.c (INSTR_RRF_U0FR, MASK_RRF_U0FR): Removed.
1057 (INSTR_RRF_U0RF, MASK_RRF_U0RF): Added.
1058 * s390-opc.txt (cfxbr, cfdbr, cfebr, cgebr, cgdbr, cgxbr, cger, cgdr,
1059 cgxr, cfxr, cfdr, cfer): Instruction type set to INSTR_RRF_U0RF.
1061 2007-02-19 Andreas Krebbel <krebbel1@de.ibm.com>
1063 * s390-opc.txt ("efpc", "sfpc"): Set to RRE_RR_OPT instruction type.
1064 * s390-opc.c (s390_operands): Add RO_28 as optional gpr.
1065 (INSTR_RRE_RR_OPT, MASK_RRE_RR_OPT): New instruction type for efpc
1068 2007-02-16 Nick Clifton <nickc@redhat.com>
1071 * avr-dis.c (comment_start): New variable, contains the prefix to
1072 use when printing addresses in comments.
1073 (print_insn_avr): Set comment_start to an empty space if there is
1074 no symbol table available as the generic address printing code
1075 will prefix the numeric value of the address with 0x.
1077 2007-02-13 H.J. Lu <hongjiu.lu@intel.com>
1079 * i386-dis.c: Updated to use an array of MAX_OPERANDS operands
1082 2007-02-05 Dave Brolley <brolley@redhat.com>
1083 Richard Sandiford <rsandifo@redhat.com>
1084 DJ Delorie <dj@redhat.com>
1085 Graydon Hoare <graydon@redhat.com>
1086 Frank Ch. Eigler <fche@redhat.com>
1087 Ben Elliston <bje@redhat.com>
1089 * Makefile.am (HFILES): Add mep-desc.h mep-opc.h.
1090 (CFILES): Add mep-*.c
1091 (ALL_MACHINES): Add mep-*.lo.
1092 (CLEANFILES): Add stamp-mep.
1093 (CGEN_CPUS): Add mep.
1094 (MEP_DEPS): New variable.
1095 (mep-*): New targets.
1096 * configure.in: Handle bfd_mep_arch.
1097 * disassemble.c (ARCH_mep): New macro.
1098 (disassembler): Handle bfd_arch_mep.
1099 (disassemble_init_for_target): Likewise.
1100 * mep-*: New files for Toshiba Media Processor (MeP).
1101 * Makefile.in: Regenerated.
1102 * configure: Regenerated.
1104 2007-02-05 H.J. Lu <hongjiu.lu@intel.com>
1106 * i386-dis.c (OP_J): Undo the last change. Properly handle 64K
1107 wrap around within the same segment in 16bit mode.
1109 2007-02-02 H.J. Lu <hongjiu.lu@intel.com>
1111 * i386-dis.c (OP_J): Mask to 16bit only if there is a data16
1114 2007-02-02 H.J. Lu <hongjiu.lu@intel.com>
1116 * avr-dis.c (avr_operand): Correct PR number in comment.
1118 2007-02-02 H.J. Lu <hongjiu.lu@intel.com>
1120 * disassemble.c (disassembler_usage): Call
1121 print_i386_disassembler_options for i386 disassembler.
1123 * i386-dis.c (print_i386_disassembler_options): New.
1124 (print_insn): Support the new addr64 option.
1126 2007-02-02 Hiroki Kaminaga <kaminaga@sm.sony.co.jp>
1128 * ppc-dis.c (powerpc_dialect): Handle ppc440.
1129 * ppc-dis.c (print_ppc_disassembler_options): Note the -M440 can
1132 2007-02-02 Alan Modra <amodra@bigpond.net.au>
1134 * ppc-opc.c (insert_bdm): -Many comment.
1135 (valid_bo): Add "extract" param. Accept both powerpc and power4
1136 BO fields when disassembling with -Many.
1137 (insert_bo, extract_bo, insert_boe, extract_boe): Adjust valid_bo call.
1139 2007-01-08 Kazu Hirata <kazu@codesourcery.com>
1141 * m68k-opc.c (m68k_opcodes): Replace cpu32 with
1142 cpu32 | fido_a except on tbl instructions.
1144 2007-01-04 Paul Brook <paul@codesourcery.com>
1146 * arm-dis.c (arm_opcodes): Fix cpsie and cpsid entries.
1148 2007-01-04 Andreas Schwab <schwab@suse.de>
1150 * m68k-opc.c: Fix encoding of signed bit in the cpu32 tbls insns.
1152 2007-01-04 Julian Brown <julian@codesourcery.com>
1154 * arm-dis.c (neon_opcode): Fix disassembly for vshl, vqshl, vrshl,
1155 vqrshl instructions.
1157 For older changes see ChangeLog-2006
1163 version-control: never