1 2012-07-31 Chao-Ying Fu <fu@mips.com>
2 Catherine Moore <clm@codesourcery.com>
3 Maciej W. Rozycki <macro@codesourcery.com>
5 * micromips-opc.c (WR_a, RD_a, MOD_a): New macros.
8 (micromips_opcodes): Add DSP ASE instructions.
9 * micromips-dis.c (print_insn_micromips) <'2', '3'>: New cases.
10 <'4', '5', '6', '7', '8', '0', '^', '@'>: Likewise.
12 2012-07-31 Jan Beulich <jbeulich@suse.com>
14 * i386-opc.tbl (vmovntdqa): Move up into 256-bit integer AVX2
15 instruction group. Mark as requiring AVX2.
16 * i386-tbl.h: Re-generate.
18 2012-07-30 Nick Clifton <nickc@redhat.com>
20 * po/opcodes.pot: Updated template.
21 * po/es.po: Updated Spanish translation.
22 * po/fi.po: Updated Finnish translation.
24 2012-07-27 Mike Frysinger <vapier@gentoo.org>
26 * configure.in (BFD_VERSION): Run bfd/configure --version and
27 parse the output of that.
28 * configure: Regenerate.
30 2012-07-25 James Lemke <jwlemke@codesourcery.com>
32 * ppc-opc.c (powerpc_opcodes): Add/remove PPCVLE for some 32-bit insns.
34 2012-07-24 Stephan McCamant <smcc@cs.berkeley.edu>
35 Dr David Alan Gilbert <dave@treblig.org>
38 * arm-dis.c: Add necessary casts for printing integer values.
39 Use %s when printing string values.
40 * hppa-dis.c: Likewise.
41 * m68k-dis.c: Likewise.
42 * microblaze-dis.c: Likewise.
43 * mips-dis.c: Likewise.
44 * sparc-dis.c: Likewise.
46 2012-07-19 Michael Zolotukhin <michael.v.zolotukhin@intel.com>
49 * i386-dis.c (VEX_LEN_0FXOP_08_CC): New.
50 (VEX_LEN_0FXOP_08_CD): Likewise.
51 (VEX_LEN_0FXOP_08_CE): Likewise.
52 (VEX_LEN_0FXOP_08_CF): Likewise.
53 (VEX_LEN_0FXOP_08_EC): Likewise.
54 (VEX_LEN_0FXOP_08_ED): Likewise.
55 (VEX_LEN_0FXOP_08_EE): Likewise.
56 (VEX_LEN_0FXOP_08_EF): Likewise.
57 (xop_table): Fix entries for vpcomb, vpcomw, vpcomd, vpcomq,
58 vpcomub, vpcomuw, vpcomud, vpcomuq.
59 (vex_len_table): Add entries for VEX_LEN_0FXOP_08_CC,
60 VEX_LEN_0FXOP_08_CD, VEX_LEN_0FXOP_08_CE, VEX_LEN_0FXOP_08_CF,
61 VEX_LEN_0FXOP_08_EC, VEX_LEN_0FXOP_08_ED, VEX_LEN_0FXOP_08_EE,
64 2012-07-16 Michael Zolotukhin <michael.v.zolotukhin@intel.com>
66 * i386-dis.c (PREFIX_0F38F6): New.
67 (prefix_table): Add adcx, adox instructions.
68 (three_byte_table): Use PREFIX_0F38F6.
69 (mod_table): Add rdseed instruction.
70 * i386-gen.c (cpu_flag_init): Add CpuADX, CpuRDSEED, CpuPRFCHW.
71 (cpu_flags): Likewise.
72 * i386-opc.h: Add CpuADX, CpuRDSEED, CpuPRFCHW.
73 (i386_cpu_flags): Add fields cpurdseed, cpuadx, cpuprfchw.
74 * i386-opc.tbl: Add instrcutions adcx, adox, rdseed. Extend
76 * i386-tbl.h: Regenerate.
77 * i386-init.h: Likewise.
79 2012-07-05 Thomas Schwinge <thomas@codesourcery.com>
81 * mips-dis.c: Remove gratuitous newline.
83 2012-07-05 Sean Keys <skeys@ipdatasys.com>
85 * xgate-dis.c: Removed an IF statement that will
86 always be false due to overlapping operand masks.
87 * xgate-opc.c: Corrected 'com' opcode entry and
90 2012-07-02 Roland McGrath <mcgrathr@google.com>
92 * i386-opc.tbl: Add RepPrefixOk to nop.
93 * i386-tbl.h: Regenerate.
95 2012-06-28 Nick Clifton <nickc@redhat.com>
97 * po/vi.po: Updated Vietnamese translation.
99 2012-06-22 Roland McGrath <mcgrathr@google.com>
101 * i386-opc.tbl: Add RepPrefixOk to ret.
102 * i386-tbl.h: Regenerate.
104 * i386-opc.h (RepPrefixOk): New enum constant.
105 (i386_opcode_modifier): New bitfield 'repprefixok'.
106 * i386-gen.c (opcode_modifiers): Add RepPrefixOk.
107 * i386-opc.tbl: Add RepPrefixOk to bsf, bsr, and to all
108 instructions that have IsString.
109 * i386-tbl.h: Regenerate.
111 2012-06-11 Andreas Schwab <schwab@linux-m68k.org>
113 * ppc-opc.c (lvsl, lvebx, isellt, icbt, ldepx, lwepx, lvsr, lvehx)
114 (iselgt, lvewx, iseleq, isel, dcbst, dcbstep, dcbfl, dcbf, lbepx)
115 (lvx, dcbfep, dcbtstls, stvebx, dcbtstlse, stdepx, stwepx, dcbtls)
116 (stvehx, dcbtlse, stvewx, stbepx, icblc, stvx, dcbtstt, dcbtst)
117 (dcbtst, dcbtstep, dcbtt, dcbt, dcbt, lhepx, eciwx, dcbtep)
118 (dcread, lxvdsx, lvxl, dcblc, sthepx, ecowx, dcbi, dcread, icbtls)
119 (stvxl, lxsdx, lfdepx, stxsdx, stfdepx, dcba, dcbal, lxvw4x)
120 (tlbivax, lfdpx, lxvd2x, tlbsrx., stxvw4x, tlbsx, tlbsx., stfdpx)
121 (stfqx, stxvd2x, icbi, icbiep, icread, dcbzep): Change RA to RA0.
123 2012-05-19 Alan Modra <amodra@gmail.com>
125 * ppc-dis.c: Don't include elf32-ppc.h, do include elf/ppc.h.
126 (get_powerpc_dialect): Detect VLE sections from ELF sh_flags.
128 2012-05-18 Alan Modra <amodra@gmail.com>
130 * ia64-opc.c: Remove #include "ansidecl.h".
131 * z8kgen.c: Include sysdep.h first.
133 * arc-dis.c: Include sysdep.h first, remove some redundant includes.
134 * bfin-dis.c: Likewise.
135 * i860-dis.c: Likewise.
136 * ia64-dis.c: Likewise.
137 * ia64-gen.c: Likewise.
138 * m68hc11-dis.c: Likewise.
139 * mmix-dis.c: Likewise.
140 * msp430-dis.c: Likewise.
141 * or32-dis.c: Likewise.
142 * rl78-dis.c: Likewise.
143 * rx-dis.c: Likewise.
144 * tic4x-dis.c: Likewise.
145 * tilegx-opc.c: Likewise.
146 * tilepro-opc.c: Likewise.
147 * rx-decode.c: Regenerate.
149 2012-05-17 James Lemke <jwlemke@codesourcery.com>
151 * ppc-opc.c (powerpc_macros): Add entries for e_extlwi to e_clrlslwi.
153 2012-05-17 James Lemke <jwlemke@codesourcery.com>
155 * ppc-opc.c (extract_sprg): Use ALLOW8_SPRG to include VLE.
157 2012-05-17 Daniel Richard G. <skunk@iskunk.org>
158 Nick Clifton <nickc@redhat.com>
161 * configure.in: Add check that sysdep.h has been included before
162 any system header files.
163 * configure: Regenerate.
164 * config.in: Regenerate.
165 * sysdep.h: Generate an error if included before config.h.
166 * alpha-opc.c: Include sysdep.h before any other header file.
167 * alpha-dis.c: Likewise.
168 * avr-dis.c: Likewise.
169 * cgen-opc.c: Likewise.
170 * cr16-dis.c: Likewise.
171 * cris-dis.c: Likewise.
172 * crx-dis.c: Likewise.
173 * d10v-dis.c: Likewise.
174 * d10v-opc.c: Likewise.
175 * d30v-dis.c: Likewise.
176 * d30v-opc.c: Likewise.
177 * h8500-dis.c: Likewise.
178 * i370-dis.c: Likewise.
179 * i370-opc.c: Likewise.
180 * m10200-dis.c: Likewise.
181 * m10300-dis.c: Likewise.
182 * micromips-opc.c: Likewise.
183 * mips-opc.c: Likewise.
184 * mips61-opc.c: Likewise.
185 * moxie-dis.c: Likewise.
186 * or32-opc.c: Likewise.
187 * pj-dis.c: Likewise.
188 * ppc-dis.c: Likewise.
189 * ppc-opc.c: Likewise.
190 * s390-dis.c: Likewise.
191 * sh-dis.c: Likewise.
192 * sh64-dis.c: Likewise.
193 * sparc-dis.c: Likewise.
194 * sparc-opc.c: Likewise.
195 * spu-dis.c: Likewise.
196 * tic30-dis.c: Likewise.
197 * tic54x-dis.c: Likewise.
198 * tic80-dis.c: Likewise.
199 * tic80-opc.c: Likewise.
200 * tilegx-dis.c: Likewise.
201 * tilepro-dis.c: Likewise.
202 * v850-dis.c: Likewise.
203 * v850-opc.c: Likewise.
204 * vax-dis.c: Likewise.
205 * w65-dis.c: Likewise.
206 * xgate-dis.c: Likewise.
207 * xtensa-dis.c: Likewise.
208 * rl78-decode.opc: Likewise.
209 * rl78-decode.c: Regenerate.
210 * rx-decode.opc: Likewise.
211 * rx-decode.c: Regenerate.
213 2012-05-17 Alan Modra <amodra@gmail.com>
215 * ppc_dis.c: Don't include elf/ppc.h.
217 2012-05-16 Meador Inge <meadori@codesourcery.com>
219 * arm-dis.c (arm_opcodes): Don't disassemble STMFD/LDMIA sp!, {reg}
222 2012-05-15 James Murray <jsm@jsm-net.demon.co.uk>
223 Stephane Carrez <stcarrez@nerim.fr>
225 * configure.in: Add S12X and XGATE co-processor support to m68hc11
227 * disassemble.c: Likewise.
228 * configure: Regenerate.
229 * m68hc11-dis.c: Make objdump output more consistent, use hex
230 instead of decimal and use 0x prefix for hex.
231 * m68hc11-opc.c: Add S12X and XGATE opcodes.
233 2012-05-14 James Lemke <jwlemke@codesourcery.com>
235 * ppc-dis.c (get_powerpc_dialect): Use is_ppc_vle.
236 (PPC_OPCD_SEGS, VLE_OPCD_SEGS): New defines.
237 (vle_opcd_indices): New array.
238 (lookup_vle): New function.
239 (disassemble_init_powerpc): Revise for second (VLE) opcode table.
240 (print_insn_powerpc): Likewise.
241 * ppc-opc.c: Likewise.
243 2012-05-14 Catherine Moore <clm@codesourcery.com>
244 Maciej W. Rozycki <macro@codesourcery.com>
245 Rhonda Wittels <rhonda@codesourcery.com>
246 Nathan Froyd <froydnj@codesourcery.com>
248 * ppc-opc.c (insert_arx, extract_arx): New functions.
249 (insert_ary, extract_ary): New functions.
250 (insert_li20, extract_li20): New functions.
251 (insert_rx, extract_rx): New functions.
252 (insert_ry, extract_ry): New functions.
253 (insert_sci8, extract_sci8): New functions.
254 (insert_sci8n, extract_sci8n): New functions.
255 (insert_sd4h, extract_sd4h): New functions.
256 (insert_sd4w, extract_sd4w): New functions.
257 (insert_vlesi, extract_vlesi): New functions.
258 (insert_vlensi, extract_vlensi): New functions.
259 (insert_vleui, extract_vleui): New functions.
260 (insert_vleil, extract_vleil): New functions.
261 (BI_MASK, BB_MASK, BT): Use PPC_OPERAND_CR_BIT.
262 (BI16, BI32, BO32, B8): New.
263 (B15, B24, CRD32, CRS): New.
264 (CRD, OBF, BFA, CR, CRFS): Use PPC_OPERAND_CR_REG.
265 (DB, IMM20, RD, Rx, ARX, RY, RZ): New.
266 (ARY, SCLSCI8, SCLSCI8N, SE_SD, SE_SDH): New.
267 (SH6_MASK): Use PPC_OPSHIFT_INV.
268 (SI8, UI5, OIMM5, UI7, BO16): New.
269 (VLESIMM, VLENSIMM, VLEUIMM, VLEUIMML): New.
270 (XT6, XA6, XB6, XB6S, XC6): Use PPC_OPSHIFT_INV.
272 (insert_sprg, extract_sprg): Check ALLOW8_SPRG.
273 (OPVUP, OPVUP_MASK OPVUP): New
274 (BD8, BD8_MASK, BD8IO, BD8IO_MASK): New.
275 (EBD8IO, EBD8IO1_MASK, EBD8IO2_MASK, EBD8IO3_MASK): New.
276 (BD15, BD15_MASK, EBD15, EBD15_MASK, EBD15BI, EBD15BI_MASK): New.
277 (BD24,BD24_MASK, C_LK, C_LK_MASK, C, C_MASK): New.
278 (IA16, IA16_MASK, I16A, I16A_MASK, I16L, I16L_MASK): New.
279 (IM7, IM7_MASK, LI20, LI20_MASK, SCI8, SCI8_MASK): New.
280 (SCI8BF, SCI8BF_MASK, SD4, SD4_MASK): New.
281 (SE_IM5, SE_IM5_MASK): New.
282 (SE_R, SE_R_MASK, SE_RR, SE_RR_MASK): New.
283 (EX, EX_MASK, BO16F, BO16T, BO32F, BO32T): New.
284 (BO32DNZ, BO32DZ): New.
285 (NO371, PPCSPE, PPCISEL, PPCEFS, MULHW): Include PPC_OPCODE_VLE.
287 (powerpc_opcodes): Add new VLE instructions. Update existing
288 instruction to include PPCVLE if supported.
289 * ppc-dis.c (ppc_opts): Add vle entry.
290 (get_powerpc_dialect): New function.
291 (powerpc_init_dialect): VLE support.
292 (print_insn_big_powerpc): Call get_powerpc_dialect.
293 (print_insn_little_powerpc): Likewise.
294 (operand_value_powerpc): Handle negative shift counts.
295 (print_insn_powerpc): Handle 2-byte instruction lengths.
297 2012-05-11 Daniel Richard G. <skunk@iskunk.org>
300 * configure.in: Invoke ACX_HEADER_STRING.
301 * configure: Regenerate.
302 * config.in: Regenerate.
303 * sysdep.h: If STRINGS_WITH_STRING is defined then include both
304 string.h and strings.h.
306 2012-05-11 Nick Clifton <nickc@redhat.com>
309 * arm-dis.c (print_insn): Fix detection of instruction mode in
310 files containing multiple executable sections.
312 2012-05-03 Sean Keys <skeys@ipdatasys.com>
314 * Makefile.in, configure: regenerate
315 * disassemble.c (disassembler): Recognize ARCH_XGATE.
316 * xgate-dis.c (read_memory, print_insn, print_insn_xgate):
318 * configure.in: Recognize xgate.
319 * xgate-dis.c, xgate-opc.c: New files for support of xgate
320 * Makefile.am (CFILES, ALL_MACHINES): New files for disassembly
321 and opcode generation for xgate.
323 2012-04-30 DJ Delorie <dj@redhat.com>
325 * rx-decode.opc (MOV): Do not sign-extend immediates which are
326 already the maximum bit size.
327 * rx-decode.c: Regenerate.
329 2012-04-27 David S. Miller <davem@davemloft.net>
331 * sparc-dis.c (v9a_asr_reg_names): Add 'cfr'.
332 * sparc-opc.c (sparc_opcodes): Add rd/wr cases for %cfr.
334 * sparc-opc.c (sparc_opcodes): Add 'wr X, %pause' and 'pause'.
335 * sparc-dis.c (v9a_asr_reg_names): Add 'pause'.
337 * sparc-opc.c (CBCOND): New define.
338 (CBCOND_XCC): Likewise.
339 (cbcond): New helper macro.
340 (sparc_opcodes): Add compare-and-branch instructions.
342 * sparc-dis.c (print_insn_sparc): Handle ')'.
343 * sparc-opc.c (sparc_opcodes): Add crypto instructions.
345 * sparc-opc.c (sparc_opcodes): Rework table to put HWCAP values
346 into new struct sparc_opcode 'hwcaps' field instead of 'flags'.
348 2012-04-12 David S. Miller <davem@davemloft.net>
350 * sparc-dis.c (X_DISP10): Define.
351 (print_insn_sparc): Handle '='.
353 2012-04-01 Mike Frysinger <vapier@gentoo.org>
355 * bfin-dis.c (fmtconst): Replace decimal handling with a single
356 sprintf call and the '*' field width.
358 2012-03-23 Maxim Kuvyrkov <maxim@codesourcery.com>
360 * mips-dis.c (mips_arch_choices): Add entry for Broadcom XLP.
362 2012-03-16 Alan Modra <amodra@gmail.com>
364 * ppc-dis.c (PPC_OPC_SEGS, PPC_OP_TO_SEG): Delete.
365 (powerpc_opcd_indices): Bump array size.
366 (disassemble_init_powerpc): Set powerpc_opcd_indices entries
367 corresponding to unused opcodes to following entry.
368 (lookup_powerpc): New function, extracted and optimised from..
369 (print_insn_powerpc): ..here.
371 2012-03-15 Alan Modra <amodra@gmail.com>
372 James Lemke <jwlemke@codesourcery.com>
374 * disassemble.c (disassemble_init_for_target): Handle ppc init.
375 * ppc-dis.c (private): New var.
376 (powerpc_init_dialect): Don't return calloc failure, instead use
378 (PPC_OPCD_SEGS, PPC_OP_TO_SEG): Define.
379 (powerpc_opcd_indices): New array.
380 (disassemble_init_powerpc): New function.
381 (print_insn_big_powerpc): Don't init dialect here.
382 (print_insn_little_powerpc): Likewise.
383 (print_insn_powerpc): Start search using powerpc_opcd_indices.
385 2012-03-10 Edmar Wienskoski <edmar@freescale.com>
387 * ppc-dis.c (ppc_opts): Add entries for "e5500" and "e6500".
388 * ppc-opc.c (insert_ls, TMR, ESYNC, XSYNCLE_MASK): New.
389 (PPCVEC2, PPCTMR, E6500): New short names.
390 (powerpc_opcodes): Add vabsdub, vabsduh, vabsduw, dni, mvidsplt,
391 mviwsplt, icblq., mftmr, mttmr, dcblq., miso, lvexbx, lvexhx,
392 lvexwx, stvexbx, stvexhx, stvexwx, lvepx, lvepxl, stvepx, stvepxl,
393 lvtrx, lvtrxl, lvtlx, lvtlxl, stvfrx, stvfrxl, stvflx, stvflxl,
394 lvswx, lvswxl, stvswx, stvswxl, lvsm mnemonics. Accept LS, ESYNC
395 optional operands on sync instruction for E6500 target.
397 2012-03-08 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
399 * s390-opc.txt: Set instruction type of pku to SS_L2RDRD.
401 2012-02-27 Alan Modra <amodra@gmail.com>
403 * mt-dis.c: Regenerate.
405 2012-02-27 Alan Modra <amodra@gmail.com>
407 * v850-opc.c (extract_v8): Rearrange to make it obvious this
408 is the inverse of corresponding insert function.
409 (extract_d22, extract_u9, extract_r4): Likewise.
410 (extract_d9): Correct sign extension.
411 (extract_d16_15): Don't assume "long" is 32 bits, and don't
412 rely on implementation defined behaviour for shift right of
414 (extract_d16_16, extract_d17_16, extract_i9): Likewise.
415 (extract_d23): Likewise, and correct mask.
417 2012-02-27 Alan Modra <amodra@gmail.com>
419 * crx-dis.c (print_arg): Mask constant to 32 bits.
420 * crx-opc.c (cst4_map): Use int array.
422 2012-02-27 Alan Modra <amodra@gmail.com>
424 * arc-dis.c (BITS): Don't use shifts to mask off bits.
425 (FIELDD): Sign extend with xor,sub.
427 2012-02-25 Walter Lee <walt@tilera.com>
429 * tilegx-opc.c: Handle TILEGX_OPC_LD4S_TLS and TILEGX_OPC_LD_TLS.
430 * tilepro-opc.c: Handle TILEPRO_OPC_LW_TLS and
431 TILEPRO_OPC_LW_TLS_SN.
433 2012-02-21 H.J. Lu <hongjiu.lu@intel.com>
435 * i386-opc.h (HLEPrefixNone): New.
436 (HLEPrefixLock): Likewise.
437 (HLEPrefixAny): Likewise.
438 (HLEPrefixRelease): Likewise.
440 2012-02-08 H.J. Lu <hongjiu.lu@intel.com>
442 * i386-dis.c (HLE_Fixup1): New.
443 (HLE_Fixup2): Likewise.
444 (HLE_Fixup3): Likewise.
451 (MOD_C6_REG_7): Likewise.
452 (MOD_C7_REG_7): Likewise.
453 (RM_C6_REG_7): Likewise.
454 (RM_C7_REG_7): Likewise.
455 (XACQUIRE_PREFIX): Likewise.
456 (XRELEASE_PREFIX): Likewise.
457 (dis386): Use Ebh1/Evh1 on add, adc, and, btc, btr, bts,
458 cmpxchg, dec, inc, neg, not, or, sbb, sub, xor and xadd. Use
459 Ebh2/Evh2 on xchg. Use Ebh3/Evh3 on mov.
460 (reg_table): Use Ebh1/Evh1 on add, adc, and, dec, inc, neg,
461 not, or, sbb, sub and xor. Use Ebh3/Evh3 on mov. Use
462 MOD_C6_REG_7 and MOD_C7_REG_7.
463 (mod_table): Add MOD_C6_REG_7 and MOD_C7_REG_7.
464 (rm_table): Add RM_C6_REG_7 and RM_C7_REG_7. Add xend and
466 (prefix_name): Handle XACQUIRE_PREFIX and XRELEASE_PREFIX.
467 (CMPXCHG8B_Fixup): Handle HLE prefix on cmpxchg8b.
469 * i386-gen.c (cpu_flag_init): Add CPU_HLE_FLAGS and
471 (cpu_flags): Add CpuHLE and CpuRTM.
472 (opcode_modifiers): Add HLEPrefixOk.
474 * i386-opc.h (CpuHLE): New.
476 (HLEPrefixOk): Likewise.
477 (i386_cpu_flags): Add cpuhle and cpurtm.
478 (i386_opcode_modifier): Add hleprefixok.
480 * i386-opc.tbl: Add HLEPrefixOk=3 to mov. Add HLEPrefixOk to
481 add, adc, and, btc, btr, bts, cmpxchg, dec, inc, neg, not, or,
482 sbb, sub, xor and xadd. Add HLEPrefixOk=2 to xchg with memory
483 operand. Add xacquire, xrelease, xabort, xbegin, xend and
485 * i386-init.h: Regenerated.
486 * i386-tbl.h: Likewise.
488 2012-01-24 DJ Delorie <dj@redhat.com>
490 * rl78-decode.opc (rl78_decode_opcode): Add NOT1.
491 * rl78-decode.c: Regenerate.
493 2012-01-17 James Murray <jsm@jsm-net.demon.co.uk>
496 * cr16-dis.c (print_arg): Test symtab_size not num_symbols.
498 2012-01-17 Andreas Schwab <schwab@linux-m68k.org>
500 * m68k-opc.c (m68k_opcodes): Fix entries for pmove with BADx/BACx
501 register and move them after pmove with PSR/PCSR register.
503 2012-01-13 H.J. Lu <hongjiu.lu@intel.com>
505 * i386-dis.c (mod_table): Add vmfunc.
507 * i386-gen.c (cpu_flag_init): Add CPU_VMFUNC_FLAGS.
508 (cpu_flags): CpuVMFUNC.
510 * i386-opc.h (CpuVMFUNC): New.
511 (i386_cpu_flags): Add cpuvmfunc.
513 * i386-opc.tbl: Add vmfunc.
514 * i386-init.h: Regenerated.
515 * i386-tbl.h: Likewise.
517 For older changes see ChangeLog-2011
523 version-control: never