2007-10-11 H.J. Lu <hongjiu.lu@intel.com>
[binutils.git] / opcodes / ChangeLog
blobf95e09bd2d3612f7dec235c9492a0a2032f1e24c
1 2007-10-10  H.J. Lu  <hongjiu.lu@intel.com>
3         * i386-dis.c (v_mode): Defined as previous one + 1.
4         (w_mode): Likewise.
5         (d_mode): Likewise.
6         (q_mode): Likewise.
7         (t_mode): Likewise.
8         (x_mode): Likewise.
9         (m_mode): Likewise.
10         (cond_jump_mode): Likewise.
11         (loop_jcxz_mode): Likewise.
12         (dq_mode): Likewise.
13         (dqw_mode): Likewise.
14         (f_mode): Likewise.
15         (const_1_mode): Likewise.
16         (stack_v_mode): Likewise.
17         (z_mode): Likewise.
18         (o_mode): Likewise.
19         (dqb_mode): Likewise.
20         (dqd_mode): Likewise.
21         (es_reg): Likewise.
22         (cs_reg): Likewise.
23         (ss_reg): Likewise.
24         (ds_reg): Likewise.
25         (fs_reg): Likewise.
26         (gs_reg): Likewise.
27         (eAX_reg): Likewise.
28         (eCX_reg): Likewise.
29         (eDX_reg): Likewise.
30         (eBX_reg): Likewise.
31         (eSP_reg): Likewise.
32         (eBP_reg): Likewise.
33         (eSI_reg): Likewise.
34         (eDI_reg): Likewise.
35         (al_reg): Likewise.
36         (cl_reg): Likewise.
37         (dl_reg): Likewise.
38         (bl_reg): Likewise.
39         (ah_reg): Likewise.
40         (ch_reg): Likewise.
41         (dh_reg): Likewise.
42         (bh_reg): Likewise.
43         (ax_reg): Likewise.
44         (cx_reg): Likewise.
45         (dx_reg): Likewise.
46         (bx_reg): Likewise.
47         (sp_reg): Likewise.
48         (bp_reg): Likewise.
49         (si_reg): Likewise.
50         (di_reg): Likewise.
51         (rAX_reg): Likewise.
52         (rCX_reg): Likewise.
53         (rDX_reg): Likewise.
54         (rBX_reg): Likewise.
55         (rSP_reg): Likewise.
56         (rBP_reg): Likewise.
57         (rSI_reg): Likewise.
58         (rDI_reg): Likewise.
59         (z_mode_ax_reg): Likewise.
60         (indir_dx_reg): Likewise.
61         (DREX_OC1): Updated.
62         (DREX_NO_OC0): Likewise.
63         (DREX_MASK): Likewise.
64         (MAX_BYTEMODE): New.  Issue an error if MAX_BYTEMODE is not
65         less than DREX_OC1.
67 2007-10-08  H.J. Lu  <hongjiu.lu@intel.com>
69         * i386-dis.c: Updated comments for 'Y'.
70         (putop): Don't add 'q' for 'Y' if suffix_always isn't true.
72 2007-10-08  Maciej W. Rozycki  <macro@linux-mips.org>
74         * opcodes/mips-dis.c (mips_cp0_names_r3000): New definition.
75         (mips_cp0_names_r4000): Likewise.
76         (mips_arch_choices): Link to the above as appropriate.
78 2007-10-08  Nick Clifton  <nickc@redhat.com>
80         * configure.in (SHARED_DEPENDENCIES): Change non-cygwin dependency
81         to be ../bfd/libbfd.la.
82         * configure: Regenerate.
84 2007-10-05  H.J. Lu  <hongjiu.lu@intel.com>
86         * i386-dis.c (dis386_twobyte): Add getsec.
88         * i386-gen.c (cpu_flags): Add CpuSMX.
90         * i386-opc.h (CpuSMX): New.
91         (CpuSSSE3): Updated.
92         (i386_cpu_flags): Add cpusmx.
94         * i386-opc.tbl: Add getsec.
95         * i386-init.h: Regenerated.
96         * i386-tbl.h: Likewise.
98 2007-10-05  H.J. Lu  <hongjiu.lu@intel.com>
100         * i386-dis.c (reg_table): Use "{ XX }" on "(bad)".
101         (prefix_table): Likewise.
103 2007-10-04  H.J. Lu  <hongjiu.lu@intel.com>
105         * i386-dis.c (dis386_twobyte): Use EXx instead of EXq on
106         unpckhpX and unpckhpX.
108 2007-10-04  David Daney  <ddaney@avtrex.com>
110         * mips-opc.c (mips_builtin_opcodes): Mark lwxc1 as working on FP_S
111         registers.
113 2007-10-04  H.J. Lu  <hongjiu.lu@intel.com>
115         * i386-dis.c (MOD_0F12_PREFIX_0): Use "movlps" and "movhlps"
116         instead of "movlpX" and "movhlpX", respectively.
117         (MOD_0F16_PREFIX_0): Use "movhps" and "movlhps" instead of
118         "movhpX" and "movlhpX", respectively.
120 2007-10-04  Nick Clifton  <nickc@redhat.com>
122         * configure.in (WIN32LDFLAGS): Rename to SHARED_LDFLAGS.
123         (WIN32LIBADD): Rename to SHARED_LIBADD
124         (SHARED_DEPENDENCIES): New exported variable.
125         (enable_shared): Add dependency upon libbfd.la for non-cygwin
126         based shared library builds.
127         * Makefile.am (libopcodes_la_DEPENDENCIES): Append
128         SHARED_DEPENDENCIES.
129         (libopcodes_la_LIBADD): Rename WIN32LIBADD to SHARED_LIBADD.
130         (libopcodes_la_LDFLAGS): Rename WIN32LDFLAGS to SHARED_LDFLAGS.
131         * configure: Regenerate.
132         * Makefile.in: Regenerate.
134         PR gas/5100
135         * arc-opc.c (insert_offset): Fix spelling mistake in error
136         message.
138 2007-10-03  H.J. Lu  <hongjiu.lu@intel.com>
140         * i386-dis.c (OP_REG): Set add to 0 only when needed.
141         (OP_C): Likewise.
142         (OP_D): Likewise.
143         (OP_MMX): Likewise.
144         (OP_XMM): Likewise.
145         (OP_EM): Likewise.
146         (OP_MXC): Likewise.
147         (OP_EX): Likewise.
149 2007-10-03  H.J. Lu  <hongjiu.lu@intel.com>
151         * i386-opc.tbl: Update SSE comments.
153 2007-10-01  H.J. Lu  <hongjiu.lu@intel.com>
155         * i386-dis.c (THREE_BYTE_0FBA): Renamed to ...
156         (THREE_BYTE_0F7B): This.
157         (dis386_twobyte): Updated.
158         (three_byte_table): Updated comments.
160 2007-10-01  M R Swami Reddy <MR.Swami.Reddy@nsc.com>
162         * cr16-opc.c: Updated the branch on condition instructions with
163         RELAXABLE flag.
165 2007-09-30  H.J. Lu  <hongjiu.lu@intel.com>
167         * 386-dis.c (prefix_table): Reformat comment.
169 2007-09-29  H.J. Lu  <hongjiu.lu@intel.com>
171         * 386-dis.c (USE_GROUPS): Renamed to ...
172         (USE_REG_TABLE): This.
173         (USE_OPC_EXT_TABLE): Renamed to ...
174         (USE_MOD_TABLE): This.
175         (USE_OPC_EXT_RM_TABLE): Renamed to ...
176         (USE_RM_TABLE): This.
177         (USE_XXX_TABLE): Reordered.
178         (GRP): Renamed to ...
179         (REG_TABLE): This.
180         (OPC_EXT_TABLE): Renamed to ...
181         (MOD_TABLE): This.
182         (OPC_EXT_RM_TABLE): Renamed to ...
183         (RM_TABLE): This.
184         (GRP_XXX): Renamed to ...
185         (REG_XXX): This.
186         (PREGRP_XXX): Renamed to ...
187         (PREFIX_XXX): This.
188         (OPC_EXT_XXX): Renamed to ...
189         (MOD_XXX): This.
190         (OPC_EXT_RM_XXX): Renamed to ...
191         (RM_XXX): This.
192         (grps): Renamed to ...
193         (reg_table): This
194         (prefix_user_table): Renamed to ...
195         (prefix_table): This
196         (opc_ext_table): Renamed to ...
197         (mod_table): This
198         (opc_ext_rm_table): Renamed to ...
199         (rm_table): This
200         (OPC_EXT_RM_XXX): Likewise.
201         (dis386): Updated.
202         (dis386_twobyte): Likewise.
203         (reg_table): Likewise.
204         (prefix_table): Likewise.
205         (x86_64_table): Likewise.
206         (three_byte_table): Likewise.
207         (mod_table): Likewise.
208         (rm_table): Likewise.
209         (get_valid_dis386): Likewise.
211 2007-09-28  H.J. Lu  <hongjiu.lu@intel.com>
213         * 386-dis.c (USE_PREFIX_USER_TABLE): Renamed to ...
214         (USE_PREFIX_TABLE): This.
215         (X86_64_SPECIAL): Renamed to ...
216         (USE_X86_64_TABLE): This.
217         (IS_3BYTE_OPCODE): Renamed to ...
218         (USE_3BYTE_TABLE): This.
219         (GRPXXX): Removed.
220         (PREGRPXXX): Likewise.
221         (X86_64_XXX): Likewise.
222         (THREE_BYTE_XXX): Likewise.
223         (OPC_EXT_XXX): Likewise.
224         (OPC_EXT_RM_XXX): Likewise.
225         (DIS386): New.
226         (GRP): Likewise.
227         (PREGRP): Likewise.
228         (X86_64_TABLE): Likewise.
229         (THREE_BYTE_TABLE): Likewise.
230         (OPC_EXT_TABLE): Likewise.
231         (OPC_EXT_RM_TABLE): Likewise.
232         (GRP_XXX): Likewise.
233         (PREGRP_XXX): Likewise.
234         (X86_64_XXX): Likewise.
235         (THREE_BYTE_XXX): Likewise.
236         (OPC_EXT_XXX): Likewise.
237         (OPC_EXT_RM_XXX): Likewise.
238         (dis386): Updated.
239         (dis386_twobyte): Likewise.
240         (grps): Likewise.
241         (prefix_user_table): Likewise.
242         (x86_64_table): Likewise.
243         (three_byte_table): Likewise.
244         (opc_ext_table): Likewise.
245         (opc_ext_rm_table): Likewise.
246         (get_valid_dis386): Likewise.
248 2007-09-27  H.J. Lu  <hongjiu.lu@intel.com>
250         * i386-dis.c (dis386): Swap X86_64_27 with OPC_EXT_2.
251         (x86_64_table): Likewise.
252         (opc_ext_table): Likewise.
254 2007-09-27  H.J. Lu  <hongjiu.lu@intel.com>
256         PR binutils/5072
257         * i386-dis.c: Update comments on '{', '}' and '|' to support
258         only AT&T and Intel modes.
259         (X86_64_4...X86_64_27): New.
260         (dis386): Updated.  Use X86_64_4...X86_64_21.
261         (dis386_twobyte): Updated.
262         (float_mem): Likewise.
263         (x86_64_table): Add X86_64_4...X86_64_27.
264         (opc_ext_table): Updated.  Use X86_64_22...X86_64_27.
265         (putop): Updated handling of '{', '}' and '|' to support only
266         AT&T and Intel modes.
268 2007-09-27  Kazu Hirata  <kazu@codesourcery.com>
270         * m68k-dis.c (print_insn_arg): Use %mbo instead of %mbb.
272 2007-09-26  James E. Wilson  <wilson@specifix.com>
274         * ia64-gen.c (print_dependency_table): Fix typo in last patch.
276 2007-09-26  Nick Clifton  <nickc@redhat.com>
278         * mt-asm.c (parse_imm16): Reword error message in order to allow
279         it to be translated properly.
280         * ia64-gen.c (print_dependency_table): Likewise.
281         * mips-dis.c (print_insn_args): Likewise.
283 2007-09-26  Jan Beulich  <jbeulich@novell.com>
285         * i386-dis.c (OP_E_extended): Distinguish rip- and eip-
286         relative addressing. Update used_prefixes based on whether any
287         base or index register was printed.
289 2007-09-26  Jan Beulich  <jbeulich@novell.com>
291         * i386-opc.h (RegEip): Define.
292         (RegEiz): Adjust.
293         * i386-reg.tbl: Add eip. Mark rip and eip with RegRex64.
294         * i386-tbl.h: Re-generate.
296 2007-09-25  H.J. Lu  <hongjiu.lu@intel.com>
298         * i386-gen.c (process_i386_opcodes): Process opcode_length.
300         * i386-opc.h (template): Add opcode_length.
301         * 386-opc.tbl: Likewise.
302         * i386-tbl.h: Regenerated.
304 2007-09-21  H.J. Lu  <hongjiu.lu@intel.com>
306         * i386-opc.h: Adjust whitespaces.
308 2007-09-21  Dave Brolley  <brolley@redhat.com>
310         * mep-desc.c: Regenerated.
312 2007-09-20  H.J. Lu  <hongjiu.lu@intel.com>
314         * i386-dis.c (OP_E_extended): Display eiz for [eiz*1 + offset].
316 2007-09-20  H.J. Lu  <hongjiu.lu@intel.com>
318         PR 658
319         * 386-dis.c (index64): New.
320         (index32): Likewise.
321         (intel_index64): Likewise.
322         (intel_index32): Likewise.
323         (att_index64): Likewise.
324         (att_index32): Likewise.
325         (print_insn): Set index64 and index32.
326         (OP_E_extended): Use index64/index32 for index register for
327         SIB with INDEX == 4.
329         * i386-opc.h (RegEiz): New.
330         (RegRiz): Likewise.
332         * i386-reg.tbl: Add eiz and riz.
333         * i386-tbl.h: Regenerated.
335 2007-09-19  H.J. Lu  <hongjiu.lu@intel.com>
337         * i386-dis.c (OP_E_extended): Always display scale for memory.
339 2007-09-17  H.J. Lu  <hongjiu.lu@intel.com>
341         * i386-opc.h (RegRip): New.
343         * i386-reg.tbl (rip): Use RegRip for reg_num.
344         * i386-tbl.h: Regenerated.
346 2007-09-17  Nick Clifton  <nickc@redhat.com>
348         * po/es.po: Updated Spanish translation.
350 2007-09-14  H.J. Lu  <hongjiu.lu@intel.com>
352         * Makefile.am: Run "make dep-am".
353         * Makefile.in: Regenerate.
355 2007-09-14  Michael Meissner  <michael.meissner@amd.com>
356             Dwarakanath Rajagopal  <dwarak.rajagopal@amd.com>
357             Tony Linthicum  <tony.linthicum@amd.com>
359         * i386-opc.h (CpuSSE5):  New macro.
360         (i386_cpu_flags): Add Drex, Drexv and Drexc.
362         * i386-gen.c (cpu_flag_init): Add CPU_SSE5_FLAGS.
363         (operand_type_init): Add CpuSSE5.
364         (opcode_modifiers): Add Drex, Drexv and Drexc.
365         (i386_opcode_modifier): Ditto.
367         * i386-opc.tbl (fmaddps,fmaddpd,fmaddss,fmaddsd): Define SSE5
368         instructions here.
369         (fmsubps,fmsubpd,fmsubss,fmsubsd): Ditto.
370         (fnmaddps,fnmaddpd,fnmaddss,fnmaddsd): Ditto.
371         (fnmsubps,fnmsubpd,fnmsubss,fnmsubsd): Ditto.
372         (pmacssww,pmacsww,pmacsswd,pmacswd): Ditto.
373         (pmacssdd,pmacsdd,pmacssdql,pmacssdqh): Ditto.
374         (pmacsdql,pmacsdqh,pmadcsswd,pmadcswd): Ditto.
375         (phaddbw,phaddbd,phaddbq,phaddwd): Ditto.
376         (phaddwq,phadddq,phaddubw,phaddubd): Ditto.
377         (phaddubq,phadduwd,phadduwq,phaddudq): Ditto.
378         (phsubbw,phsubwd,phsubdq): Ditto.
379         (pcmov,pperm,permps,permpd): Ditto.
380         (protb,protw,protd,protq): Ditto.
381         (pshlb,pshlw,pshld,pshlq): Ditto.
382         (pshab,pshaw,pshad,pshaq): Ditto.
383         (comps,comeqps,comltps,comungeps,comleps,comungtps): Ditto.
384         (comunordps,comneps,comneqps,comnltps,comugeps): Ditto.
385         (comnleps,comugtps,comordps,comueqps,comultps): Ditto.
386         (comngeps,comuleps,comngtps,comfalseps,comuneps): Ditto.
387         (comuneqps,comunltps,comgeps,comunleps,comgtps,comtrueps): Ditto.
388         (compd,comeqpd,comltpd,comungepd,comlepd,comungtpd,comunordpd): Ditto.
389         (comnepd,comneqpd,comnltpd,comugepd,comnlepd,comugtpd): Ditto.
390         (comordpd,comueqpd,comultpd,comngepd,comulepd,comngtpd): Ditto.
391         (comfalsepd,comunepd,comuneqpd,comunltpd,comgepd): Ditto.
392         (comunlepd,comgtpd,comtruepd): Ditto.
393         (comss,comeqss,comltss,comungess,comless,comungtss,comunordss): Ditto.
394         (comness,comneqss,comnltss,comugess,comnless,comugtss): Ditto.
395         (comordss,comueqss,comultss,comngess,comuless,comngtss): Ditto.
396         (comfalsess,comuness,comuneqss,comunltss,comgess): Ditto.
397         (comunless,comgtss,comtruess): Ditto.
398         (comsd,comeqsd,comltsd,comungesd,comlesd,comungtsd,comunordsd): Ditto.
399         (comnesd,comneqsd,comnltsd,comugesd,comnlesd,comugtsd): Ditto.
400         (comordsd,comueqsd,comultsd,comngesd,comulesd,comngtsd): Ditto.
401         (comfalsesd,comunesd,comuneqsd,comunltsd,comgesd): Ditto.
402         (comunlesd,comgtsd,comtruesd): Ditto.
403         (pcomub,pcomltub,pcomleub,pcomgtub,pcomgeub,pcomequb): Ditto.
404         (pcomnequb,pcomneub): Ditto.
405         (pcomuw,pcomltuw,pcomleuw,pcomgtuw,pcomgeuw,pcomequw): Ditto.
406         (pcomnequw,pcomneuw): Ditto.
407         (pcomud,pcomltud,pcomleud,pcomgtud,pcomgeud,pcomequd): Ditto.
408         (pcomnequd,pcomneud): Ditto.
409         (pcomuq,pcomltuq,pcomleuq,pcomgtuq,pcomgeuq,pcomequq): Ditto.
410         (pcomnequq,pcomneuq): Ditto.
411         (pcomb,pcomltb,pcomleb,pcomgtb,pcomgeb,pcomeqb): Ditto.
412         (pcomneqb,pcomneb): Ditto.
413         (pcomw,pcomltw,pcomlew,pcomgtw,pcomgew,pcomeqw): Ditto.
414         (pcomneqw,pcomnew): Ditto.
415         (pcomd,pcomltd,pcomled,pcomgtd,pcomged,pcomeqd): Ditto.
416         (pcomneqd,pcomned): Ditto.
417         (pcomq,pcomltq,pcomleq,pcomgtq,pcomgeq): Ditto.
418         (pcomeqq,pcomneqq,pcomneq): Ditto.
419         (pcomtrueb, pcomtruew, pcomtrued, pcomtrueq): Ditto.
420         (pcomtrueub, pcomtrueuw, pcomtrueud, pcomtrueuq): Ditto.
421         (pcomfalseb, pcomfalsew, pcomfalsed, pcomfalseq): Ditto.
422         (pcomfalseub, pcomfalseuw, pcomfalseud, pcomfalseuq): Ditto.
423         (frczps,frczpd,frczss,frczsd): Ditto.
424         (cvtph2ps,cvtps2ph): Ditto.
426         * i386-tbl.h: Regenerate from i386-opc.tbl.
427         * i386-init.h: Likewise.
429         * i386-dis.c (libiberty.h): Include to get ARRAY_SIZE.
430         (dis386_move_test): New disassembly support for move from test
431         register instruction that overlaps with SSE5 instructions.
432         (print_insn): Add support for special casing the i386/i486 move
433         from test register instruction that overlaps with the SSE5
434         0x0f24 4 operand instructions.
435         (OP_DREX_ICMP): New macros for SSE5 DREX handling.
436         (OP_DREX_FCMP): Ditto.
437         (OP_E_extended): Rename from OP_E, add additional argument to skip
438         the DREX byte.
439         (OP_E): Call OP_E_extended.
440         (DREX_REG_MEMORY): New macros for drex handling.
441         (DREX_REG_UNKNOWN): Ditto.
442         (DREX4_OC1): Ditto.
443         (DREX4_NO_OC0): Ditto.
444         (DREX4_MASK): Ditto.
445         (three_byte_table): Add SSE5 instructions.
446         (print_drex_arg): New function to print a DREX register or memory
447         reference.
448         (OP_DREX4): New function for handling DREX 4 argument ops.
449         (OP_DREX3): New function for handling DREX 3 argument ops.
450         (twobyte_has_modrm): 0f{25,7a,7b} all use the modrm byte.
451         (THREE_BYTE_SSE5_0F{24,25,7A,7B}): New macros for initializing 3
452         byte opcode support for SSE5 instructions.
453         (dis386_twobyte): Add SSE5 24/25/7a/7b support.
454         (three_byte_table): Add rows for describing SSE5 instructions.
456 2007-09-13  H.J. Lu  <hongjiu.lu@intel.com>
458         * i386-dis.c (get_valid_dis386): Take a pointer to
459         disassemble_info.  Handle IS_3BYTE_OPCODE.
460         (print_insn): Updated.  Don't handle IS_3BYTE_OPCODE here.
462 2007-09-12  H.J. Lu  <hongjiu.lu@intel.com>
464         * i386-opc.h (CpuUnused): Defined with CpuMax.
465         (OTUnused): Defined with OTMax.
467 2007-09-12  Jan Beulich  <jbeulich@novell.com>
469         * i386-opc.tbl: Add two-operand forms of blendvps, blendvpd, and
470         pblendvb.
471         * i386-tbl.h: Regenerate.
473 2007-09-09  H.J. Lu  <hongjiu.lu@intel.com>
475         * i386-gen.c (main): Remove the local variable, unused.
477 2007-09-08  H.J. Lu  <hongjiu.lu@intel.com>
479         * Makefile.am: Run "make dep-am".
480         * Makefile.in: Regenerate.
482 2007-09-08  H.J. Lu  <hongjiu.lu@intel.com>
484         * configure.in (AC_CHECK_HEADERS): Add limits.h.
485         * configure: Regenerated.
486         * config.in: Likewise.
488         * i386-gen.c: Include "sysdep.h" instead of <stdlib.h> and
489         <string.h>.  Use xstrerror instead of strerror.
490         (initializer): New.
491         (cpu_flag_init): Likewise.
492         (bitfield): Likewise.
493         (BITFIELD): New.
494         (cpu_flags): Likewise.
495         (opcode_modifiers): Likewise.
496         (operand_types): Likewise.
497         (compare): Likewise.
498         (set_cpu_flags): Likewise.
499         (output_cpu_flags): Likewise.
500         (process_i386_cpu_flags): Likewise.
501         (output_opcode_modifier): Likewise.
502         (process_i386_opcode_modifier): Likewise.
503         (output_operand_type): Likewise.
504         (process_i386_operand_type): Likewise.
505         (set_bitfield): Likewise.
506         (operand_type_init): Likewise.
507         (process_i386_initializers): Likewise.
508         (process_i386_opcodes): Call process_i386_opcode_modifier to
509         process opcode_modifier.  Call process_i386_operand_type to
510         process operand_types.
511         (process_i386_registers): Call process_i386_operand_type to
512         process reg_type.
513         (main): Check unused bits in i386_cpu_flags and i386_operand_type.
514         Sort cpu_flags, opcode_modifiers and operand_types.  Call
515         process_i386_initializers.
517         * i386-init.h: New.
518         * i386-tbl.h: Regenerated.
520         * i386-opc.h: Include <limits.h>.
521         (CHAR_BIT): Define as 8 if not defined.
522         (Cpu186): Changed to position of bitfiled.
523         (Cpu286): Likewise.
524         (Cpu386): Likewise.
525         (Cpu486): Likewise.
526         (Cpu586): Likewise.
527         (Cpu686): Likewise.
528         (CpuP4): Likewise.
529         (CpuK6): Likewise.
530         (CpuK8): Likewise.
531         (CpuMMX): Likewise.
532         (CpuMMX2): Likewise.
533         (CpuSSE): Likewise.
534         (CpuSSE2): Likewise.
535         (Cpu3dnow): Likewise.
536         (Cpu3dnowA): Likewise.
537         (CpuSSE3): Likewise.
538         (CpuPadLock): Likewise.
539         (CpuSVME): Likewise.
540         (CpuVMX): Likewise.
541         (CpuSSSE3): Likewise.
542         (CpuSSE4a): Likewise.
543         (CpuABM): Likewise.
544         (CpuSSE4_1): Likewise.
545         (CpuSSE4_2): Likewise.
546         (Cpu64): Likewise.
547         (CpuNo64): Likewise.
548         (D): Likewise.
549         (W): Likewise.
550         (Modrm): Likewise.
551         (ShortForm): Likewise.
552         (Jump): Likewise.
553         (JumpDword): Likewise.
554         (JumpByte): Likewise.
555         (JumpInterSegment): Likewise.
556         (FloatMF): Likewise.
557         (FloatR): Likewise.
558         (FloatD): Likewise.
559         (Size16): Likewise.
560         (Size32): Likewise.
561         (Size64): Likewise.
562         (IgnoreSize): Likewise.
563         (DefaultSize): Likewise.
564         (No_bSuf): Likewise.
565         (No_wSuf): Likewise.
566         (No_lSuf): Likewise.
567         (No_sSuf): Likewise.
568         (No_qSuf): Likewise.
569         (No_xSuf): Likewise.
570         (FWait): Likewise.
571         (IsString): Likewise.
572         (RegKludge): Likewise.
573         (IsPrefix): Likewise.
574         (ImmExt): Likewise.
575         (NoRex64): Likewise.
576         (Rex64): Likewise.
577         (Ugh): Likewise.
578         (Reg8): Likewise.
579         (Reg16): Likewise.
580         (Reg32): Likewise.
581         (Reg64): Likewise.
582         (FloatReg): Likewise.
583         (RegMMX): Likewise.
584         (RegXMM): Likewise.
585         (Imm8): Likewise.
586         (Imm8S): Likewise.
587         (Imm16): Likewise.
588         (Imm32): Likewise.
589         (Imm32S): Likewise.
590         (Imm64): Likewise.
591         (Imm1): Likewise.
592         (BaseIndex): Likewise.
593         (Disp8): Likewise.
594         (Disp16): Likewise.
595         (Disp32): Likewise.
596         (Disp32S): Likewise.
597         (Disp64): Likewise.
598         (InOutPortReg): Likewise.
599         (ShiftCount): Likewise.
600         (Control): Likewise.
601         (Debug): Likewise.
602         (Test): Likewise.
603         (SReg2): Likewise.
604         (SReg3): Likewise.
605         (Acc): Likewise.
606         (FloatAcc): Likewise.
607         (JumpAbsolute): Likewise.
608         (EsSeg): Likewise.
609         (RegMem): Likewise.
610         (OTMax): Likewise.
611         (Reg): Commented out.
612         (WordReg): Likewise.
613         (ImplicitRegister): Likewise.
614         (Imm): Likewise.
615         (EncImm): Likewise.
616         (Disp): Likewise.
617         (AnyMem): Likewise.
618         (LLongMem): Likewise.
619         (LongMem): Likewise.
620         (ShortMem): Likewise.
621         (WordMem): Likewise.
622         (ByteMem): Likewise.
623         (CpuMax): New
624         (CpuLM): Likewise.
625         (CpuNumOfUints): Likewise.
626         (CpuNumOfBits): Likewise.
627         (CpuUnused): Likewise.
628         (OTNumOfUints): Likewise.
629         (OTNumOfBits): Likewise.
630         (OTUnused): Likewise.
631         (i386_cpu_flags): New type.
632         (i386_operand_type): Likewise.
633         (i386_opcode_modifier): Likewise.
634         (CpuSledgehammer): Removed.
635         (CpuSSE4): Likewise.
636         (CpuUnknownFlags): Likewise.
637         (Reg): Likewise.
638         (WordReg): Likewise.
639         (ImplicitRegister): Likewise.
640         (Imm): Likewise.
641         (EncImm): Likewise.
642         (Disp): Likewise.
643         (AnyMem): Likewise.
644         (LLongMem): Likewise.
645         (LongMem): Likewise.
646         (ShortMem): Likewise.
647         (WordMem): Likewise.
648         (ByteMem): Likewise.
649         (template): Use i386_cpu_flags for cpu_flags, use
650         i386_opcode_modifier for opcode_modifier, use
651         i386_operand_type for operand_types.
652         (reg_entry): Use i386_operand_type for reg_type.
654         * Makefile.am (HFILES): Add i386-init.h.
655         ($(srcdir)/i386-init.h): New rule.
656         ($(srcdir)/i386-tbl.h): Depend on $(srcdir)/i386-init.h
657         instead.
658         * Makefile.in: Regenerated.
660 2007-09-06  H.J. Lu  <hongjiu.lu@intel.com>
662         * i386-gen.c (next_field): Updated to take a separator.
663         (process_i386_opcodes): Updated.
664         (process_i386_registers): Likewise.
666 2007-09-06  H.J. Lu  <hongjiu.lu@intel.com>
668         * i386-gen.c (table): Moved ...
669         (main): Here.  Call process_copyright to output copyright.
670         (process_copyright): New.
671         (process_i386_opcodes): Take FILE *table.
672         (process_i386_registers): Likewise.
674 2007-09-06  H.J. Lu  <hongjiu.lu@intel.com>
676         * i386-gen.c (table): New.
677         (process_i386_opcodes): Report errno when faied to open
678         i386-opc.tbl.  Output opcodes to table.  Close i386-opc.tbl
679         before return.
680         (process_i386_registers): Report errno when faied to open
681         i386-reg.tbl.  Output opcodes to table.  Close i386-reg.tbl
682         before return.
683         (main): Open i386-tbl.h for output.
685         * Makefile.am ($(srcdir)/i386-tbl.h): Remove " > $@".
686         * Makefile.in: Regenerated.
688 2007-09-06  H.J. Lu  <hongjiu.lu@intel.com>
690         * i386-opc.tbl: Correct SVME instructions to allow 32bit register
691         operand in 64bit mode.
692         * i386-tbl.h: Regenerated.
694 2007-08-31  H.J. Lu  <hongjiu.lu@intel.com>
696         * i386-dis.c (OPC_EXT_40...OPC_EXT_45): New.
697         (dis386_twobyte): Use OPC_EXT_40...OPC_EXT_45.
698         (opc_ext_table): Add OPC_EXT_40...OPC_EXT_45.
700 2007-08-31  H.J. Lu  <hongjiu.lu@intel.com>
702         * i386-dis.c (SVME_Fixup): Removed.
703         (OPC_EXT_39): New.
704         (OPC_EXT_RM_6): Likewise.
705         (grps): Use OPC_EXT_39.
706         (opc_ext_table): Add OPC_EXT_39.
707         (opc_ext_rm_table): Add OPC_EXT_RM_6.
709         * i386-opc.tbl: Correct SVME instructions to take register
710         operand only.
711         * i386-tbl.h: Regenerated.
713 2007-08-31  H.J. Lu  <hongjiu.lu@intel.com>
715         * Makefile.am (INCLUDES): Remove -D_GNU_SOURCE.
716         * Makefile.in: Regenerated.
718         * configure.in (AC_GNU_SOURCE): Added.
719         (AC_PROG_CC): Moved before AC_GNU_SOURCE.
720         (AC_CHECK_DECLS): Add stpcpy.
721         * configure: Regenerated.
722         * config.in: Likewise.
724         * i386-dis.c: Include "sysdep.h" before "dis-asm.h".
726         * sysdep.h (stpcpy): New.
728 2007-08-30  H.J. Lu  <hongjiu.lu@intel.com>
730         * i386-dis.c (INVLPG_Fixup): Removed.
731         (OPC_EXT_38): New.
732         (OPC_EXT_RM_5): Likewise.
733         (grps): Use OPC_EXT_38.
734         (opc_ext_table): Add OPC_EXT_38.
735         (opc_ext_rm_table): Add OPC_EXT_RM_5.
737 2007-08-29  H.J. Lu  <hongjiu.lu@intel.com>
739         * i386-dis.c (SIMD_Fixup): Removed.
740         (OPC_EXT_34...OPC_EXT_37): New.
741         (dis386_twobyte): Use OPC_EXT_34 and OPC_EXT_35.
742         (prefix_user_table): Use OPC_EXT_36 and OPC_EXT_37.
743         (opc_ext_table): Add OPC_EXT_34...OPC_EXT_37.
745 2007-08-29  H.J. Lu  <hongjiu.lu@intel.com>
747         * i386-dis.c (OPC_EXT_25...OPC_EXT_33): New.
748         (dis386): Use OPC_EXT_0...OPC_EXT_2.
749         (dis386_twobyte): Use OPC_EXT_3...OPC_EXT_5.
750         (grps): Updated to use OPC_EXT_6...OPC_EXT_31.
751         (prefix_user_table): Use OPC_EXT_32.
752         (x86_64_table): Use OPC_EXT_33.
753         (opc_ext_table): Reorder and add OPC_EXT_25...OPC_EXT_33.
755 2007-08-29  H.J. Lu  <hongjiu.lu@intel.com>
757         * i386-dis.c (prefix_user_table): Fix comment.
759 2007-08-29  H.J. Lu  <hongjiu.lu@intel.com>
761         * i386-dis.c (OP_Skip_MODRM): New.
762         (OP_Monitor): Likewise.
763         (OP_Mwait): Likewise.
764         (Mb): Likewise.
765         (Skip_MODRM): Likewise.
766         (USE_OPC_EXT_TABLE): Likewise.
767         (USE_OPC_EXT_RM_TABLE): Likewise.
768         (PREGRP98...PREGRP100): Likewise.
769         (OPC_EXT_0...OPC_EXT_24): Likewise.
770         (OPC_EXT_RM_0...OPC_EXT_RM_4): Likewise.
771         (lock_prefix): Likewise.
772         (data_prefix): Likewise.
773         (addr_prefix): Likewise.
774         (repz_prefix): Likewise.
775         (repnz_prefix): Likewise.
776         (opc_ext_table): Likewise.
777         (opc_ext_rm_table): Likewise.
778         (get_valid_dis386): Likewise.
779         (OP_VMX): Removed.
780         (OP_0fae): Likewise.
781         (PNI_Fixup): Likewise.
782         (VMX_Fixup): Likewise.
783         (VM): Likewise.
784         (twobyte_uses_DATA_prefix): Likewise.
785         (twobyte_uses_REPNZ_prefix): Likewise.
786         (twobyte_uses_REPZ_prefix): Likewise.
787         (threebyte_0x38_uses_DATA_prefix): Likewise.
788         (threebyte_0x38_uses_REPNZ_prefix): Likewise.
789         (threebyte_0x38_uses_REPZ_prefix): Likewise.
790         (threebyte_0x3a_uses_DATA_prefix): Likewise.
791         (threebyte_0x3a_uses_REPNZ_prefix): Likewise.
792         (threebyte_0x3a_uses_REPZ_prefix): Likewise.
793         (grps): Use OPC_EXT_0...OPC_EXT_24.
794         (prefix_user_table): Add PREGRP98...PREGRP100.
795         (print_insn): Remove uses_DATA_prefix, uses_LOCK_prefix,
796         uses_REPNZ_prefix and uses_REPZ_prefix.  Initialize
797         repz_prefix, repnz_prefix, lock_prefix, addr_prefix and
798         data_prefix based on prefixes.  Call get_valid_dis386 to
799         get a pointer to the valid dis386.  Print out prefixes if
800         they aren't NULL.
801         (OP_C): Clear lock_prefix if PREFIX_LOCK is used.
802         (REP_Fixup): Set repz_prefix to "rep " when seeing
803         PREFIX_REPZ.
805 2007-08-28  Daniel Jacobowitz  <dan@codesourcery.com>
807         * po/nl.po: Updated translation.
809 2007-08-28  H.J. Lu  <hongjiu.lu@intel.com>
811         * i386-dis.c (Md): New.
812         (grps): Use 0 on invlpg.  Use M on fxsave and fxrstor.  Use
813         Md on ldmxcsr and stmxcsr.  Use b_mode on clflush.
814         (OP_0fae): Clear bytemode for sfence.
816 2007-08-22  Ben Elliston  <bje@au.ibm.com>
818         * ppc-opc.c (PSW, PSWM, PSQ, PSQM, PSD, MTMSRD_L): New.
819         (XOPS, XOPS_MASK, XW, XW_MASK): Likewise.
820         (PPCPS): Likewise.
821         (powerpc_opcodes): Add all pair singles instructions.
822         * ppc-dis.c (powerpc_dialect): Handle "ppcps".
823         (print_ppc_disassembler_options): Document -Mppcps.
825 2007-08-21  Andreas Krebbel  <krebbel1@de.ibm.com>
827         * s390-mkopc.c (struct s390_cond_ext_format): New global struct.
828         (s390_cond_ext_format): New global variable.
829         (expandConditionalJump): New function.
830         (main): Invoke expandConditionalJump for mnemonics containing '*'.      
831         * s390-opc.txt: Replace mnemonics with conditional
832         mask extensions with instructions using the newly introduced '*' tag.
834 2007-08-17  Alan Modra  <amodra@bigpond.net.au>
836         * po/Make-in: Add --msgid-bugs-address to xgettext invocation.
838 2007-08-10  Nick Clifton  <nickc@redhat.com>
840         * po/fi.po: Updated Finnish translation.
841         * po/ga.po: Updated Irish translation.
842         * po/vi.po: Updated Vietnamese translation.
844 2007-08-09  H.J. Lu  <hongjiu.lu@intel.com>
846         * i386-opc.tbl: Add NoRex64 to pmovsxbw, pmovsxwd, pmovsxdq,
847         pmovzxbw, pmovzxwd, pmovzxdq and roundsd.
848         * i386-tbl.h: Regenerated.
850 2007-08-03  James E. Wilson  <wilson@specifix.com>
852         * ia64-gen.c: (main): Add missing newline to copyright message.
853         * ia64-ic.tbl (fp-non-arith): Add xmpy.
854         * ia64-asmtab.c: Regenerate.
855         
856 2007-08-01  Michael Snyder  <msnyder@access-company.com>
858         * i386-dis.c (print_insn): Guard against NULL.
860 2007-07-29  H.J. Lu  <hongjiu.lu@intel.com>
862         PR binutils/4834
863         * i386-dis.c (EXw): New.
864         (prefix_user_table): Updated to use EXw, EXd and EXq for SSE4
865         instructions when appropriated.
867 2007-07-28  H.J. Lu  <hongjiu.lu@intel.com>
869         PR binutils/4834
870         * i386-dis.c (Eq): New.
871         (EMC): Renamed to ...
872         (EMCq): This.  Use q_mode instead of v_mode.
873         (prefix_user_table): Updated to use EXd, EXq, EMCq, Ed and Eq
874         when appropriated.
876 2007-07-28  H.J. Lu  <hongjiu.lu@intel.com>
878         * i386-dis.c (dis386_twobyte): Change "movd" to "movK".
879         (prefix_user_table): Likewise.  Use EXq instead of EXx on
880         "movq".
882 2007-07-27  Nathan Sidwell  <nathan@codesourcery.com>
884         * ppc-opc (PPC7450): New.
885         (powerpc_opcodes): Use it in dcba.
887 2007-07-24  H.J. Lu  <hongjiu.lu@intel.com>
889         * i386-gen.c (main): Print a newline after copyright notice.
891 2007-07-19  Nick Clifton  <nickc@redhat.com>
893         PR binutils/4801
894         * maxq-dis.c (get_reg_name): Fix the scan of the
895         mem_access_syntax_table.
897 2007-07-16  H.J. Lu  <hongjiu.lu@intel.com>
899         * i386-dis.c (EMq): Removed.
900         (EMx): New.
901         (prefix_user_table): Replace EMq with EMx.
903 2007-07-16  Nick Clifton  <nickc@redhat.com>
905         * po/nl.po: Updated translation.
907 2007-07-12  Nick Clifton  <nickc@redhat.com>
909         * po/vi.po: Updated translation.
910         * po/nl.po: Updated translation.
912 2007-07-06  Mark Kettenis  <kettenis@gnu.org>
913             H.J. Lu  <hongjiu.lu@intel.com>
915         * Makefile.am (i386-tbl.h): Add $(srcdir)/ to target.
916         (ia64-asmtab.c): Likewise.
917         * Makefile.in: Regenerate.
919 2007-07-05  H.J. Lu  <hongjiu.lu@intel.com>
921         * aclocal.m4: Regenerated.
923 2007-07-04  Nick Clifton  <nickc@redhat.com>
925         * alpha-dis.c: Update copyright notice to refer to GPLv3.
926         * alpha-opc.c, arc-dis.c, arc-dis.h, arc-ext.c, arc-ext.h,
927         arc-opc.c, arm-dis.c, avr-dis.c, bfin-dis.c, cgen-asm.c,
928         cgen-asm.in, cgen-bitset.c, cgen-dis.c, cgen-dis.in, cgen-ibld.in,
929         cgen-opc.c, cgen-ops.h, cgen.sh, cgen-types.h, cr16-dis.c,
930         cr16-opc.c, cris-dis.c, cris-opc.c, crx-dis.c, crx-opc.c,
931         d10v-dis.c, d10v-opc.c, d30v-dis.c, d30v-opc.c, disassemble.c,
932         dis-buf.c, dis-init.c, dlx-dis.c, h8300-dis.c, h8500-dis.c,
933         h8500-opc.h, hppa-dis.c, i370-dis.c, i370-opc.c, i386-dis.c,
934         i386-gen.c, i386-opc.c, i386-opc.h, i860-dis.c, i960-dis.c,
935         ia64-asmtab.h, ia64-dis.c, ia64-gen.c, ia64-opc-a.c, ia64-opc-b.c,
936         ia64-opc.c, ia64-opc-d.c, ia64-opc-f.c, ia64-opc.h, ia64-opc-i.c,
937         ia64-opc-m.c, ia64-opc-x.c, m10200-dis.c, m10200-opc.c,
938         m10300-dis.c, m10300-opc.c, m68hc11-dis.c, m68hc11-opc.c,
939         m68k-dis.c, m68k-opc.c, m88k-dis.c, maxq-dis.c, mcore-dis.c,
940         mcore-opc.h, mips16-opc.c, mips-dis.c, mips-opc.c, mmix-dis.c,
941         mmix-opc.c, msp430-dis.c, ns32k-dis.c, opintl.h, or32-dis.c,
942         or32-opc.c, pdp11-dis.c, pdp11-opc.c, pj-dis.c, pj-opc.c,
943         ppc-dis.c, ppc-opc.c, s390-dis.c, s390-mkopc.c, s390-opc.c,
944         score-dis.c, score-opc.h, sh64-dis.c, sh64-opc.c, sh64-opc.h,
945         sh-dis.c, sh-opc.h, sparc-dis.c, sparc-opc.c, spu-dis.c,
946         spu-opc.c, sysdep.h, tic30-dis.c, tic4x-dis.c, tic54x-dis.c,
947         tic54x-opc.c, tic80-dis.c, tic80-opc.c, v850-dis.c, v850-opc.c,
948         vax-dis.c, w65-dis.c, w65-opc.h, xtensa-dis.c, z80-dis.c,
949         z8k-dis.c, z8kgen.c: Likewise.
950         * i386-opc.tbl, i386-reg.tbl: Add copyright notice.
951         * aclocal.m4, configure, fr30-asm.c, fr30-desc.c, fr30-desc.h,
952         fr30-dis.c, fr30-ibld.c, fr30-opc.c, fr30-opc.h, frv-asm.c,
953         frv-desc.c, frv-desc.h, frv-dis.c, frv-ibld.c, frv-opc.c,
954         frv-opc.h, i386-tbl.h, ia64-asmtab.c, ip2k-asm.c, ip2k-desc.c,
955         ip2k-desc.h, ip2k-dis.c, ip2k-ibld.c, ip2k-opc.c, ip2k-opc.h,
956         iq2000-asm.c, iq2000-desc.c, iq2000-desc.h, iq2000-dis.c,
957         iq2000-ibld.c, iq2000-opc.c, iq2000-opc.h, m32c-asm.c,
958         m32c-desc.c, m32c-desc.h, m32c-dis.c, m32c-ibld.c, m32c-opc.c,
959         m32c-opc.h, m32r-asm.c, m32r-desc.c, m32r-desc.h, m32r-dis.c,
960         m32r-ibld.c, m32r-opc.c, m32r-opc.h, m32r-opinst.c, mep-asm.c,
961         mep-desc.c, mep-desc.h, mep-dis.c, mep-ibld.c, mep-opc.c,
962         mep-opc.h, mt-asm.c, mt-desc.c, mt-desc.h, mt-dis.c, mt-ibld.c,
963         mt-opc.c, mt-opc.h, openrisc-asm.c, openrisc-desc.c,
964         openrisc-desc.h, openrisc-dis.c, openrisc-ibld.c, openrisc-opc.c,
965         openrisc-opc.h, xc16x-asm.c, xc16x-desc.c, xc16x-desc.h,
966         xc16x-dis.c, xc16x-ibld.c, xc16x-opc.c, xc16x-opc.h,
967         xstormy16-asm.c, xstormy16-desc.c, xstormy16-desc.h,
968         xstormy16-dis.c, xstormy16-ibld.c, xstormy16-opc.c,
969         xstormy16-opc.h, z8k-opc.h: Regenerated
971 2007-07-04  M R Swami Reddy  <MR.Swami.Reddy@nsc.com>
973         * cr16-dis.c (getcinvstring): Add const qualifier to char *
974         parameter.
975         (print_insn_cr16): Remove cast to char *.
977 2007-07-03  Nathan Sidwell  <nathan@codesourcery.com>
979         * m68k-dis.c (fetch_arg): Add E.  Replace length switch with
980         direct masking.
981         (print_ins_arg): Add j & K operand types.
982         (match_insn_m68k): Check and skip initial '.' arg character.
983         (m68k_scan_mask): Likewise.
984         * m68k-opc.c (m68k_opcodes): Add coprocessor instructions.
986 2007-07-02  Alan Modra  <amodra@bigpond.net.au>
988         * Makefile.am: Run "make dep-am".
989         * Makefile.in: Regenerate.
990         * aclocal.m4: Regenerate.
991         * config.in: Regenerate.
992         * po/POTFILES.in: Regenerate.
993         * po/opcodes.pot: Regenerate.
995 2007-06-30  H.J. Lu  <hongjiu.lu@intel.com>
997         * aclocal.m4: Regenerated.
998         * Makefile.in: Likewise.
1000 2007-06-29  H.J. Lu  <hongjiu.lu@intel.com>
1002         * i386-reg.tbl: Remove spaces before comments.
1004 2007-06-29  M R Swami Reddy  <MR.Swami.Reddy@nsc.com>
1006         * cr16-opc.c: New file.
1007         * cr16-dis.c: New file.
1008         * Makefile.am: Entries for cr16.
1009         * Makefile.in: Regenerate.
1010         * cofigure.in: Add cr16 target information.
1011         * configure  : Regenerate.
1012         * disassemble.c: Add cr16 target information.
1014 2007-06-28  H.J. Lu  <hongjiu.lu@intel.com>
1016         * Makefile.am (HFILES): Add i386-opc.h and i386-tbl.h.
1017         (CFILES): Add i386-gen.c.
1018         (i386-gen): New rule.
1019         (i386-gen.o): Likewise.
1020         (i386-tbl.h): Likewise.
1021         Run "make dep-am".
1022         * Makefile.in: Regenerated.
1024         * i386-gen.c: New file.
1025         * i386-opc.tbl: Likewise.
1026         * i386-reg.tbl: Likewise.
1027         * i386-tbl.h: Likewise.
1029         * i386-opc.c: Include "i386-tbl.h".
1030         (i386_optab): Removed.
1031         (i386_regtab): Likewise.
1032         (i386_regtab_size): Likewise.
1034 2007-06-26  Paul Brook  <paul@codesourcery.com>
1036         * arm-dis.c (coprocessor_opcodes): Add fmxr/fmrx mvfr0/mvfr1.
1038 2007-06-25  H.J. Lu  <hongjiu.lu@intel.com>
1040         * i386-opc.h (regKludge): Renamed to ...
1041         (RegKludge): This.
1043         * i386-opc.c (i386_optab): Replace regKludge with RegKludge.
1045 2007-06-23  H.J. Lu  <hongjiu.lu@intel.com>
1047         PR binutils/4667
1048         * i386-dis.c (EX): Removed.
1049         (EMd): New.
1050         (EMq): Likewise.
1051         (EXd): Likewise.
1052         (EXq): Likewise.
1053         (EXx): Likewise.
1054         (PREGRP93...PREGRP97): Likewise.
1055         (dis386_twobyte): Updated.
1056         (prefix_user_table): Updated. Add PREGRP93...PREGRP97.
1057         (OP_EX): Remove Intel syntax handling.
1059 2007-06-18  Nathan Sidwell  <nathan@codesourcery.com>
1061         * m68k-opc.c (m68k_opcodes): Add wdebugl variants.
1063 2007-06-14  H.J. Lu  <hongjiu.lu@intel.com>
1065         * Makefile.am (ACLOCAL_AMFLAGS): Add -I ../config -I ../bfd.
1067         * acinclude.m4: Removed.
1069         * Makefile.in: Regenerated.
1070         * doc/Makefile.in: Likewise.
1071         * aclocal.m4: Likewise.
1072         * configure: Likewise.
1074 2007-06-05  Paul Brook  <paul@codesourcery.com>
1076         * arm-dis.c (thumb32_opcodes): Display writeback ldrd/strd addresses.
1078 2007-05-24  Steve Ellcey  <sje@cup.hp.com>
1080         * Makefile.in: Regnerate.
1081         * configure: Regenerate.
1082         * aclocal.m4: Regenerate.
1084 2007-05-18  Alan Modra  <amodra@bigpond.net.au>
1086         * ppc-dis.c (print_insn_powerpc): Don't skip all operands
1087         after setting skip_optional.
1089 2007-05-16  Peter Bergner  <bergner@vnet.ibm.com>
1091         * ppc-dis.c (operand_value_powerpc, skip_optional_operands): New.
1092         (print_insn_powerpc): Use the new operand_value_powerpc and
1093         skip_optional_operands functions to omit or print all optional
1094         operands as a group.
1095         * ppc-opc.c (BFF, W, XFL_L, XWRA_MASK): New.
1096         (XFL_MASK): Delete L and W bits from the mask.
1097         (mtfsfi, mtfsfi.): Replace use of BF with BFF.  Relpace use of XRA_MASK
1098         with XWRA_MASK.  Use W.
1099         (mtfsf, mtfsf.): Use XFL_L and W.
1101 2007-05-14  H.J. Lu  <hongjiu.lu@intel.com>
1103         PR binutils/4502
1104         * i386-dis.c (Suffix3DNow): Replace "pfmulhrw" with "pmulhrw".
1106 2007-05-10  H.J. Lu  <hongjiu.lu@intel.com>
1108         * i386-opc.h (ShortForm): Redefined.
1109         (Jump): Likewise.
1110         (JumpDword): Likewise.
1111         (JumpByte): Likewise.
1112         (JumpInterSegment): Likewise.
1113         (FloatMF): Likewise.
1114         (FloatR): Likewise.
1115         (FloatD): Likewise.
1116         (Size16): Likewise.
1117         (Size32): Likewise.
1118         (Size64): Likewise.
1119         (IgnoreSize): Likewise.
1120         (DefaultSize): Likewise.
1121         (No_bSuf): Likewise.
1122         (No_wSuf): Likewise.
1123         (No_lSuf): Likewise.
1124         (No_sSuf): Likewise.
1125         (No_qSuf): Likewise.
1126         (No_xSuf): Likewise.
1127         (FWait): Likewise.
1128         (IsString): Likewise.
1129         (regKludge): Likewise.
1130         (IsPrefix): Likewise.
1131         (ImmExt): Likewise.
1132         (NoRex64): Likewise.
1133         (Rex64): Likewise.
1134         (Ugh): Likewise.
1136 2007-05-07  H.J. Lu  <hongjiu.lu@intel.com>
1138         * i386-dis.c (threebyte_0x38_uses_DATA_prefix): Correct entries
1139         for some SSE4 instructions.
1140         (threebyte_0x3a_uses_DATA_prefix): Likewise.
1142 2007-05-03  H.J. Lu  <hongjiu.lu@intel.com>
1144         * i386-dis.c (CRC32_Fixup): Don't print suffix in Intel mode.
1146         * i386-opc.c (i386_optab): Remove IgnoreSize and correct operand
1147         type for crc32.
1149 2007-05-01  H.J. Lu  <hongjiu.lu@intel.com>
1151         * i386-dis.c (CRC32_Fixup): Properly handle Intel mode and
1152         check data size prefix in 16bit mode.
1154         * i386-opc.c (i386_optab): Default crc32 to non-8bit and
1155         support Intel mode.
1157 2007-04-30  Mark Salter  <msalter@redhat.com>
1159         * frv-desc.c: Regenerate.
1160         * frv-desc.h: Regenerate.
1162 2007-04-30  Alan Modra  <amodra@bigpond.net.au>
1164         PR 4436
1165         * ppc-opc.c (powerpc_operands): Correct bitm for second entry of MBE.
1167 2007-04-27  H.J. Lu  <hongjiu.lu@intel.com>
1169         * i386-dis.c (modrm): Put reg before rm.
1171 2007-04-26  H.J. Lu  <hongjiu.lu@intel.com>
1173         PR binutils/4430
1174         * i386-dis.c (print_displacement): New.
1175         (OP_E): Call print_displacement instead of print_operand_value
1176         to output displacement when either base or index exist.  Print
1177         the explicit zero displacement in 16bit mode.
1179 2007-04-26  H.J. Lu  <hongjiu.lu@intel.com>
1181         PR binutils/4429
1182         * i386-dis.c (print_insn): Also swap the order of op_riprel
1183         when swapping op_index.  Break when the RIP relative address
1184         is printed.
1185         (OP_E): Properly handle RIP relative addressing and print the
1186         explicit zero displacement for Intel mode.
1188 2007-04-27  Alan Modra  <amodra@bigpond.net.au>
1190         * Makefile.am: Run "make dep-am".
1191         * Makefile.in: Regenerate.
1192         * ns32k-dis.c: Include sysdep.h first.
1194 2007-04-24  Andreas Krebbel  <krebbel1@de.ibm.com>
1196         * opcodes/s390-opc.c (MASK_SSF_RRDRD): Fourth nybble belongs to the
1197         opcode.
1198         * opcodes/s390-opc.txt (pfpo, ectg, csst): Add new z9-ec instructions.
1200 2007-04-24  Nick Clifton  <nickc@redhat.com>
1202         * arm-dis.c (print_insn): Initialise type.
1204 2007-04-24  Alan Modra  <amodra@bigpond.net.au>
1206         * cgen-types.h: Include bfd_stdint.h, not stdint.h.
1207         * Makefile.am: Run "make dep-am".
1208         * Makefile.in: Regenerate.
1210 2007-04-23  Nathan Sidwell  <nathan@codesourcery.com>
1212         * m68k-opc.c: Mark mcfisa_c instructions.
1214 2007-04-21  Richard Earnshaw  <rearnsha@arm.com>
1216         * arm-dis.c (arm_opcodes): Disassemble to unified syntax.
1217         (thumb_opcodes): Add missing white space in adr.
1218         (arm_decode_shift): New parameter, print_shift.  Only decode the
1219         shift parameter if set.  Adjust callers.
1220         (print_insn_arm): Support for operand type q with no shift decode.
1222 2007-04-21  Alan Modra  <amodra@bigpond.net.au>
1224         * i386-opc.c (i386_float_regtab, i386_float_regtab_size): Delete.
1225         Move contents to..
1226         (i386_regtab): ..here.
1227         * i386-opc.h (i386_float_regtab, i386_float_regtab_size): Delete.
1229         * ppc-opc.c (powerpc_operands): Delete duplicate entries.
1230         (BA_MASK, FXM_MASK, STRM_MASK, VA_MASK, VB_MASK, VC_MASK): Delete.
1231         (VD_MASK, WS_MASK, MTMSRD_L, XRT_L): Delete.
1232         (powerpc_opcodes): Replace uses of MTMSRD_L and XRT_L.
1234 2007-04-20  Nathan Sidwell  <nathan@codesourcery.com>
1236         * m68k-dis.c (print_insn_arg): Show c04 as rambar0 and c05 as
1237         rambar1.
1239 2007-04-20  Alan Modra  <amodra@bigpond.net.au>
1241         * ppc-dis.c (print_insn_powerpc): Adjust for struct powerpc_operand
1242         change.
1243         * ppc-opc.c (powerpc_operands): Replace bit count with bit mask
1244         in all entries.  Add PPC_OPERAND_SIGNED to DE entry.  Remove
1245         references to following deleted functions.
1246         (insert_bd, extract_bd, insert_dq, extract_dq): Delete.
1247         (insert_ds, extract_ds, insert_de, extract_de): Delete.
1248         (insert_des, extract_des, insert_li, extract_li): Delete.
1249         (insert_nb, insert_rsq, insert_rtq, insert_ev2, extract_ev2): Delete.
1250         (insert_ev4, extract_ev4, insert_ev8, extract_ev8): Delete.
1251         (num_powerpc_operands): New constant.
1252         (XSPRG_MASK): Remove entire SPRG field.
1253         (powerpc_opcodes <bcctre, bcctrel>): Use XLBB_MASK not XLYBB_MASK.
1255 2007-04-20  Alan Modra  <amodra@bigpond.net.au>
1257         * ppc-opc.c (DCM, DGM, TE, RMC, R, SP, S): Correct shift.
1258         (Z2_MASK): Define.
1259         (powerpc_opcodes): Use Z2_MASK in all insns taking RMC operand.
1261 2007-04-20  Richard Earnshaw  <rearnsha@arm.com>
1263         * arm-dis.c (print_insn): Only look for a mapping symbol in the section
1264         being disassembled.
1266 2007-04-19  Alan Modra  <amodra@bigpond.net.au>
1268         * Makefile.am: Run "make dep-am".
1269         * Makefile.in: Regenerate.
1270         * po/POTFILES.in: Regenerate.
1272 2007-04-19  Alan Modra  <amodra@bigpond.net.au>
1274         * ppc-opc.c (powerpc_opcodes): Add cctpl, cctpm, cctph, db8cyc,
1275         db10cyc, db12cyc, db16cyc.
1277 2007-04-19  Nathan Froyd <froydnj@codesourcery.com>
1279         * ppc-opc.c (powerpc_opcodes): Recognize three-operand tlbsxe.
1281 2007-04-18  H.J. Lu <hongjiu.lu@intel.com>
1283         * i386-dis.c (CRC32_Fixup): New.
1284         (PREGRP85, PREGRP86, PREGRP87, PREGRP88, PREGRP89, PREGRP90,
1285          PREGRP91): New.
1286         (threebyte_0x38_uses_DATA_prefix): Updated for SSE4.2.
1287         (threebyte_0x3a_uses_DATA_prefix): Likewise.
1288         (prefix_user_table): Add PREGRP85, PREGRP86, PREGRP87,
1289         PREGRP88, PREGRP89, PREGRP90 and PREGRP91.
1290         (three_byte_table): Likewise.
1292         * i386-opc.c (i386_optab): Add SSE4.2 opcodes.
1294         * i386-opc.h (CpuSSE4_2): New.
1295         (CpuSSE4): Likewise.
1296         (CpuUnknownFlags): Add CpuSSE4_2.
1298 2007-04-18  H.J. Lu <hongjiu.lu@intel.com>
1300         * i386-dis.c (XMM_Fixup): New.
1301         (Edqb): New.
1302         (Edqd): New.
1303         (XMM0): New.
1304         (dqb_mode): New.
1305         (dqd_mode): New.
1306         (PREGRP39 ... PREGRP85): New.
1307         (threebyte_0x38_uses_DATA_prefix): Updated for SSE4.
1308         (threebyte_0x3a_uses_DATA_prefix): Likewise.
1309         (prefix_user_table): Add PREGRP39 ... PREGRP85.
1310         (three_byte_table): Likewise.
1311         (putop): Handle 'K'.
1312         (intel_operand_size): Handle dqb_mode, dqd_mode):
1313         (OP_E): Likewise.
1314         (OP_G): Likewise.
1316         * i386-opc.c (i386_optab): Add SSE4.1 opcodes.
1318         * i386-opc.h (CpuSSE4_1): New.
1319         (CpuUnknownFlags): Add CpuSSE4_1.
1320         (regKludge): Update comment.
1322 2007-04-18  Matthias Klose  <doko@ubuntu.com>
1324         * Makefile.am (libopcodes_la_LDFLAGS): Use bfd soversion.
1325         * Makefile.in: Regenerate.
1327 2007-04-14  Steve Ellcey  <sje@cup.hp.com>
1329         * Makefile.am: Add ACLOCAL_AMFLAGS.
1330         * Makefile.in: Regenerate.
1332 2007-04-13  H.J. Lu  <hongjiu.lu@intel.com>
1334         * i386-dis.c: Remove trailing white spaces.
1335         * i386-opc.c: Likewise.
1336         * i386-opc.h: Likewise.
1338 2007-04-11  H.J. Lu  <hongjiu.lu@intel.com>
1340         PR binutils/4333
1341         * i386-dis.c (GRP1a): New.
1342         (GRP1b ... GRPPADLCK2): Update index.
1343         (dis386): Use GRP1a for entry 0x8f.
1344         (mod, rm, reg): Removed. Replaced by ...
1345         (modrm): This.
1346         (grps): Add GRP1a.
1348 2007-04-09  Kazu Hirata  <kazu@codesourcery.com>
1350         * m68k-dis.c (print_insn_m68k): Restore info->fprintf_func and
1351         info->print_address_func if longjmp is called.
1353 2007-03-29  DJ Delorie  <dj@redhat.com>
1355         * m32c-desc.c: Regenerate.
1356         * m32c-dis.c: Regenerate.
1357         * m32c-opc.c: Regenerate.
1359 2007-03-28  H.J. Lu  <hongjiu.lu@intel.com>
1361         * i386-opc.c (i386_optab): Change InvMem to RegMem for mov and
1362         movq.  Remove InvMem from sldt, smsw and str.
1364         * i386-opc.h (InvMem): Renamed to ...
1365         (RegMem): Update comments.
1366         (AnyMem): Remove InvMem.
1368 2007-03-27  Paul Brook  <paul@codesourcery.com>
1370         * arm-dis.c (thumb_opcodes): Add entry for undefined insns (0xbe??).
1372 2007-03-24  Paul Brook  <paul@codesourcery.com>
1374         * arm-dis.c (coprocessor_opcodes): Remove superfluous 0x.
1375         (print_insn_coprocessor): Handle %<bitfield>x.
1377 2007-03-24  Paul Brook  <paul@codesourcery.com>
1378             Mark Shinwell  <shinwell@codesourcery.com>
1380         * arm-dis.c (arm_opcodes): Print SRS base register.
1382 2007-03-23  H.J. Lu  <hongjiu.lu@intel.com>
1384         * i386-dis.c (prefix_name): Replace rex64XYZ with rex.WRXB.
1386         * i386-opc.c (i386_optab): Add rex.wrxb.
1388 2007-03-21  H.J. Lu  <hongjiu.lu@intel.com>
1390         * i386-dis.c (REX_MODE64): Remove definition.
1391         (REX_EXTX): Likewise.
1392         (REX_EXTY): Likewise.
1393         (REX_EXTZ): Likewise.
1394         (USED_REX): Use REX_OPCODE instead of 0x40.
1395         Replace REX_MODE64, REX_EXTX, REX_EXTY and REX_EXTZ with REX_W,
1396         REX_R, REX_X and REX_B respectively.
1398 2007-03-21  H.J. Lu  <hongjiu.lu@intel.com>
1400         PR binutils/4218
1401         * i386-dis.c (PREGRP38): New.
1402         (dis386): Use PREGRP38 for 0x90.
1403         (prefix_user_table): Add PREGRP38.
1404         (print_insn): Set uses_REPZ_prefix to 1 for pause.
1405         (NOP_Fixup1): Properly handle REX bits.
1406         (NOP_Fixup2): Likewise.
1408         * i386-opc.c (i386_optab): Allow %eax with xchg in 64bit.
1409         Allow register with nop.
1411 2007-03-20  DJ Delorie  <dj@redhat.com>
1413         * m32c-asm.c: Regenerate.
1414         * m32c-desc.c: Regenerate.
1415         * m32c-desc.h: Regenerate.
1416         * m32c-dis.h: Regenerate.
1417         * m32c-ibld.c: Regenerate.
1418         * m32c-opc.c: Regenerate.
1419         * m32c-opc.h: Regenerate.
1421 2007-03-15  H.J. Lu  <hongjiu.lu@intel.com>
1423         * i386-opc.c: Include "libiberty.h".
1424         (i386_regtab): Remove the last entry.
1425         (i386_regtab_size): New.
1426         (i386_float_regtab_size): Likewise.
1428         * i386-opc.h (i386_regtab_size): New.
1429         (i386_float_regtab_size): Likewise.
1431 2007-03-15  H.J. Lu  <hongjiu.lu@intel.com>
1433         * Makefile.am (CFILES): Add i386-opc.c.
1434         (ALL_MACHINES): Add i386-opc.lo.
1435         Run "make dep-am".
1436         * Makefile.in: Regenerated.
1438         * configure.in: Add i386-opc.lo for bfd_i386_arch.
1439         * configure: Regenerated.
1441         * i386-dis.c: Include "opcode/i386.h".
1442         (MAXLEN): Renamed to MAX_MNEM_SIZE. Remove definition.
1443         (FWAIT_OPCODE): Remove definition.
1444         (UNIXWARE_COMPAT): Renamed to SYSV386_COMPAT. Remove definition.
1445         (MAX_OPERANDS): Remove definition.
1447         * i386-opc.c: New file.
1448         * i386-opc.h: Likewise.
1450 2007-03-15  H.J. Lu  <hongjiu.lu@intel.com>
1452         * Makefile.in: Regenerated.
1454 2007-03-09  H.J. Lu  <hongjiu.lu@intel.com>
1456         * i386-dis.c (OP_Rd): Renamed to ...
1457         (OP_R): This.
1458         (Rd): Updated.
1459         (Rm): Likewise.
1461 2007-03-08  Alan Modra  <amodra@bigpond.net.au>
1463         * fr30-asm.c: Regenerate.
1464         * frv-asm.c: Regenerate.
1465         * ip2k-asm.c: Regenerate.
1466         * iq2000-asm.c: Regenerate.
1467         * m32c-asm.c: Regenerate.
1468         * m32r-asm.c: Regenerate.
1469         * m32r-dis.c: Regenerate.
1470         * mt-asm.c: Regenerate.
1471         * mt-ibld.c: Regenerate.
1472         * mt-opc.c: Regenerate.
1473         * openrisc-asm.c: Regenerate.
1474         * xc16x-asm.c: Regenerate.
1475         * xstormy16-asm.c: Regenerate.
1477         * Makefile.am: Run "make dep-am".
1478         * Makefile.in: Regenerate.
1479         * po/POTFILES.in: Regenerate.
1481 2007-03-06  Andreas Krebbel  <krebbel1@de.ibm.com>
1483         * opcodes/s390-opc.c (INSTR_RRE_FR, INSTR_RRF_F0FF2, INSTR_RRF_F0FR,
1484         INSTR_RRF_UUFF, INSTR_RRF_0UFF, INSTR_RRF_FFFU, INSTR_RRR_F0FF): New
1485         instruction formats added.
1486         (MASK_RRE_FR, MASK_RRF_F0FF2, MASK_RRF_F0FR, MASK_RRF_UUFF,
1487         MASK_RRF_0UFF, MASK_RRF_FFFU, MASK_RRR_F0FF): New instruction format
1488         masks added.
1489         * opcodes/s390-opc.txt (lpdfr - tgxt): Decimal floating point
1490         instructions added.
1491         * opcodes/s390-mkopc.c (s390_opcode_cpu_val): S390_OPCODE_Z9_EC added.
1492         (main): z9-ec cpu type option added.
1493         * include/opcode/s390.h (s390_opcode_cpu_val): S390_OPCODE_Z9_EC added.
1495 2007-02-22  DJ Delorie  <dj@redhat.com>
1497         * s390-opc.c (INSTR_SS_L2RDRD): New.
1498         (MASK_SS_L2RDRD): New.
1499         * s390-opc.txt (pka): Use it.
1501 2007-02-20  Thiemo Seufer  <ths@mips.com>
1502             Chao-Ying Fu  <fu@mips.com>
1504         * mips-dis.c (mips_arch_choices): Add DSP R2 support.
1505         (print_insn_args): Add support for balign instruction.
1506         * mips-opc.c (D33): New shortcut for DSP R2 instructions.
1507         (mips_builtin_opcodes): Add DSP R2 instructions.
1509 2007-02-19  Andreas Krebbel  <krebbel1@de.ibm.com>
1511         * s390-opc.c (INSTR_RRF_U0FR, MASK_RRF_U0FR): Removed.
1512         (INSTR_RRF_U0RF, MASK_RRF_U0RF): Added.
1513         * s390-opc.txt (cfxbr, cfdbr, cfebr, cgebr, cgdbr, cgxbr, cger, cgdr,
1514         cgxr, cfxr, cfdr, cfer): Instruction type set to INSTR_RRF_U0RF.
1516 2007-02-19  Andreas Krebbel  <krebbel1@de.ibm.com>
1518         * s390-opc.txt ("efpc", "sfpc"): Set to RRE_RR_OPT instruction type.
1519         * s390-opc.c (s390_operands): Add RO_28 as optional gpr.
1520         (INSTR_RRE_RR_OPT, MASK_RRE_RR_OPT): New instruction type for efpc
1521         and sfpc.
1523 2007-02-16  Nick Clifton  <nickc@redhat.com>
1525         PR binutils/4045
1526         * avr-dis.c (comment_start): New variable, contains the prefix to
1527         use when printing addresses in comments.
1528         (print_insn_avr): Set comment_start to an empty space if there is
1529         no symbol table available as the generic address printing code
1530         will prefix the numeric value of the address with 0x.
1532 2007-02-13  H.J. Lu  <hongjiu.lu@intel.com>
1534          * i386-dis.c: Updated to use an array of MAX_OPERANDS operands
1535          in struct dis386.
1537 2007-02-05  Dave Brolley  <brolley@redhat.com>
1538             Richard Sandiford  <rsandifo@redhat.com>
1539             DJ Delorie  <dj@redhat.com>
1540             Graydon Hoare  <graydon@redhat.com>
1541             Frank Ch. Eigler  <fche@redhat.com>
1542             Ben Elliston  <bje@redhat.com>
1544         * Makefile.am (HFILES): Add mep-desc.h mep-opc.h.
1545         (CFILES): Add mep-*.c
1546         (ALL_MACHINES): Add mep-*.lo.
1547         (CLEANFILES): Add stamp-mep.
1548         (CGEN_CPUS): Add mep.
1549         (MEP_DEPS): New variable.
1550         (mep-*): New targets.
1551         * configure.in: Handle bfd_mep_arch.
1552         * disassemble.c (ARCH_mep): New macro.
1553         (disassembler): Handle bfd_arch_mep.
1554         (disassemble_init_for_target): Likewise.
1555         * mep-*: New files for Toshiba Media Processor (MeP).
1556         * Makefile.in: Regenerated.
1557         * configure: Regenerated.
1559 2007-02-05  H.J. Lu  <hongjiu.lu@intel.com>
1561         * i386-dis.c (OP_J): Undo the last change. Properly handle 64K
1562         wrap around within the same segment in 16bit mode.
1564 2007-02-02  H.J. Lu  <hongjiu.lu@intel.com>
1566         * i386-dis.c (OP_J): Mask to 16bit only if there is a data16
1567         prefix.
1569 2007-02-02  H.J. Lu  <hongjiu.lu@intel.com>
1571         * avr-dis.c (avr_operand): Correct PR number in comment.
1573 2007-02-02  H.J. Lu  <hongjiu.lu@intel.com>
1575         * disassemble.c (disassembler_usage): Call
1576         print_i386_disassembler_options for i386 disassembler.
1578         * i386-dis.c (print_i386_disassembler_options): New.
1579         (print_insn): Support the new addr64 option.
1581 2007-02-02  Hiroki Kaminaga  <kaminaga@sm.sony.co.jp>
1583         * ppc-dis.c (powerpc_dialect): Handle ppc440.
1584         * ppc-dis.c (print_ppc_disassembler_options): Note the -M440 can
1585         be used.
1587 2007-02-02  Alan Modra  <amodra@bigpond.net.au>
1589         * ppc-opc.c (insert_bdm): -Many comment.
1590         (valid_bo): Add "extract" param.  Accept both powerpc and power4
1591         BO fields when disassembling with -Many.
1592         (insert_bo, extract_bo, insert_boe, extract_boe): Adjust valid_bo call.
1594 2007-01-08  Kazu Hirata  <kazu@codesourcery.com>
1596         * m68k-opc.c (m68k_opcodes): Replace cpu32 with
1597         cpu32 | fido_a except on tbl instructions.
1599 2007-01-04  Paul Brook  <paul@codesourcery.com>
1601         * arm-dis.c (arm_opcodes): Fix cpsie and cpsid entries.
1603 2007-01-04  Andreas Schwab  <schwab@suse.de>
1605         * m68k-opc.c: Fix encoding of signed bit in the cpu32 tbls insns.
1607 2007-01-04  Julian Brown  <julian@codesourcery.com>
1609         * arm-dis.c (neon_opcode): Fix disassembly for vshl, vqshl, vrshl,
1610         vqrshl instructions.
1612 For older changes see ChangeLog-2006
1614 Local Variables:
1615 mode: change-log
1616 left-margin: 8
1617 fill-column: 74
1618 version-control: never
1619 End: