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