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