1 2001-07-24 Kazu Hirata <kazu@hxi.com>
3 * alpha-dis.c: Fix formatting.
4 * cris-dis.c: Likewise.
5 * m10300-dis.c: Likewise.
6 * tic54x-dis.c: Likewise.
8 2001-07-23 Kazu Hirata <kazu@hxi.com>
10 * m68k-dis.c: Fix formatting.
12 * s390-dis.c: Likewise.
13 * z8k-dis.c: Likewise.
15 2001-07-21 Chris Demetriou <cgd@broadcom.com>
17 * mips-opc.c (mips_builtin_opcodes): Sort c.le.s and c.lt.s
18 into the rest of the surrounding definitions.
20 2001-07-18 Alan Modra <amodra@bigpond.net.au>
22 * i386-dis.c (grps): Print l or w suffix, and require mem modrm
23 for lgdt, lidt, sgdt, sidt.
25 2001-07-13 Philip Blundell <philb@gnu.org>
27 * arm-dis.c (print_insn_arm): Use decimal for offsets in LDR/STR.
29 2001-07-12 Jeff Johnston <jjohnstn@redhat.com>
31 * cgen-asm.in: Include "xregex.h" always to enable the libiberty
33 (@arch@_cgen_build_insn_regex): New routine from Graydon.
34 (@arch@_cgen_assemble_insn): Add Graydon's code to use regex
35 to verify if it is worth parsing the insn as insn "x". Also update
36 error message when insn is not a recognized format of the insn vs
37 when the insn is completely unrecognized.
39 2001-07-11 Frank Ch. Eigler <fche@redhat.com>
41 * cgen-dis.in (print_insn): Use cgen_get_insn_value instead of
43 * cgen-opc.c (cgen_get_insn_value, cgen_put_insn_value): Respect
44 non-zero CGEN_CPU_DESC->insn_chunk_bitsize.
46 2001-07-09 Andreas Jaeger <aj@suse.de>, Karsten Keil <kkeil@suse.de>
48 * i386-dis.c (set_op): Handle 64 bit and 32 bit mode.
49 (OP_J): Use bfd_vma for mask to work properly with 64 bits.
50 (op_address,op_riprel): Use bfd_vma to handle 64 bits.
52 2001-07-05 Ben Elliston <bje@redhat.com>
54 * Makefile.am (CPUDIR): Define.
55 (stamp-m32r): Update dependencies.
57 (stamp-openrisc): Ditto.
58 * Makefile.in: Regenerate.
60 2001-07-03 Zoltan Hidvegi <hzoli@hzoli.2y.net>
62 * ppc-opc.c: Fix encoding of 'clf' instruction.
64 2001-06-30 Geoffrey Keating <geoffk@redhat.com>
66 * cgen-ibld.in (insert_normal): Support CGEN_IFLD_SIGN_OPT.
68 2001-06-28 Geoffrey Keating <geoffk@redhat.com>
70 * cgen-asm.c (cgen_parse_keyword): Allow any first character.
71 * cgen-opc.c (cgen_keyword_add): Ignore special first
72 character when building nonalpha_chars field.
74 2001-06-24 Ben Elliston <bje@redhat.com>
76 * m88k-dis.c: Format to conform to GNU coding standards.
78 2001-06-23 Andreas Jaeger <aj@suse.de>
80 * disassemble.c (disassembler_usage): Add unused attribute.
82 2001-06-22 Eric Christopher <echristo@redhat.com>
84 * mips-opc.c: Move prefx to start of the table.
86 2001-06-22 Stacey Sheldon <ssheldon@Catena.com>
88 * arc-opc.c (insert_st_syntax): Fix over-optimisation of ST
91 2001-06-22 Pauli <pauli@moreton.com.au>
93 * m68k-opc.c: Add wdebug instruction.
95 2001-06-15 Aldy Hernandez <aldyh@redhat.com>
97 * m10300-opc.c (mn10300_opcodes): Change opcode for AM33 subc.
99 2001-06-14 Geoffrey Keating <geoffk@redhat.com>
101 * cgen-asm.c (cgen_parse_keyword): When looking for the
102 boundaries of a keyword, allow any special characters
103 that are actually in one of the allowed keyword.
104 * cgen-opc.c (cgen_keyword_add): Add any special characters
105 to the nonalpha_chars field.
107 2001-06-12 Martin Schwidefsky <schwidefsky@de.ibm.com>
109 * s390-opc.c: Add lgh instruction.
110 * s390-opc.txt: Likewise.
112 2001-06-11 Alan Modra <amodra@bigpond.net.au>
114 * i386-dis.c: Group function prototypes in one place.
115 (FLOATCODE): Redefine as 1.
116 (USE_GROUPS): Redefine as 2.
117 (USE_PREFIX_USER_TABLE): Redefine as 3.
118 (X86_64_SPECIAL): Define as 4.
119 (GRP1b..GRPAMD): Move USE_GROUPS to bytecode1, index to bytecode2.
120 (PREGRP0..PREGRP26): Similarly with USE_PREFIX_USER_TABLE.
121 (dis386_att, dis386_intel, disx86_64_att, disx86_64_intel): Delete.
122 (dis386): New table combining above four tables.
123 (dis386_twobyte_att, dis386_twobyte_intel): Delete.
124 (dis386_twobyte): New table combining above two tables.
125 (x86_64_table): New table to handle x86_64.
127 (float_mem_att, float_mem_intel): Delet.
128 (float_mem): New table combining above two tables.
129 (print_insn_i386): Modify for above.
131 (putop): Handle '{', '|' and '}' to select alternative mnemonics.
132 Return 0 on success, 1 if no valid alternative.
133 (putop <case 'F'>, <case 'H'>): Print nothing for intel_syntax.
134 (putop <case 'T'>): Move to case 'U', and share case 'Q' code.
135 (putop <case 'I'>): Move to case 'T', and share case 'P' code.
136 (OP_REG <case rAX_reg .. rDI_reg>): Handle as for eAX_reg .. eDI_reg
138 (OP_I <case q_mode>): Handle as for v_mode if not 64-bit mode.
139 (OP_I64): If not 64-bit mode, call OP_I.
140 OP_OFF64): If not 64-bit mode, call OP_OFF.
141 (OP_ST, OP_STi, OP_SEG, OP_DIR, OP_OFF, OP_OFF64, OP_MMX): Rename
142 'ignore'/'ignored' to 'bytemode'.
144 2001-06-10 Alan Modra <amodra@bigpond.net.au>
146 * configure.in: Sort 'ta' case statement.
147 * configure: Regenerate.
149 * i386-dis.c (dis386_att): Add 'H' to conditional branch and
151 (disx86_64_att): Likewise.
152 (dis386_twobyte_att): Likewise.
153 (print_insn_i386): Don't print branch hints as a prefix.
154 (putop): 'H' macro prints branch hints.
155 (get64): Kill compile warnings.
157 2001-06-09 Alexandre Oliva <aoliva@redhat.com>
159 * sh-opc.h (sh_table): Don't use empty initializers.
161 2001-06-06 Christian Groessler <cpg@aladdin.de>
163 * z8k-dis.c: Fix formatting.
164 (unpack_instr): Remove unused cases in switch statement. Add
165 safety abort() in default case.
166 (unparse_instr): Add safety abort() in default case.
168 2001-06-06 Peter Jakubek <pjak@snafu.de>
170 * m68k-dis.c (print_insn_m68k): Fix typo.
171 * m68k-opc.c (m68k_opcodes): Correct allowed operands for
172 mcf (ColdFire) div, rem and moveb instructions.
174 2001-06-06 Alan Modra <amodra@bigpond.net.au>
176 * i386-dis.c (cond_jump_flag, loop_jcxz_flag): Define.
177 (cond_jump_mode, loop_jcxz_mode): Define.
178 (dis386_att): Add cond_jump_flag and loop_jcxz_flag as
179 appropriate, and 'F' suffix to loop insns.
180 (disx86_64_att): Likewise.
181 (dis386_twobyte_att): Likewise.
182 (print_insn_i386): Don't output addr prefix for loop, jcxz insns.
183 Output data size prefix for long conditional jumps. Output cs and
185 (putop): Handle 'F', and mark PREFIX_ADDR used for case 'E'.
186 (OP_J): Don't make PREFIX_DATA used.
188 2001-06-04 Alexandre Oliva <aoliva@redhat.com>
190 * sh-opc.h (sh_table): Complete last element entry to avoid
193 2001-05-16 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
195 * mips-dis.c (mips_isa_type): Add MIPS r12k support.
197 2001-05-23 Alan Modra <amodra@one.net.au>
199 * arc-opc.c: Whitespace changes.
201 2001-05-18 Hans-Peter Nilsson <hp@axis.com>
203 * cris-opc.c (cris_spec_regs): Add missing initializer field for
206 2001-05-15 Frank Ch. Eigler <fche@redhat.com>
208 * cgen-dis.in (extract_normal): Complete support for min<base case.
210 2001-05-15 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
212 * mips-dis.c (INSNLEN): Rename MAXLEN.
213 (std_reg_names): Replace by mips32_reg_names and mips64_reg_names.
214 (print_insn_arg): Remove $ prefix of register names.
215 (set_mips_isa_type): Remove.
216 (mips_isa_type): New function.
217 (get_mips_isa): New Function.
218 (print_insn_mips): Rename _print_insn_mips.
219 (_print_insn_mips): New function, contains code which was
220 duplicated in print_insn_big_mips and print_insn_little_mips.
221 (print_insn_big_mips): Moved code to _print_insn_mips.
222 (print_insn_little_mips): Likewise.
223 (print_mips16_insn_arg): Remove $ prefix of register names.
224 Print error message before abort.
226 2001-05-14 J.T. Conklin <jtc@redback.com>
228 * ppc-opc.c (powerpc_opcodes): Fixed extended opcode field of
229 simplified mnemonics used for setting PPC750-specific special
232 2001-05-12 H.J. Lu <hjl@gnu.org>
234 * i386-dis.c (print_insn_i386): Always set `mod', `reg' and
237 2001-05-12 Peter Targett <peter.targett@arccores.com>
239 * arc-opc.c (arc_reg_names): Correct attribute for lp_count
240 register to r/w. Formatting fixes throughout file.
242 2001-05-12 Alan Modra <amodra@one.net.au>
244 * i386-dis.c (prefix_user_table): Correct movq2dq, movdq2q, and
246 (twobyte_has_modrm): Update table.
247 (need_modrm): Give it file scope.
248 (MODRM_CHECK): Define.
249 (dofloat): Use MODRM_CHECK.
254 2001-05-07 Frank Ch. Eigler <fche@redhat.com>
256 * cgen-dis.in (default_print_insn): Tolerate min<base instructions
257 even at end of a section.
258 * cgen-ibld.in (extract_normal): Tolerate min!=base!=max instructions
259 by ignoring precariously-unpacked insn_value in favor of raw buffer.
261 2001-05-03 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
263 * disassemble.c (disassembler_usage): Remove unused attribute.
265 2001-05-04 Frank Ch. Eigler <fche@redhat.com>
267 * m32r-dis.c, -asm.c, -ibld.c: Regenerated with disassembler fixes.
269 2001-05-04 Frank Ch. Eigler <fche@redhat.com>
271 * cgen-dis.in (print_insn): Remove call to read_insn. Instead,
272 assume incoming buffer already has the base insn loaded. Handle
273 smaller-than-base instructions for variable-length case.
275 2001-05-04 Alan Modra <amodra@one.net.au>
277 * i386-dis.c (Ev, Ed): Remove duplicate define.
280 (OP_XS): New function.
281 (dis386_twobyte_att): Correct pinsrw, pextrw, pmovmskb, and
283 (dis386_twobyte_intel): Likewise.
284 (prefix_user_table): Use MS for maskmovq operand.
286 2001-04-27 Johan Rydberg <jrydberg@opencores.org>
288 * Makefile.am: Add OpenRISC target.
289 * Makefile.in: Regenerated.
291 * disassemble.c (disassembler): Recognize the OpenRISC disassembly.
293 * configure.in (bfd_openrisc_arch): Add target.
294 * configure: Regenerated.
296 * openrisc-asm.c: New file.
297 * openrisc-desc.c: Likewise.
298 * openrisc-desc.h: Likewise.
299 * openrisc-dis.c: Likewise.
300 * openrisc-ibld.c: Likewise.
301 * openrisc-opc.c: Likewise.
302 * openrisc-opc.h: Likewise.
304 2001-04-24 Christian Groessler <cpg@aladdin.de>
306 * z8k-dis.c: add names of control registers (ctrl_names);
307 (seg_length): provides instruction length fixup for segmented
308 mode; (unpack_instr): correctly handle ARG_DISP16, ARG_DISP12,
309 CLASS_0DISP7, CLASS_1DISP7, CLASS_DISP8 and CLASS_PR cases;
310 (unparse_intr): handle CLASS_PR, print addresses without '#'
311 * z8k-opc.h: re-created with new z8kgen
312 * z8kgen.c: merged in fixes which were in existing z8k-opc.h; new
313 entries for ldctl/ldctlb instruction
315 2001-04-06 Andreas Jaeger <aj@suse.de>
317 * i386-dis.c: Add ffreep instruction.
319 2001-03-30 Alexandre Oliva <aoliva@redhat.com>
321 * ppc-opc.c (insert_mbe): Shift mask initializer as long.
323 2001-03-24 Alan Modra <alan@linuxcare.com.au>
325 * i386-dis.c (PREGRP25): Define.
326 (dis386_twobyte_att): Use here in place of "movntq" entry.
327 (dis386_twobyte_intel): Likewise.
328 (prefix_user_table): Add PREGRP25 entry for "movntq" and "movntdq".
330 (dis386_twobyte_att): Use here.
331 (dis386_twobyte_intel): Likewise.
332 (prefix_user_table): Add PREGRP26 entry for "punpcklqdq".
333 (prefix_user_table <maskmovdqu>): XM operand, not MX.
334 (prefix_user_table): Cosmetic changes to "bad" entries.
336 2001-03-23 Nick Clifton <nickc@redhat.com>
338 * mips-opc.c: Remove extraneous whitespace.
339 * mips-dis.c: Remove extraneous whitespace.
341 2001-03-22 Ben Elliston <bje@redhat.com>
343 * cgen-asm.in (@arch@_cgen_assemble_insn): Move tmp_errmsg
344 declaration inside CGEN_VERBOSE_ASSEMBLER_ERRORS conditional.
345 * cgen-ibld.in (put_insn_int_value): Mark cd parameter as unused
346 to allay a compiler warning.
348 2001-03-22 Alan Modra <alan@linuxcare.com.au>
350 * i386-dis.c (dis386_twobyte_att): Add entries for paddq, psubq.
351 (dis386_twobyte_intel): Likewise.
352 (twobyte_has_modrm): Set entry for paddq, psubq.
354 2001-03-20 Patrick Macdonald <patrickm@redhat.com>
356 * cgen-dis.in (print_insn_@arch@): Add support for target machine
357 determination via CGEN_COMPUTE_MACH.
358 * fr30-desc.c: Regenerate.
359 * fr30-dis.c: Regenerate.
360 * fr30-opc.h: Regenerate.
361 * m32r-desc.c: Regenerate.
362 * m32r-dis.c: Regenerate.
363 * m32r-opc.h: Regenerate.
364 * m32r-opinst.c: Regenerate.
366 2001-03-20 H.J. Lu <hjl@gnu.org>
368 * configure.in: Remove the redundent AC_ARG_PROGRAM.
369 * configure: Rebuild.
371 2001-03-19 Jim Wilson <wilson@redhat.com>
373 * ia64-gen.c (fetch_insn_class): If xsect, then ignore comment and
374 notestr if larger than xsect.
375 (in_class): Handle format M5.
376 * ia64-asmtab.c: Regnerate.
378 2001-03-19 John David Anglin <dave@hiauly1.hia.nrc.ca>
380 * vax-dis.c (print_insn_vax): Only fetch two bytes if the info buffer
381 has more than one byte left to read.
383 2001-03-16 Martin Schwidefsky <schwidefsky@de.ibm.com>
385 * s390-opc.c: Add new opcodes. Smooth out formatting.
386 * s390-opc.txt: Add new opcodes.
388 2001-03-06 Nick Clifton <nickc@redhat.com>
390 * arm-dis.c (print_insn_thumb): Compute destination address
391 of BLX(1) instruction by taking bit 1 from PC and not from bit
394 2001-03-06 Igor Shevlyakov <igor@windriver.com>
396 * m68k-dis.c (print_insn_m68k): Recognize Coldfire CPUs
397 so command line switches will work.
399 2001-03-05 Dave Brolley <brolley@redhat.com>
401 * fr30-asm.c: Regenerate.
402 * fr30-desc.c: Regenerate.
403 * fr30-desc.h: Regenerate.
404 * fr30-dis.c: Regenerate.
405 * fr30-ibld.c: Regenerate.
406 * fr30-opc.c: Regenerate.
407 * fr30-opc.h: Regenerate.
408 * m32r-asm.c: Regenerate.
409 * m32r-desc.c: Regenerate.
410 * m32r-desc.h: Regenerate.
411 * m32r-dis.c: Regenerate.
412 * m32r-ibld.c: Regenerate.
413 * m32r-opc.c: Regenerate.
414 * m32r-opc.h: Regenerate.
415 * m32r-opinst.c: Regenerate.
417 2001-02-28 Igor Shevlyakov <igor@windriver.com>
419 * m68k-opc.c: fix cpushl according to Motorola. Enable
420 bunch of instructions for Coldfire 5407 and add all new.
422 2001-02-27 Alan Modra <alan@linuxcare.com.au>
424 * configure.in (BFD_VERSION): Do without grep.
425 * configure: Regenerate.
426 * Makefile.am: Run "make dep-am".
427 * Makefile.in: Regenerate.
429 2001-02-23 David Mosberger <davidm@hpl.hp.com>
431 * ia64-opc-a.c: Add missing pseudo-ops for "cmp" and "cmp4".
432 * ia64-asmtab.c: Regenerate.
434 2001-02-21 David Mosberger <davidm@hpl.hp.com>
436 * ia64-opc-d.c (ia64_opcodes_d): Break the "add" pattern into two
437 separate variants: one for IMM22 and the other for IMM14.
438 * ia64-asmtab.c: Regenerate.
440 2001-02-21 Greg McGary <greg@mcgary.org>
442 * cgen-opc.c (cgen_get_insn_value): Add missing `return'.
444 2001-02-20 H.J. Lu <hjl@gnu.org>
446 * Makefile.am (ia64-ic.tbl): Remove the target.
447 (ia64-raw.tbl): Likewise.
448 (ia64-waw.tbl): Likewise.
449 (ia64-war.tbl): Likewise.
450 (ia64-asmtab.c): Generate it in the source directory.
451 * Makefile.in: Regenerated.
453 2001-02-18 lars brinkhoff <lars@nocrew.org>
455 * Makefile.am: Add PDP-11 target.
456 * configure.in: Likewise.
457 * disassemble.c: Likewise.
458 * pdp11-dis.c: New file.
459 * pdp11-opc.c: New file.
461 2001-02-14 Jim Wilson <wilson@redhat.com>
463 * ia64-ic.tbl: Update from Intel. Add setf to fr-writers.
464 * ia64-asmtab.c: Regenerate.
466 Mon Feb 12 17:41:26 CET 2001 Jan Hubicka <jh@suse.cz>
468 * i386-dis.c (prefix_user_t): Add 'Y' to SSE ineger converison
472 2001-02-11 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
474 * mips-dis.c (print_insn_arg): Use top four bits of the address of
475 the following instruction not of the jump itself for the jump
477 (print_mips16_insn_arg): Likewise.
479 2001-02-11 Michael Sokolov <msokolov@ivan.Harhan.ORG>
481 * Makefile.am (stamp-lib): ranlib the libopcodes.a in the build
483 * Makefile.in: Regenerate.
485 2001-02-09 Schwidefsky <schwidefsky@de.ibm.com>
487 * Makefile.am: Add linux target for S/390.
488 * Makefile.in: Likewise.
489 * configure.in: Likewise.
490 * disassemble.c: Likewise.
491 * s390-dis.c: New file.
492 * s390-mkopc.c: New file.
493 * s390-opc.c: New file.
494 * s390-opc.txt: New file.
496 2001-02-05 Jim Wilson <wilson@redhat.com>
498 * ia64-asmtab.c: Revert 2000-12-16 change.
500 2001-02-02 Patrick Macdonald <patrickm@redhat.com>
502 * fr30-desc.h: Regenerate with CGEN_MAX_SYNTAX_ELEMENTS.
503 * m32r-desc.h: Regenerate.
505 Thu Feb 1 16:29:06 MET 2001 Jan Hubicka <jh@suse.cz>
507 * i386-dis.c (dis386_att, grps): Use 'T' for push/pop
508 (putop): Handle 'T', alphabetize order, fix 'I' handling in Intel syntax
510 2001-01-14 Alan Modra <alan@linuxcare.com.au>
512 * hppa-dis.c (print_insn_hppa): Handle '>' and '<' arg types.
514 2001-01-13 Nick Clifton <nickc@redhat.com>
516 * disassemble.c: Remove spurious white space.
518 Sat Jan 13 01:48:24 MET 2001 Jan Hubicka <jh@suse.cz>
520 * i386-dis.c (dis386_att, disx86_64_att): Fix ret, lret and iret
523 2001-01-11 Peter Targett <peter.targett@arccores.com>
525 * configure.in: Add arc-ext.lo for bfd_arc_arch selection.
526 * Makefile.am (C_FILES): Add arc-ext.c.
527 (ALL_MACHINES) Add arc-ext.lo.
528 (INCLUDES) Add opcode directory to list.
529 New dependency entry for arc-ext.lo.
530 * disassemble.c (disassembler): Correct call to
531 arc_get_disassembler.
532 * arc-opc.c: New update for ARC, including full base
533 instructions for ARC variants.
534 * arc-dis.h, arc-dis.c: New update for ARC, including
535 extensibility functionality.
536 * arc-ext.h, arc-ext.c: New files for handling extensibility.
538 2001-01-10 Jan Hubicka <jh@suse.cz>
540 * i386-dis.c (PREGRP15 - PREGRP24): New.
541 (dis386_twobyt): Add SSE2 instructions.
542 (twobyte_uses_SSE_prefix: Rename from ... ; add new SSE instructions.
543 (twobyte_uses_f3_prefix): ... this one.
544 (grps): Add SSE instructions.
545 (prefix_user_table): Add two new slots; add SSE2 instructions.
546 (print_insn_i386): Rename uses_f3_prefix to uses_SSE_prefix;
547 Handle the REPNZ and Data16 prefixes as well; do proper lookup
548 to prefix_user_table.
549 (OP_E): Accept mfence and lfence as well.
550 (OP_MMX): Data16 prefix turns MMX to SSE; support REX extensions.
551 (OP_XMM): Support REX extensions.
555 2001-01-09 Nick Clifton <nickc@redhat.com>
557 * arm-dis.c (print_insn): Set pc to zero for instructions with
558 a reloc associated with them.
560 2001-01-09 Jeff Johnston <jjohnstn@redhat.com>
562 * cgen-asm.in (parse_insn_normal): Changed syn to be
563 CGEN_SYNTAX_CHAR_TYPE. Changed all references to *syn
564 as character to use CGEN_SYNTAX_CHAR macro and all comparisons
565 to '\0' to use 0 instead.
566 * cgen-dis.in (print_insn_normal): Ditto.
567 * cgen-ibld.in (insert_insn_normal, extract_insn_normal): Ditto.
569 2001-01-05 Jan Hubicka <jh@suse.cz>
571 * i386-dis.c: Add x86_64 support.
572 (rex): New static variable.
573 (REX_MODE64, REX_EXTX, REX_EXTY, REX_EXTZ): New constants.
574 (USED_REX): New macro.
575 (Ev, Ed, Rm, Iq, Iv64, Cm, Dm, Rm*, Ob64, Ov64): New macros.
576 (OP_I64, OP_OFF64, OP_IMREG): New functions.
577 (OP_REG, OP_OFF): Declare.
578 (get64, get32, get32s): New functions.
579 (r??_reg): New constants.
580 (dis386_att): Change templates of instruction implicitly promoted
581 to 64bit; change e?? to RMe?? for unwind RM byte instructions.
583 (dis386_intel): Likewise.
584 (dixx86_64_att): New table based on dis386_att.
585 (dixx86_64_intel): New table based on dis386_intel.
586 (names64, names8rex): New global variable.
587 (names32, names16): Add extended registers.
588 (prefix_user_t): Recognize rex prefixes.
589 (prefix_name): Print REX prefixes nicely.
590 (op_riprel): New global variable.
591 (start_pc): Set type to bfd_vma.
592 (print_insn_i386): Detect the 64bit mode and use proper table;
593 move ckprefix after initializing the buffer; output unused rex prefixes;
594 output information about target of RIP relative addresses.
595 (putop): Support 'O' and 'I'. Update handling of "P', 'Q', 'R' and 'S';
596 (print_operand_value): New function.
597 (OP_E, OP_G, OP_REG, OP_I, OP_J, OP_DIR, OP_OFF, OP_D): Add support for
598 REX prefix and new modes.
599 (get64, get32s): New.
600 (get32): Return bfd_signed_vma type.
601 (set_op): Initialize the op_riprel.
602 * disassemble.c (disassembler): Recognize the x86-64 disassembly.
604 2001-01-03 Richard Sandiford <r.sandiford@redhat.com>
606 cgen-dis.in (read_insn): Use bfd_get_bits()
608 2001-01-02 Richard Sandiford <rsandifo@redhat.com>
610 * cgen-dis.c (hash_insn_array): Use bfd_put_bits().
611 (hash_insn_list): Likewise
612 * cgen-ibld.in (insert_1): Use bfd_put_bits() and bfd_get_bits().
613 (extract_1): Use bfd_get_bits().
614 (extract_normal): Apply sign extension to both extraction
616 * cgen-opc.c (cgen_get_insn_value): Use bfd_get_bits()
617 (cgen_put_insn_value): Use bfd_put_bits()
619 2000-12-28 Frank Ch. Eigler <fche@redhat.com>
621 * cgen-asm.in (parse_insn_normal): Print better error message for
622 instructions with missing operands.
624 2000-12-21 Santeri Paavolainen <santtu@ssh.com>
626 * cgen-opc.c: Include alloca.h if HAVE_ALLOCA_H is defined.
628 2000-12-16 Nick Clifton <nickc@redhat.com>
630 * Makefile.in: Regenerate.
631 * aclocal.m4: Regenerate.
632 * config.in: Regenerate.
633 * configure.in: Add spacing.
634 * configure: Regenerate.
635 * ia64-asmtab.c: Regenerate.
636 * po/opcodes.pot: Regenerate.
638 2000-12-12 Frank Ch. Eigler <fche@redhat.com>
640 * cgen-asm.in (@arch@_cgen_assemble_insn): Prefer printing insert-time
641 error messages over later parse-time ones.
643 2000-12-12 Jim Wilson <wilson@redhat.com>
645 * ia64-dis.c (print_insn_ia64): Cast away const on ia64_free_opcode
647 * ia64-gen.c (insert_deplist): Cast sizeof result to int.
648 (print_dependency_table): Print NULL if semantics field not set.
649 (insert_opcode_dependencies): Mark cmp parameter as unused.
650 (print_main_table): Use fprintf_vma to print long long fields.
651 (main): Mark argv paramter as unused. Convert to old style definition.
652 * ia64-opc.c (ia64_find_dependency): Cast sizeof result to int.
653 * ia64-asmtab.c: Regnerate.
655 2000-12-09 Nick Clifton <nickc@redhat.com>
657 * m32r-dis.c (print_insn): Prevent re-read of instruction from
660 * fr30-dis.c: Regenerate.
662 2000-12-08 Peter Targett <peter.targett@arccores.com>
664 * configure.in: Add arc-ext.lo for bfd_arc_arch selection.
665 * Makefile.am (C_FILES): Add arc-ext.c.
666 (ALL_MACHINES) Add arc-ext.lo.
667 (INCLUDES) Add opcode directory to list.
668 New dependency entry for arc-ext.lo.
669 * disassemble.c (disassembler): Correct call to
670 arc_get_disassembler.
671 * arc-opc.c: New update for ARC, including full base
672 instructions for ARC variants.
673 * arc-dis.h, arc-dis.c: New update for ARC, including
674 extensibility functionality.
675 * arc-ext.h, arc-ext.c: New files for handling extensibility.
677 2000-12-03 Chris Demetriou cgd@sibyte.com
679 * mips-opc.c (mips_builtin_opcodes): Use the WR_HILO, RD_HILO,
680 MOD_HILO, and MOD_LO macros.
682 * mips-opc.c (M1, M2): Delete.
683 (mips_builtin_opcodes): Remove all uses of M1.
685 * mips-opc.c (mips_builtin_opcodes): Make the dmfc2 and dmtc2
686 instructions take "G" format second operands and use the
688 There are mfc3 and mtc3 opcodes, so add dmfc3 and dmtc3 opcodes to
690 Delete "sel" code operands from mfc1 and mtc1.
691 Add MIPS64 opcode changes (dclo, dclz), and "sel" code variants
694 2000-12-03 Ed Satterthwaite ehs@sibyte.com and
695 Chris Demetriou cgd@sibyte.com
697 * mips-opc.c (mips_builtin_opcodes): Finish additions
698 for MIPS32 support, and clean up existing entries for
699 aesthetics, consistency with the MIPS32 ISA, and
700 with consistency the rest of the table.
702 2000-12-01 Nick Clifton <nickc@redhat.com>
704 * mips16-opc.c (mips16_opcodes): Add initialiser for membership
707 2000-12-01 Chris Demetriou <cgd@sibyte.com>
709 mips-dis.c (print_insn_arg): Handle new 'U' and 'J' argument
710 specifiers. Update 'B' for new constant names, and remove
712 mips-opc.c (mips_builtin_opcodes): Place "pref" and "ssnop"
713 near the top of the array, so they are disassembled properly.
714 Enable "ssnop" for MIPS32. Add "break" variant with 20 bit
715 code for MIPS32. Update "clo" and "clz" to use 'U' operand
716 specifier. Add 'H' format specifier variants for "mfc1,"
717 "mfc2," "mfc3," "mtc1," "mtc2," and "mtc3" for MIPS32. Update
718 MIPS32 "sdbbp" to use 'B' operand specifier. Add MIPS32
719 "wait" variant which uses 'J' operand specifier.
721 * mips-dis.c (set_mips_isa_type): Update to use
722 CPU_UNKNOWN and ISA_* constants. Add bfd_mach_mips32 case.
723 Replace bfd_mach_mips4K with bfd_mach_mips32_4k case.
724 * mips-opc.c (I32): New constant for instructions added in
727 (mips_builtin_opcodes) Replace all uses of P4 with I32.
729 * mips-dis.c (set_mips_isa_type): Add cases for
730 bfd_mach_mips5 and bfd_mach_mips64.
731 * mips-opc.c (I64): New definitions.
733 * mips-dis.c (set_mips_isa_type): Add case for
736 2000-11-28 Hans-Peter Nilsson <hp@bitrange.com>
738 * sh-dis.c (print_insn_ddt): Make insn_x, insn_y unsigned.
739 (print_insn_ppi): Make nib1, nib2, nib3 unsigned.
740 Initialize variable dc to NULL.
741 (print_insn_shx): Remove unused label d_reg_n.
743 2000-11-24 Nick Clifton <nickc@redhat.com>
745 * arm-opc.h: Add new opcode formatting parameter 'B'.
746 (arm_opcodes): Add XScale, v5, and v5te instructions.
747 (thumb_opcodes): Add v5t instructions.
749 * arm-dis.c (print_insn_arm): Handle new 'B' format
751 (print_insn_thumb): Decode BLX(1) instruction.
753 2000-11-21 Chris Demetriou <cgd@sibyte.com>
755 * mips-opc.c: Fix file header comment.
757 2000-11-14 Hans-Peter Nilsson <hp@axis.com>
759 * cris-dis.c (cris_get_disassembler): If abfd is NULL, return
760 print_insn_cris_with_register_prefix.
762 2000-11-11 Alexandre Oliva <aoliva@redhat.com>
764 * sh-opc.h: The operand of `mov.w r0, (<disp>,GBR)' is IMM1, not 0.
766 2000-11-07 Matthew Green <mrg@redhat.com>
768 * cgen-dis.in (print_insn): All insns which can fit into insn_value
769 must be loaded there in their entirety.
771 2000-10-20 Jakub Jelinek <jakub@redhat.com>
773 * sparc-dis.c (v9a_asr_reg_names): Add v9b ASRs.
774 (compute_arch_mask): Add v8plusb and v9b machines.
775 (print_insn_sparc): siam mode decoding, accept ASRs up to 25.
776 * sparc-opc.c: Support for Cheetah instruction set.
777 (prefetch_table): Add #invalidate.
779 2000-10-16 Nick Clifton <nickc@redhat.com>
781 * mcore-dis.c (imsk): Change mask for OC to 0xFE00.
783 2000-10-06 Dave Brolley <brolley@redhat.com>
785 * fr30-desc.h: Regenerate.
786 * m32r-desc.h: Regenerate.
787 * m32r-ibld.c: Regenerate.
789 2000-10-05 Jim Wilson <wilson@redhat.com>
791 * ia64-ic.tbl: Update from Intel.
792 * ia64-asmtab.c: Regenerate.
794 2000-10-04 Kazu Hirata <kazu@hxi.com>
796 * ia64-gen.c: Convert C++-style comments to C-style comments.
797 * tic54x-dis.c: Likewise.
799 2000-09-29 Hans-Peter Nilsson <hp@axis.com>
801 Changes to add dollar prefix to registers for files where user symbols
802 don't have a leading underscore. Fix formatting.
803 * cris-dis.c (REGISTER_PREFIX_CHAR): New.
804 (format_reg): Add parameter with_reg_prefix. All callers changed.
805 (print_with_operands): Ditto.
806 (print_insn_cris_generic): Renamed from print_insn_cris, add
807 parameter with_reg_prefix.
808 (print_insn_cris_with_register_prefix,
809 print_insn_cris_without_register_prefix, cris_get_disassembler):
811 * disassemble.c (disassembler) [ARCH_cris]: Call cris_get_disassembler.
813 2000-09-22 Jim Wilson <wilson@redhat.com>
815 * ia64-opc-f.c (ia64_opcodes_f): Add fpcmp pseudo-ops for
816 gt, ge, ngt, and nge.
817 * ia64-asmtab.c: Regenerate.
819 * ia64-dis.c (print_insn_ia64): Revert Aug 7 byte skip count change.
820 * ia64-gen.c (parse_semantics): Handle IA64_DVS_STOP.
821 (lookup_specifier): Handle "PR%, 1 to 15" and "PR%, 16 to 62".
822 * ia64-ic.tbl, ia64-raw.tbl, ia64-war.tbl, ia64-waw.tbl: Update.
823 * ia64-asmtab.c: Regnerate.
825 2000-09-13 Anders Norlander <anorland@acc.umu.se>
827 * mips-opc.c (mips_builtin_opcodes): Support cache instruction on 4K cores.
828 Add mfc0 and mtc0 with sub-selection values.
829 Add clo and clz opcodes.
830 Add msub and msubu instructions for MIPS32.
831 Add madd/maddu aliases for mad/madu for MIPS32.
832 Support wait, deret, eret, movn, pref for MIPS32.
833 Support tlbp, tlbr, tlbwi, tlbwr.
836 * mips-dis.c (print_insn_arg): Print sdbbp 'm' args.
837 (print_insn_arg): Handle 'H' args.
838 (set_mips_isa_type): Recognize 4K.
839 Use CPU_* defines instead of hardcoded numbers.
841 2000-09-11 Catherine Moore <clm@redhat.com>
843 * d30v-opc.c (d30v_operand_t): New operand type Rb2.
844 (d30v_format_tab): Use Rb2 for modinc and moddec.
846 2000-09-07 Catherine Moore <clm@redhat.com>
848 * d30v-opc.c (d30v_format_tab): Use format Ra for
851 2000-09-06 Alexandre Oliva <aoliva@redhat.com>
853 * configure: Rebuilt with new libtool.m4.
855 2000-09-05 Nick Clifton <nickc@redhat.com>
857 * configure: Regenerate.
858 * po/opcodes.pot: Regenerate.
860 2000-08-31 Alexandre Oliva <aoliva@redhat.com>
862 * acinclude.m4: Include libtool and gettext macros from the
864 * aclocal.m4, configure: Rebuilt.
866 2000-08-30 Kazu Hirata <kazu@hxi.com>
868 * tic80-dis.c: Fix formatting.
870 2000-08-29 Kazu Hirata <kazu@hxi.com>
872 * w65-dis.c: Fix formatting.
874 2000-08-28 Mark Hatle <mhatle@mvista.com>
876 * ppc-opc.c: Add XTLB macro for a few PPC 4xx extended mnemonics.
877 (powerpc_opcodes): Add table entries for PPC 405 instructions.
878 Changed rfci, icbt, mfdcr, dccci, mtdcr, iccci from PPC to PPC403
879 instructions. Added extended mnemonic mftbl as defined in the
880 405GP manual for all PPCs.
882 2000-08-28 Jim Wilson <wilson@redhat.com>
884 * ia64-dis.c (print_insn_ia64): Add failed label after ia64_free_opcode
885 call. Change last goto to use failed instead of done.
887 2000-08-28 Dave Brolley <brolley@redhat.com>
889 * cgen-ibld.in (cgen_put_insn_int_value): New function.
890 (insert_normal): Allow for non-zero word_offset with CGEN_INT_INSN_P.
891 (insert_insn_normal): Use cgen_put_insn_int_value with CGEN_INT_INSN_P.
892 (extract_normal): Allow for non-zero word_offset with CGEN_INT_INSN_P.
893 * cgen-dis.in (read_insn): New static function.
894 (print_insn): Use read_insn to read the insn into the buffer and set
896 (print_insn): in CGEN_INT_INSN_P, make sure that the entire insn is
898 * fr30-asm.c: Regenerated.
899 * fr30-desc.c: Regenerated.
900 * fr30-desc.h: Regenerated.
901 * fr30-dis.c: Regenerated.
902 * fr30-ibld.c: Regenerated.
903 * fr30-opc.c: Regenerated.
904 * fr30-opc.h: Regenerated.
905 * m32r-asm.c: Regenerated.
906 * m32r-desc.c: Regenerated.
907 * m32r-desc.h: Regenerated.
908 * m32r-dis.c: Regenerated.
909 * m32r-ibld.c: Regenerated.
910 * m32r-opc.c: Regenerated.
912 2000-08-28 Kazu Hirata <kazu@hxi.com>
914 * tic30-dis.c: Fix formatting.
916 2000-08-27 Kazu Hirata <kazu@hxi.com>
918 * sh-dis.c: Fix formatting.
920 2000-08-24 David Edelsohn <dje@watson.ibm.com>
922 * ppc-opc.c (powerpc_opcodes): Add rfid, mtsrd, mtsrdin, mtmsrd.
924 2000-08-24 Kazu Hirata <kazu@hxi.com>
926 * z8k-dis.c: Fix formatting.
928 2000-08-16 Jim Wilson <wilson@redhat.com>
930 * ia64-ic.tbl (pr-readers-nobr-nomovpr): Add addl, adds. Delete
931 break, mov-immediate, nop.
932 * ia64-opc-f.c: Delete fpsub instructions.
933 * ia64-opc-m.c: Add POSTINC to all instructions with postincrement
934 address operand. Rewrite using macros to avoid long lines.
935 * ia64-opc.h (POSTINC): Define.
936 * ia64-asmtab.c: Regenerate.
938 2000-08-15 Jim Wilson <wilson@redhat.com>
940 * ia64-ic.tbl: Add missing entries.
942 2000-08-08 Jason Eckhardt <jle@redhat.com>
944 * i860-dis.c (print_br_address): Change third argument from int
947 2000-08-07 Richard Henderson <rth@redhat.com>
949 * ia64-dis.c (print_insn_ia64): Get byte skip count correct
950 for MLI templates. Handle IA64_OPND_TGT64.
952 2000-08-04 Ben Elliston <bje@redhat.com>
954 * cgen-dis.in, cgen-asm.in, cgen-ibld.in: New files.
957 2000-08-02 Jim Wilson <wilson@redhat.com>
959 * ia64-dis.c (print_insn_ia64): Call ia64_free_opcode at end.
961 2000-07-29 Marek Michalkiewicz <marekm@linux.org.pl>
963 * avr-dis.c (avr_operand): Use PARAMS macro in declaration.
964 Change return type from void to int. Check the combination
965 of operands, return 1 if valid. Fix to avoid BUF overflow.
966 Report undefined combinations of operands in COMMENT.
967 Report internal errors to stderr. Output the adiw/sbiw
968 constant operand in both decimal and hex.
969 (print_insn_avr): Disassemble ldd/std with displacement of 0
970 as ld/st. Check avr_operand () return value, handle invalid
971 combinations of operands like unknown opcodes.
973 2000-07-28 Ben Elliston <bje@redhat.com>
975 * Makefile.am (CGEN, CGENDEPS, CGENDIR, CGENFLAGS): New.
976 (run-cgen, stamp-m32r, stamp-fr30): New targets.
977 * Makefile.in: Regenerate.
978 * configure.in: Add --enable-cgen-maint option.
979 * configure: Regenerate.
981 2000-07-26 Dave Brolley <brolley@redhat.com>
983 * cgen-opc.c (cgen_hw_lookup_by_name): 'i' is now unsigned.
984 (cgen_hw_lookup_by_num): Ditto.
985 (cgen_operand_lookup_by_name): Ditto.
986 (print_address): Ditto.
987 (print_keyword): Ditto.
988 * cgen-dis.c (hash_insn_array): Mark unused parameters with
990 * cgen-asm.c (hash_insn_array): Mark unused parameters with
992 (cgen_parse_keyword): Ditto.
994 2000-07-22 Jason Eckhardt <jle@redhat.com>
996 * i860-dis.c: New file.
997 (print_insn_i860): New function.
998 (print_br_address): New function.
999 (sign_extend): New function.
1000 (BITWISE_OP): New macro.
1001 (I860_REG_PREFIX): New macro.
1002 (grnames, frnames, crnames): New structures.
1004 * disassemble.c (ARCH_i860): Define.
1005 (disassembler): Add check for bfd_arch_i860 to set disassemble
1006 function to print_insn_i860.
1008 * Makefile.in (CFILES): Added i860-dis.c.
1009 (ALL_MACHINES): Added i860-dis.lo.
1010 (i860-dis.lo): New dependences.
1012 * configure.in: New bits for bfd_i860_arch.
1014 * configure: Regenerated.
1016 2000-07-20 Hans-Peter Nilsson <hp@axis.com>
1018 * Makefile.am (CFILES): Add cris-dis.c and cris-opc.c.
1019 (ALL_MACHINES): Add cris-dis.lo and cris-opc.lo.
1020 (cris-dis.lo, cris-opc.lo): New rules.
1021 * Makefile.in: Rebuild.
1022 * configure.in (bfd_cris_arch): New target.
1023 * configure: Rebuild.
1024 * disassemble.c (ARCH_cris): Define.
1025 (disassembler): Support ARCH_cris.
1026 * cris-dis.c, cris-opc.c: New files.
1027 * po/POTFILES.in, po/opcodes.pot: Regenerate.
1029 2000-07-11 Jakub Jelinek <jakub@redhat.com>
1031 * sparc-opc.c (sparc_opcodes): popc has 0 in rs1, not rs2.
1032 Reported by Bill Clarke <llib@computer.org>.
1034 2000-07-09 Geoffrey Keating <geoffk@redhat.com>
1036 * ppc-opc.c (powerpc_opcodes): Correct suffix for vslw.
1037 Patch by Randall J Fisher <rfisher@ecn.purdue.edu>.
1039 2000-07-09 Alan Modra <alan@linuxcare.com.au>
1041 * hppa-dis.c (fput_reg, fput_fp_reg, fput_fp_reg_r, fput_creg,
1042 fput_const, extract_3, extract_5_load, extract_5_store,
1043 extract_5r_store, extract_5R_store, extract_10U_store,
1044 extract_5Q_store, extract_11, extract_14, extract_16, extract_21,
1045 extract_12, extract_17, extract_22): Prototype.
1046 (print_insn_hppa): Rename inner block opcode -> opc to avoid
1047 shadowing outer block.
1050 2000-07-05 DJ Delorie <dj@redhat.com>
1054 2000-07-04 Alexandre Oliva <aoliva@redhat.com>
1056 * arm-dis.c (print_insn_arm): Output combinations of PSR flags.
1058 2000-07-03 Marek Michalkiewicz <marekm@linux.org.pl>
1060 * avr-dis.c (avr_operand): Change _ () to _() around all strings
1061 marked for translation (exception from the usual coding style).
1062 (print_insn_avr): Initialize insn2 to avoid warnings.
1064 2000-07-03 Kazu Hirata <kazu@hxi.com>
1066 * h8300-dis.c (bfd_h8_disassemble): Improve readability.
1067 * h8500-dis.c: Fix formatting.
1069 2000-07-01 Alan Modra <alan@linuxcare.com.au>
1071 * Makefile.am (DEP): Fix 2000-06-22. grep after running dep.sed
1072 (CLEANFILES): Add DEPA.
1073 * Makefile.in: Regenerate.
1075 2000-06-26 Scott Bambrough <scottb@netwinder.org>
1077 * arm-dis.c (regnames): Add an additional register set to match
1078 the set used by GCC. Make it the default.
1080 2000-06-22 Alan Modra <alan@linuxcare.com.au>
1082 * Makefile.am (DEP): grep for leading `/' in DEP1, and fail if we
1084 * Makefile.in: Regenerate.
1086 2000-06-20 H.J. Lu <hjl@gnu.org>
1088 * Makefile.am: Rebuild dependency.
1089 * Makefile.in: Rebuild.
1091 2000-06-18 Stephane Carrez <stcarrez@worldnet.fr>
1093 * Makefile.in, configure: regenerate
1094 * disassemble.c (disassembler): Recognize ARCH_m68hc12,
1096 * m68hc11-dis.c (read_memory, print_insn, print_insn_m68hc12):
1098 * configure.in: Recognize m68hc12 and m68hc11.
1099 * m68hc11-dis.c, m68hc11-opc.c: New files for support of m68hc1x
1100 * Makefile.am (CFILES, ALL_MACHINES): New files for disassembly
1101 and opcode generation for m68hc11 and m68hc12.
1103 2000-06-16 Nick Duffek <nsd@redhat.com>
1105 * disassemble.c (disassembler): Refer to the PowerPC 620 using
1106 bfd_mach_ppc_620 instead of 620.
1108 2000-06-12 Kazu Hirata <kazu@hxi.com>
1110 * h8300-dis.c: Fix formatting.
1111 (bfd_h8_disassemble): Distinguish adds/subs, inc/dec.[wl]
1114 2000-06-09 Denis Chertykov <denisc@overta.ru>
1116 * avr-dis.c (avr_operand): Bugfix for jmp/call address.
1118 2000-06-07 Denis Chertykov <denisc@overta.ru>
1120 * avr-dis.c: completely rewritten.
1122 2000-06-02 Kazu Hirata <kazu@hxi.com>
1124 * h8300-dis.c: Follow the GNU coding style.
1125 (bfd_h8_disassemble) Fix a typo.
1127 2000-06-01 Kazu Hirata <kazu@hxi.com>
1129 * h8300-dis.c (bfd_h8_disassemble_init): Fix a typo.
1130 (bfd_h8_disassemble): Distinguish the operand size of inc/dev.[wl]
1131 correctly. Fix a typo.
1133 2000-05-31 Nick Clifton <nickc@redhat.com>
1135 * opintl.h (_(String)): Explain why dgettext is used instead of
1138 2000-05-30 Nick Clifton <nickc@redhat.com>
1140 * opintl.h (gettext, dgettext, dcgettext, textdomain,
1141 bindtextdomain): Replace defines with those from intl/libgettext.h
1142 to quieten gcc warnings.
1144 2000-05-26 Alan Modra <alan@linuxcare.com.au>
1146 * Makefile.am: Update dependencies with "make dep-am"
1147 * Makefile.in: Regenerate.
1149 2000-05-25 Alexandre Oliva <aoliva@redhat.com>
1151 * m10300-dis.c (disassemble): Don't assume 32-bit longs when
1152 sign-extending operands.
1154 2000-05-15 Donald Lindsay <dlindsay@redhat.com>
1156 * d10v-opc.c (d10v_opcodes): add ALONE tag to all short branches
1159 2000-05-21 Nick Clifton <nickc@redhat.com>
1161 * Makefile.am (LIBIBERTY): Define.
1163 2000-05-19 Diego Novillo <dnovillo@redhat.com>
1165 * mips-dis.c (REGISTER_NAMES): Rename to STD_REGISTER_NAMES.
1166 (STD_REGISTER_NAMES): New name for REGISTER_NAMES.
1167 (reg_names): Rename to std_reg_names. Change it to a char **
1169 (std_reg_names): New name for reg_names.
1170 (set_mips_isa_type): Set reg_names to point to std_reg_names by
1173 2000-05-16 Frank Ch. Eigler <fche@redhat.com>
1175 * fr30-desc.h: Partially regenerated to account for changed
1176 CGEN_MAX_* -> CGEN_ACTUAL_MAX_* macros.
1177 * m32r-desc.h: Ditto.
1179 2000-05-15 Nick Clifton <nickc@redhat.com>
1181 * arm-opc.h: Use upper case for flasg in MSR and MRS
1182 instructions. Allow any bit to be set in the field_mask of
1183 the MSR instruction.
1185 * arm-dis.c (print_insn_arm): Decode _x and _s bits of the
1186 field_mask of an MSR instruction.
1188 2000-05-11 Thomas de Lellis <tdel@windriver.com>
1190 * arm-opc.h: Disassembly of thumb ldsb/ldsh
1191 instructions changed to ldrsb/ldrsh.
1193 2000-05-11 Ulf Carlsson <ulfc@engr.sgi.com>
1195 * mips-dis.c (print_insn_arg): Don't mask top 32 bits of 64-bit
1196 target addresses for 'jal' and 'j'.
1198 2000-05-10 Geoff Keating <geoffk@redhat.com>
1200 * ppc-opc.c (powerpc_opcodes): Make the predicted-branch opcodes
1201 also available in common mode when powerpc syntax is being used.
1203 2000-05-08 Alan Modra <alan@linuxcare.com.au>
1205 * m68k-dis.c (dummy_printer): Add ATTRIBUTE_UNUSED to args.
1206 (dummy_print_address): Ditto.
1208 2000-05-04 Timothy Wall <twall@redhat.com>
1210 * tic54x-opc.c: New.
1211 * tic54x-dis.c: New.
1212 * disassemble.c (disassembler): Add ARCH_tic54x.
1213 * configure.in: Added tic54x target.
1215 * Makefile.am: Add tic54x dependencies.
1216 * Makefile.in: Ditto.
1218 2000-05-03 J.T. Conklin <jtc@redback.com>
1220 * ppc-opc.c (VA, VB, VC, VD, VS, SIMM, UIMM, SHB): New macros, for
1221 vector unit operands.
1222 (VX, VX_MASK, VXA, VXA_MASK, VXR, VXR_MASK): New macros, for vector
1223 unit instruction formats.
1224 (PPCVEC): New macro, mask for vector instructions.
1225 (powerpc_operands): Add table entries for above operand types.
1226 (powerpc_opcodes): Add table entries for vector instructions.
1228 * ppc-dis.c (print_insn_big_powerpc): Add PPC_OPCODE_ALTIVEC to mask.
1229 (print_insn_little_powerpc): Likewise.
1230 (print_insn_powerpc): Prepend 'v' when printing vector registers.
1232 2000-04-24 Clinton Popetz <cpopetz@redhat.com>
1234 * configure.in: Add bfd_powerpc_64_arch.
1235 * disassemble.c (disassembler): Use print_insn_big_powerpc for
1238 2000-04-24 Nick Clifton <nickc@redhat.com>
1240 * fr30-desc.c (fr30_cgen_cpu_open): Initialise signed_overflow
1243 2000-04-23 Denis Chertykov <denisc@overta.ru>
1245 * avr-dis.c (reg_fmul_d): New. Extract destination register from
1247 (reg_fmul_r): New. Extract source register from FMUL instruction.
1248 (reg_muls_d): New. Extract destination register from MULS instruction.
1249 (reg_muls_r): New. Extract source register from MULS instruction.
1250 (reg_movw_d): New. Extract destination register from MOVW instruction.
1251 (reg_movw_r): New. Extract source register from MOVW instruction.
1252 (print_insn_avr): Handle MOVW, MULS, MULSU, FMUL, FMULS, FMULSU,
1253 EICALL, EIJMP, LPM r,Z, ELPM r,Z, SPM, ESPM instructions.
1255 2000-04-22 Timothy Wall <twall@redhat.com>
1257 * ia64-gen.c (general): Add an ordered table of primary
1258 opcode names, as well as priority fields to disassembly data
1259 structures to enforce a preferred disassembly format based on the
1260 ordering of the opcode tables.
1261 (load_insn_classes): Show a useful message if IC tables are missing.
1262 (load_depfile): Ditto.
1263 * ia64-asmtab.h (struct ia64_dis_names ): Add priority flag to
1264 distinguish preferred disassembly.
1265 * ia64-opc-f.c: Reorder some insn for preferred disassembly
1266 format. Fix incorrect flag on fma.s/fma.s.s0.
1267 * ia64-opc.c: Scan *all* disassembly matches and use the one with
1268 the highest priority.
1269 * ia64-opc-b.c: Use more abbreviations.
1270 * ia64-asmtab.c: Regenerate.
1272 2000-04-21 Jason Eckhardt <jle@redhat.com>
1274 * hppa-dis.c (extract_16): New function.
1275 (print_insn_hppa): Fix incorrect handling of 'fe'. Added handling of
1276 new operand types l,y,&,fe,fE,fx.
1278 2000-04-21 Richard Henderson <rth@redhat.com>
1279 David Mosberger <davidm@hpl.hp.com>
1280 Timothy Wall <twall@redhat.com>
1281 Bob Manson <manson@charmed.cygnus.com>
1282 Jim Wilson <wilson@redhat.com>
1284 * Makefile.am (HFILES): Add ia64-asmtab.h, ia64-opc.h.
1285 (CFILES): Add ia64-dis.c, ia64-opc-a.c, ia64-opc-b.c, ia64-opc-f.c,
1286 ia64-opc-i.c, ia64-opc-m.c, ia64-opc-d.c, ia64-opc.c, ia64-gen.c,
1288 (ALL_MACHINES): Add ia64-dis.lo, ia64-opc.lo.
1289 (ia64-ic.tbl, ia64-raw.tbl, ia64-waw.tbl, ia64-war.tbl, ia64-gen,
1290 ia64-gen.o, ia64-asmtab.c, ia64-dis.lo, ia64-opc.lo): New rules.
1291 * Makefile.in: Rebuild.
1292 * configure Rebuild.
1293 * configure.in (bfd_ia64_arch): New target.
1294 * disassemble.c (ARCH_ia64): Define.
1295 (disassembler): Support ARCH_ia64.
1296 * ia64-asmtab.c, ia64-asmtab.h, ia64-dis.c, ia64-gen.c ia64-ic.tbl,
1297 ia64-opc-a.c, ia64-opc-b.c, ia64-opc-d.c ia64-opc-f.c, ia64-opc-i.c,
1298 ia64-opc-m.c, ia64-opc-x.c, ia64-opc.c, ia64-opc.h, ia64-raw.tbl,
1299 ia64-war.tbl, ia64-waw.tbl: New files.
1301 2000-04-20 Alexandre Oliva <aoliva@redhat.com>
1303 * m10300-dis.c (HAVE_AM30, HAVE_AM33): Define.
1304 (disassemble): Use them.
1306 2000-04-14 Alan Modra <alan@linuxcare.com.au>
1308 * sysdep.h: Include "ansidecl.h" not <ansidecl.h>
1309 * Makefile.am: Update dependencies.
1310 * Makefile.in: Regenerate.
1312 2000-04-14 Michael Sokolov <msokolov@ivan.Harhan.ORG>
1314 * a29k-dis.c, alpha-dis.c, alpha-opc.c, arc-dis.c, arc-opc.c,
1315 avr-dis.c, d10v-dis.c, d10v-opc.c, d30v-dis.c, d30v-opc.c,
1316 disassemble.c, h8300-dis.c, h8500-dis.c, hppa-dis.c, i370-dis.c,
1317 i370-opc.c, i960-dis.c, m10200-dis.c, m10200-opc.c, m10300-dis.c,
1318 m10300-opc.c, m68k-dis.c, m68k-opc.c, m88k-dis.c, mcore-dis.c,
1319 mips-dis.c, mips-opc.c, mips16-opc.c, pj-dis.c, pj-opc.c,
1320 ppc-dis.c, ppc-opc.c, sh-dis.c, sparc-dis.c, sparc-opc.c,
1321 tic80-dis.c, tic80-opc.c, v850-dis.c, v850-opc.c, vax-dis.c,
1322 w65-dis.c, z8k-dis.c, z8kgen.c: Include sysdep.h. Remove
1323 ansidecl.h as sysdep.h includes it.
1325 2000-04-7 Andrew Cagney <cagney@b1.redhat.com>
1327 * configure.in (WARN_CFLAGS): Set to -W -Wall by default. Add
1328 --enable-build-warnings option.
1329 * Makefile.am (AM_CFLAGS, WARN_CFLAGS): Add definitions.
1330 * Makefile.in, configure: Re-generate.
1332 2000-04-05 J"orn Rennecke <amylaar@redhat.com>
1334 * sh-opc.h (sh_table): Use A_DISP_PC / PCRELIMM_8BY2 for ldre & ldrs.
1335 stc GBR,@-<REG_N> is available for arch_sh1_up.
1336 Group parallel processing insn with identical mnemonics together.
1337 Make three-operand psha / pshl come first.
1339 2000-04-05 J"orn Rennecke <amylaar@redhat.co.uk>
1341 * sh-opc.h (sh_nibble_type): Remove DISP_8 and DISP_4.
1342 Split IMM_[48]{,BY[24]} into IMM[01]_[48]{,BY[24]}. Add REPEAT.
1343 (sh_arg_type): Add A_PC.
1344 (sh_table): Update entries using immediates. Add repeat.
1345 * sh-dis.c (print_insn_shx): Remove DISP_8 and DISP_4.
1346 Split IMM_[48]{,BY[24]} into IMM[01]_[48]{,BY[24]}. Add REPEAT.
1348 2000-04-04 Alan Modra <alan@linuxcare.com.au>
1350 * po/opcodes.pot: Regenerate.
1352 * Makefile.am (MKDEP): Use gcc -MM rather than mkdep.
1353 (DEP): Quote when passing vars to sub-make. Add warning message
1355 (DEP1): Rewrite for "gcc -MM".
1356 (CLEANFILES): Add DEP2.
1357 Update dependencies.
1358 * Makefile.in: Regenerate.
1360 2000-04-03 Denis Chertykov <denisc@overta.ru>
1362 * avr-dis.c: Syntax cleanup.
1363 (add0fff): Print the pc relative address as a signed number.
1364 (add03f8): Likewise.
1366 2000-04-01 Ian Lance Taylor <ian@zembu.com>
1368 * disassemble.c (disassembler_usage): Don't use a prototype. Mark
1369 the parameter ATTRIBUTE_UNUSED.
1370 * ppc-opc.c: Add ATTRIBUTE_UNUSED as needed.
1372 2000-04-01 Alexandre Oliva <aoliva@redhat.com>
1374 * m10300-opc.c: SP-based offsets are always unsigned.
1376 2000-03-29 Thomas de Lellis <tdel@windriver.com>
1378 * arm-opc.h (thumb_opcodes): Disassemble 0xde.. to "bal"
1379 [branch always] instead of "undefined".
1381 2000-03-27 Nick Clifton <nickc@redhat.com>
1383 * d30v-opc.c (d30v_format_table): Move SHORT_AR to end of list of
1384 short instructions, from end of list of long instructions.
1386 2000-03-27 Ian Lance Taylor <ian@zembu.com>
1388 * Makefile.am (CFILES): Add avr-dis.c.
1389 (ALL_MACHINES): Add avr-dis.lo.
1391 2000-03-27 Alan Modra <alan@linuxcare.com>
1393 * avr-dis.c (add0fff, add03f8): Don't use structure bitfields to
1395 (print_insn_avr): Call function via pointer in K&R compatible way.
1396 (dispLDD, regPP, reg50, reg104, reg40, reg20w, lit404, lit204,
1397 add0fff, add03f8): Convert to old style function declaration and
1399 (avrdis_opcode): Add prototype.
1401 2000-03-27 Denis Chertykov <denisc@overta.ru>
1403 * avr-dis.c: New file. AVR disassembler.
1404 * configure.in (bfd_avr_arch): New architecture support.
1405 * disassemble.c: Likewise.
1406 * configure: Regenerate.
1408 2000-03-06 J"oern Rennecke <amylaar@redhat.com>
1410 * sh-opc.h (sh_table): ldre and ldrs have a *signed* displacement.
1412 2000-03-02 J"orn Rennecke <amylaar@redhat.co.uk>
1414 * d30v-dis.c (print_insn): Remove d*i hacks. Use per-operand
1415 flag to determine if operand is pc-relative.
1417 (d30v_format_table):
1418 (REL6S3): Renamed from IMM6S3.
1419 Added flag OPERAND_PCREL.
1420 (REL12S3, REL18S3, REL32): Split from IMM12S3, IMM18S3, REL32, with
1421 added flag OPERAND_PCREL.
1422 (IMM12S3U): Replaced with REL12S3.
1423 (SHORT_D2, LONG_D): Delay target is pc-relative.
1424 (SHORT_B2r, SHORT_B3r, SHORT_B3br, SHORT_D2r, LONG_Ur, LONG_2r):
1425 Split from SHORT_B2, SHORT_D2, SHORT_B3b, SHORT_D2, LONG_U, LONG_2r,
1426 using the REL* operands.
1427 (LONG_2br, LONG_Dr): Likewise, from LONG_2b, LONG_D.
1428 (SHORT_D1r, SHORT_D2Br, LONG_Dbr): Renamed from SHORT_D1, SHORT_D2B,
1429 LONG_Db, using REL* operands.
1430 (SHORT_U, SHORT_A5S): Removed stray alternatives.
1431 (d30v_opcode_table): Use new *r formats.
1433 2000-02-28 Nick Clifton <nickc@redhat.com>
1435 * m32r-desc.c (m32r_cgen_cpu_open): Replace 'flags' with
1436 'signed_overflow_ok_p'.
1438 2000-02-27 Eli Zaretskii <eliz@is.elta.co.il>
1440 * Makefile.am (stamp-lib): Use $(LIBTOOL) --config to get the
1441 name of the libtool directory.
1442 * Makefile.in: Rebuild.
1444 2000-02-24 Nick Clifton <nickc@redhat.com>
1446 * cgen-opc.c (cgen_set_signed_overflow_ok): New function.
1447 (cgen_clear_signed_overflow_ok): New function.
1448 (cgen_signed_overflow_ok_p): New function.
1450 2000-02-23 Andrew Haley <aph@redhat.com>
1452 * m32r-asm.c, m32r-desc.c, m32r-desc.h, m32r-dis.c,
1453 m32r-ibld.c, m32r-opc.h: Rebuild.
1455 2000-02-23 Linas Vepstas <linas@linas.org>
1457 * i370-dis.c, i370-opc.c: New.
1459 * disassemble.c (ARCH_i370): Define.
1460 (disassembler): Handle it.
1462 * Makefile.am: Add support for Linux/IBM 370.
1463 * configure.in: Likewise.
1465 * Makefile.in: Regenerate.
1466 * configure: Likewise.
1468 2000-02-22 Chandra Chavva <cchavva@redhat.com>
1470 * d30v-opc.c (d30v_opcode_tab) : Added FLAG_NOT_WITH_ADDSUBppp to
1471 ST2H, STB, STH, STHH, STW and ST2H opcodes to prohibit parallel
1474 2000-02-22 Andrew Haley <aph@redhat.com>
1476 * mips-dis.c (_print_insn_mips): New arg for OPCODE_IS_MEMBER:
1478 * mips-opc.c (G6): New define.
1479 (mips_builtin_op): Add "move" definition for -gp32.
1481 2000-02-22 Ian Lance Taylor <ian@zembu.com>
1483 From Grant Erickson <gerickso@Brocade.COM>:
1484 * ppc-opc.c: Correct dcread--it takes 3 arguments, not 2.
1486 2000-02-21 Alan Modra <alan@spri.levels.unisa.edu.au>
1488 * dis-buf.c (buffer_read_memory): Change `length' param and all int
1491 2000-02-17 J"orn Rennecke <amylaar@redhat.co.uk>
1493 * sh-dis.c (print_movxy, print_insn_ddt, print_dsp_reg): New functions.
1494 (print_insn_ppi): Likewise.
1495 (print_insn_shx): Use info->mach to select appropriate insn set.
1496 Add support for sh-dsp. Remove FD_REG_N support.
1497 * sh-opc.h (sh_nibble_type): Add new values for sh-dsp support.
1498 (sh_arg_type): Likewise. Remove FD_REG_N.
1499 (sh_dsp_reg_nums): New enum.
1500 (arch_sh1, arch_sh2, arch_sh3, arch_sh3e, arch_sh4): New macros.
1501 (arch_sh_dsp, arch_sh3_dsp, arch_sh1_up, arch_sh2_up): Likewise.
1502 (arch_sh3_up, arch_sh3e_up, arch_sh4_up, arch_sh_dsp_up): Likewise.
1503 (arch_sh3_dsp_up): Likewise.
1504 (sh_opcode_info): New field: arch.
1505 (sh_table): Split up insn with FD_REG_N into ones with F_REG_N and
1506 D_REG_N. Fill in arch field. Add sh-dsp insns.
1508 2000-02-14 Fernando Nasser <fnasser@totem.to.redhat.com>
1510 * arm-dis.c: Change flavor name from atpcs-special to
1511 special-atpcs to prevent name conflict in gdb.
1512 (get_arm_regname_num_options, set_arm_regname_option,
1513 get_arm_regnames): New functions. API to access the several
1514 flavor of register names. Note: Used by gdb.
1515 (print_insn_thumb): Use the register name entry from the currently
1516 selected flavor for LR and PC.
1518 2000-02-10 Nick Clifton <nickc@redhat.com>
1520 * mcore-opc.h (enum mcore_opclass): Add MULSH and OPSR
1522 (mcore_table): Add "idly4", "psrclr", "psrset", "mulsh" and
1523 "mulsh.h" instructions.
1524 * mcore-dis.c (imsk array): Add masks for MULSH and OPSR
1526 (print_insn_mcore): Add support for little endian targets.
1527 Add support for MULSH and OPSR classes.
1529 2000-02-07 Nick Clifton <nickc@redhat.com>
1531 * arm-dis.c (parse_arm_diassembler_option): Rename again.
1532 Previous delat did not take.
1534 2000-02-03 Timothy Wall <twall@redhat.com>
1536 * dis-buf.c (buffer_read_memory): Use octets_per_byte field
1537 to adjust target address bounds checking and calculate the
1538 appropriate octet offset into data.
1540 2000-01-27 Nick Clifton <nickc@redhat.com>
1542 * arm-dis.c: (parse_disassembler_option): Rename to
1543 parse_arm_disassembler_option and allow to be exported.
1545 * disassemble.c (disassembler_usage): New function: Print out any
1546 target specific disassembler options.
1547 Call arm_disassembler_options() if the ARM architecture is being
1550 * arm-dis.c (NUM_ELEM): Define this macro if not already
1552 (arm_regname): New struct type for ARM register names.
1553 (arm_toggle_regnames): Delete.
1554 (parse_disassembler_option): Use register name structure.
1555 (print_insn): New function: Combines duplicate code found in
1556 print_insn_big_arm and print_insn_little_arm.
1557 (print_insn_big_arm): Call print_insn.
1558 (print_insn_little_arm): Call print_insn.
1559 (print_arm_disassembler_options): Display list of supported,
1560 ARM specific disassembler options.
1562 2000-01-27 Thomas de Lellis <tdel@windriver.com>
1564 * arm-dis.c (printf_insn_big_arm): Treat ELF symbols with the
1565 ARM_STT_16BIT flag as Thumb code symbols.
1567 * arm-dis.c (printf_insn_little_arm): Ditto.
1569 2000-01-25 Thomas de Lellis <tdel@windriver.com>
1571 * arm-dis.c (printf_insn_thumb): Prevent double dumping
1572 of raw thumb instructions.
1574 2000-01-20 Nick Clifton <nickc@redhat.com>
1576 * mcore-opc.h (mcore_table): Add "add" as an alias for "addu".
1578 2000-01-03 Nick Clifton <nickc@cygnus.com>
1580 * arm-dis.c (streq): New macro.
1581 (strneq): New macro.
1582 (force_thumb): ew local variable.
1583 (parse_disassembler_option): New function: Parse a single, ARM
1584 specific disassembler command line switch.
1585 (parse_disassembler_option): Call parse_disassembler_option to
1586 parse individual command line switches.
1587 (print_insn_big_arm): Check force_thumb.
1588 (print_insn_little_arm): Check force_thumb.
1590 For older changes see ChangeLog-9899
1596 version-control: never