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