• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
12018-11-04  Mark Wielaard  <mark@klomp.org>
2
3	* bpf_disasm.c (bpf_disasm): Recognize BPF_JLT, BPF_JLE, BPF_JSLT
4	and BPF_JSLE.
5
62018-02-09  Joshua Watt  <JPEWhacker@gmail.com>
7
8	* i386_disasm.c (i386_disasm): Use FALLTHOUGH macro instead of
9	comment.
10
112017-08-18  Ulf Hermann  <ulf.hermann@qt.io>
12
13	* memory-access.h: Use attribute_packed.
14
152017-02-27  Ulf Hermann  <ulf.hermann@qt.io>
16
17	* Makefile.am: Use fpic_CFLAGS.
18
192017-07-18  Mark Wielaard  <mark@klomp.org>
20
21	* Makefile.am: Don't check HAVE_LINUX_BPF_H, just define libcpu_bpf.
22	* bpf_disasm.c: Include bpf.h instead of linux/bpf.h. Don't define
23	BPF_PSEUDO_MAP_FD.
24
252017-04-20  Ulf Hermann <ulf.hermann@qt.io>
26
27	* Makefile.am: Add EXEEXT to gendis.
28
292017-04-20  Ulf Hermann  <ulf.hermann@qt.io>
30
31	* i386_parse.y: Eliminate comparison_fn_t.
32
332016-11-02  Mark Wielaard  <mjw@redhat.com>
34
35	* i386_disasm.c (i386_disasm): Add fallthrough comment.
36
372016-10-11  Akihiko Odaki  <akihiko.odaki.4i@stu.hosei.ac.jp>
38
39	* i386_lex.l: Remove system.h include, add libeu.h include.
40	* i386_parse.y: Remove sys/param.h include, add libeu.h include.
41	* i386_disasm.c: Remove sys/param.h.
42
432016-09-05  Mark Wielaard  <mjw@redhat.com>
44
45	* bpf_disasm.c: Define BPF_PSEUDO_MAP_FD if undefined.
46
472016-08-10  Richard Henderson  <rth@redhat.com>
48
49	* bpf_disasm.c (bpf_disasm): Rearrange the printing of instructions
50	to use exactly the operands required.
51
522016-06-28  Richard Henderson  <rth@redhat.com>
53
54	* Makefile.am (noinst_LIBRARIES): Add libcpu_bpf.a.
55	(libcpu_bpf_a_SOURCES, libcpu_bpf_a_CFLAGS): New.
56	* bpf_disasm.c: New file.
57	* i386_disasm.c (i386_disasm): Add ebl parameter.
58
592015-10-05  Josh Stone  <jistone@redhat.com>
60
61	* Makefile.am (%_defs): Add AM_V_GEN and AM_V_at silencers.
62	($(srcdir)/%_dis.h): Ditto.
63	(%.mnemonics): Add AM_V_GEN silencer.
64
652014-10-29  Jose E. Marchesi  <jose.marchesi@oracle.com>
66
67	* Makefile.am (AM_CFLAGS): Use -fPIC instead of -fpic to avoid
68	relocation overflows in some platforms.
69
702014-04-13  Mark Wielaard  <mjw@redhat.com>
71
72	* Makefile.am (i386_gendis_LDADD): Remove libmudflap.
73
742013-04-24  Mark Wielaard  <mjw@redhat.com>
75
76	* Makefile.am: Use AM_CPPFLAGS instead of INCLUDES.
77
782012-10-10  Roland McGrath  <roland@hack.frob.com>
79
80	* Makefile.am (%_defs, $(srcdir)/%_dis.h): Redirect to temp file,
81	mv into place with separate command.
82
832012-06-26  Roland McGrath  <roland@hack.frob.com>
84
85	* Makefile.am [!MAINTAINER_MODE] ($(srcdir)/%_dis.h): New rule.
86
872012-02-24  Mark Wielaard  <mjw@redhat.com>
88
89	* Makefile.am (CLEANFILES): Move %_dis.h to...
90	(MAINTAINERCLEANFILES): here.
91
922012-01-21  Ulrich Drepper  <drepper@gmail.com>
93
94	* i386_disasm.c (ADD_NSTRING): Define.
95	(i386_disasm): Print color codes in the appropriate places.
96
972011-10-16  Roland McGrath  <roland@hack.frob.com>
98
99	* Makefile.am (libcpu_i386_a_SOURCES): Add i386_dis.h.
100	(libcpu_x86_64_a_SOURCES): Add x86_64_dis.h.
101	(i386_disasm.o, x86_64_disasm.o): Depend on those in $(srcdir).
102	(%_dis.h): Renamed target pattern to ...
103	($(srcdir)/%_dis.h): ... this.
104	(noinst_HEADERS, noinst_PROGRAMS): Put under [MAINTAINER_MODE].
105
1062010-08-16  Roland McGrath  <roland@redhat.com>
107
108	* Makefile.am (%_defs): New pattern rule.
109	(%_dis.h, %.mnemonics): Define as pattern rules using %_defs input.
110	(CLEANFILES): Include all those files.
111
1122010-02-15  Roland McGrath  <roland@redhat.com>
113
114	* Makefile.am: Use config/eu.am for common stuff.
115
1162009-04-14  Roland McGrath  <roland@redhat.com>
117
118	* Makefile.am (AM_CFLAGS): Add -fdollars-in-identifiers; it is not the
119	default on every machine.
120
1212009-01-23  Roland McGrath  <roland@redhat.com>
122
123	* Makefile.am (i386_parse_CFLAGS): Use quotes around command
124	substitution that can produce leading whitespace.
125
1262009-01-01  Ulrich Drepper  <drepper@redhat.com>
127
128	* i386_parse.y (instrtable_out): Optimize match_data table by not
129	emitting 0xff masks for leading bytes.
130	* i386_disasm.c (i386_disasm): Adjust reader of match_data.
131
132	* i386_disasm.c (i386_disasm): Reset bufcnt when not matched.  We
133	don't expect snprintf to fail.
134
1352008-12-31  Ulrich Drepper  <drepper@redhat.com>
136
137	* defs/i386: Add dppd, dpps, insertps, movntdqa, mpsadbw, packusdw,
138	pblendvb, pblendw, pcmpeqq, pcmpestri, pcmpestrm, pcmpistri, pcmpistrm,
139	pcmpgtq, phminposuw, pinsrb, pinsrd, pmaxsb, pmaxsd, pmaxud, pmaxuw,
140	pminsb, pminsd, pminud, pminuw, pmovsxbw, pmovsxbd, pmovsxbq, pmovsxwd,
141	pmovsxwq, pmovsxdq, pmovzxbw, pmovzxbd, pmovzxbq, pmovzxwd, pmovzxwq,
142	pmovzxdq, pmuldq, pmulld, popcnt, ptest, roundss, roundps, roundpd,
143	and roundsd opcodes.
144
145	* i386_disasm.c (i386_disasm): Correct resizing of buffer.
146
147	* i386_parse.y (struct argstring): Add off element.
148	(off_op_str): New global variable.
149	(print_op_str): Print strings as concatenated strings.  Keep track
150	of index and length.  Update ->off element.
151	(print_op_str_idx): New function.
152	(instrtable_out): Mark op%d_fct as const.
153	Emit two tables for the strings: the string itself (op%d_str) and the
154	index table (op%d_str_idx).
155	* i386_disasm.c (i386_disasm): Adjust for new op%d_str definition.
156
157	* i386_disasm.c [X86_64] (i386_disasm): Handle rex prefix when
158	printing only prefix.
159
160	* i386_disasm.c (i386_disasm): Minor optimizations.
161
162	* i386_parse.y (instrtable_out): No need to emit index, the reader can
163	keep track.
164	* i386_disasm.c (i386_disasm): The index is not emitted anymore, no
165	need to skip it.
166
167	* i386_disasm.c (amd3dnow): Mark as const.
168
169	* defs/i386: Add blendvpd and blendvps opcodes.
170
1712008-12-30  Ulrich Drepper  <drepper@redhat.com>
172
173	* defs/i386: Add blendpd and blendps opcodes.
174
1752008-12-19  Ulrich Drepper  <drepper@redhat.com>
176
177	* defs/i386: Add entry for AMD 3DNOW.
178	* i386_disasm.c: Implement AMD 3DNOW disassembly.
179
1802008-12-17  Ulrich Drepper  <drepper@redhat.com>
181
182	* i386_disasm.c (i386_disasm): If instruction matches prefix,
183	undoing the prefix match finishes the instruction.
184
1852008-01-21  Roland McGrath  <roland@redhat.com>
186
187	* defs/i386: Fix typo in comment.
188	* i386_disasm.c (i386_disasm): Handle cltq, cqto.
189
190	* i386_parse.y: Add sanity check for NMNES macro value.
191	* Makefile.am (i386_parse.o): Fix target in dependency rule.
192	(i386_parse.h): New target with empty commands.
193	(i386_lex.o): Depend on it in place of i386_parse.c.
194
1952008-01-21  Ulrich Drepper  <drepper@redhat.com>
196
197	* Makefile.am (EXTRA_DIST): Remove defs/x86_64.
198
1992008-01-14  Ulrich Drepper  <drepper@redhat.com>
200
201	* defs/i386: Add fixes for opcodes with register number in opcode,
202	64-bit immediate forms, nop with rex.B.
203	* i386_data.h [X86_64] (FCT_imm64$w): New function.
204	(FCT_oreg): New function.
205	(FCT_oreg$w): New function.
206	* i386_disasm.c (i386_disasm): Reinitialize fmt always before
207	starting the loop to process the string.  Handle 0x90 special for
208	x86-64.
209	* i386_parse.y (fillin_arg): Expand synonyms before concatening to
210	form the function name.
211
2122008-01-11  Ulrich Drepper  <drepper@redhat.com>
213
214	* i386_disasm.c (struct output_buffer): Remove symcb and symcbarg.
215	(i386_disasm): Remove appropriate initializers.
216	Use symcb to lookup symbol strings.
217
218	* i386_disasm.c (struct output_buffer): Add labelbuf, labelbufsize,
219	symaddr_use, and symaddr fields.
220	(i386_disasm): Remove labelbuf and labelbufsize variables.
221	Add back %e format.  Implement %a and %l formats.
222
223	* i386_data.h (general_mod$r_m): Set symaddr_use and symaddr for %rip
224	base addressing.
225
226	* i386_disasm.c (i386_disasm): Resize output buffer if necessary.
227	Optimize output_data initialization.  Free buffers before return.
228	(struct output_data): Remove op1str field.  Adjust code.
229	(i386_disasm): Store final NUL btye at end of functions.
230
2312008-01-10  Ulrich Drepper  <drepper@redhat.com>
232
233	* i386_data.h (FCT_crdb): New function.
234	(FCT_ccc): Use FCT_crdb.
235	(FCT_ddd): Likewise.
236
237	* defs/i386: Fix a few instructions with immediate arguments.
238
239	* i386_disasm.c: Rewrite interface to callback functions for operands
240	to take a single pointer to a structure.
241	* i386_data.h: Adjust all functions.
242
2432008-01-08  Ulrich Drepper  <drepper@redhat.com>
244
245	* Makefile.am: Enable x86-64 again.
246	* defs/i386: Lots of changes for x86-64.
247	* i386_data.h: Add support for use in x86-64 disassembler.
248	* i386_disasm.c: Likewise.
249	* i386_parse.y: Likewise.
250	* defs/x86_64: Removed.
251
2522008-01-04  Ulrich Drepper  <drepper@redhat.com>
253
254	* defs/i386: Cleanups, remove masks which are not needed.
255	Add remaining Intel opcodes.
256	* i386_data.h (FCT_imm8): Check for input buffer overrun.
257	* i386_disasm.c (i386_disasm): Likewise.
258	* i386_parse.y: Remove suffixes which are not needed anymore.
259
2602008-01-03  Ulrich Drepper  <drepper@redhat.com>
261
262	* defs/i386: Add yet more SSE instructions.
263
2642008-01-02  Ulrich Drepper  <drepper@redhat.com>
265
266	* i386_disasm.c (i386_disasm): Extend matcher to allow tables to
267	contain instructions with prefixes.
268	* defs/i386: Use for many SSE operations.
269	* i386_data.h (FCT_mmxreg2): Removed.
270
2712008-01-01  Ulrich Drepper  <drepper@redhat.com>
272
273	* defs/i386: More 0f prefix support.
274	* i386_data.h (FCT_mmxreg): Implement.
275	(FCT_mmxreg2): Implement.
276	(FCT_mmreg): Remove.
277	* i386_disasm.c (i386_disasm): More special instructions.
278	Fix tttn suffix for cmov.
279	* i386_parse.y: Simplify test for mod/r_m mode.
280
2812007-12-31  Ulrich Drepper  <drepper@redhat.com>
282
283	* defs/i386: Fix order or arguments for mov of control/debug registers.
284	* i386_data.h (FCT_ccc): Implement
285	(FCT_ddd): Implement
286
2872007-12-30  Ulrich Drepper  <drepper@redhat.com>
288
289	* defs/i386: Fix 0f groups 6 and 7.
290	* i386_data.c (FCT_mod$16r_m): Implement.
291	* i386_disasm.c (i386_disasm): Third parameter can also have string.
292
2932007-12-29  Ulrich Drepper  <drepper@redhat.com>
294
295	* defs/i386: Add lots of floating point ops.
296	* i386_data.h (FCT_fmod$fr_m): Removed.
297	(FCT_freg): Implement.
298	* i386_disasm.c (i386_disasm): Implement suffix_D.
299	* i386_parse.y: Emit suffix_D.
300
301	* defs/i386: Use rel instead of dispA.
302	Fix lcall, dec, div, idiv, imul, inc, jmp, ljmp, mul, neg, not, push,
303	test.
304
305	* i386_data.h (FCT_dispA): Removed.
306	(FCT_ds_xx): Add test for end of input buffer.
307	* i386_disasm.c (ABORT_ENTRY): Removed.
308	(i386_disasm): Fix handling of SIB.  Pass correct address value to
309	operand callbacks.
310
311	* Makefile.am (*.mnemonics): Filter out INVALID entry.
312	* defs/i386: Define imms8 and use in appropriate places.
313	Add INVALID entries for special opcodes with special mnemonics.
314	Fix int3.  Fix typo in shl.  Correct xlat.
315	* i386_data.h (FCT_ds_xx): New function.
316	(FCT_ds_si): Use it.
317	(FCT_ds_bx): New function.
318	(FCT_imms8): New function.
319	* i386_disasm.c (MNE_INVALID): Define.
320	(i386_disasm): Handle invalid opcodes in mnemonics printing, not
321	separately.  Fix address value passed to operand handlers.
322	* i386_parse.y (bx_reg): Define.
323	(instrtable_out): Handle INVALID entries differently, just use
324	MNE_INVALID value for .mnemonic.
325
3262007-12-28  Ulrich Drepper  <drepper@redhat.com>
327
328	* defs/i386: Fix shift and mov immediate instructions.
329	* i386_data.h (FCT_imm16): Implement.
330
331	* defs/i386: Use absval instead of abs of lcall and ljmp.
332	Add parameters for cmps.  Fix test and mov immediate.
333	* i386_data.h: Implement FCT_absval.
334	* i386_disasm.c: Handle data16 for suffix_w  and FCT_imm.
335
336	* defs/i386: Move entries with 0x9b prefix together.
337	* i386_disasm.c (i386_disasm): Fix recognizing insufficient bytes in
338	input.  Handle data16 with suffix_W.
339
340	* i386_data.h (FCT_*): Add end parameter to all functions.  Check
341	before using more bytes.
342	(FCT_sel): Implement.
343	* i386_disasm.c (i386_disasm): Better handle end of input buffer.
344	Specal opcode 0x99.
345
346	* Makefile.am: Use m4 to preprocess defs/* files.
347	* defs/i386: Adjust appropriately.
348	* i386_data.c (FCT_ax): Implement.
349	(FCT_ax$w): Use FCT_ax.
350	* i386_disasm.c (ADD_STRING): Use _len instead of len.
351	(i386_disasm): If no instruction can be matched because of lack of
352	input and prefixes have been matched, print prefixes.
353	Recognize abort entries.
354	Handle special cases.
355	* i386_gendis.c: Recognize - input file name.
356	* i386_lex.c: Recognize INVALID token.
357	* i386_parse.y: Handle INVALID token input.
358
359	* defs/i386: Fix mov, pop.
360	* i386_data.h (FCT_sreg3): Implement.
361
3622007-12-27  Ulrich Drepper  <drepper@redhat.com>
363
364	* defs/i386: Fix adc, add, cmp, or, sbb, sub, xchg, xor.
365	* i386_data.h (FCT_imms): New function.
366	(FCT_imm$s): Use FCT_imms for handling of signed values.
367	(FCT_imm8): Sign extend values.
368	* i386_disasm.c (i386_disasm): Implement suffix_w0.
369	* i386_parse.y: Emit suffix w0.
370
371	* i386_data.h (FCT_disp8): Add 0x prefix.
372	(FCT_ds_si): Implement.
373	* i386_disasm.c (i386_disasm): Increment addr for invalid prefixes.
374	Implement tttn suffix.
375	* i386_parse.y: Emit tttn suffix definition.
376
3772007-12-26  Ulrich Drepper  <drepper@redhat.com>
378
379	* i386_data.h (struct instr_enc): Use suffix field.
380	(FCT_dx): Fill in body.
381	(FCT_es_di): Likewise.
382	(FCT_imm$s): Sign-extended byte values.
383	* i386_disasm.c: Protect ADD_CHAR and ADD_STRING macros.  Adjust uses.
384	(i386_disasm): Handle suffix.
385	* i386_parse.y: Emit suffix information.
386	* defs/i386: Remove unnecessary suffixes.
387
388	* Makefile.am: Disable building x86-64 version for now.
389
390	* defs/i386: Fix and, bound, cmp, or, pop, sbb, sub, xor.
391	* i386_data.h: Pass pointer to prefix to functions.  If not prefixes
392	are consumed this means invalid input.
393	* i386_disasm.c: Fix prefix printing.  Adjust function calls for
394	parameter change.
395	* i386_parse.y: Recognize moda prefix.
396
3972007-12-21  Ulrich Drepper  <drepper@redhat.com>
398
399	* i386_data.h: Fix SIB handling.
400	* i386_disasm.c: Likewise.
401
4022007-12-19  Ulrich Drepper  <drepper@redhat.com>
403
404	* defs/i386: Fix up 'and' opcode.
405
4062007-10-31  Ulrich Drepper  <drepper@redhat.com>
407
408	* Makefile.am: Add dependencies of the generated files on the source
409	files.
410	(i386_lex_CFLAGS): Add -Wno-sign-compare.
411
412	* defs/i386: A lot more data.
413	* defs/x86_64: Likewise.
414	* i386_data.h (struct instr_enc): Add off1_3, off2_3, and off3_3
415	fields.
416	(opfct_t): Add parameter for third operand.
417	(FCT_*): Likewise.
418	(data_prefix): New function.
419	(FCT_abs): Implement.
420	(FCT_ax): Renamed to FCT_ax$w amd implement.
421	(FCT_disp8): Implement.
422	(FCT_dispA): Implement.
423	(FCT_imm): Implement.
424	(FCT_imm$w): Implement.
425	(FCT_imm$s): Don't zero-pad numbers.
426	(FCT_imm8): Likewise.
427	(FCT_rel): Likewise.
428	(general_mod$r_m): New function.
429	(FCT_mod$r_m): Use it.
430	(FCT_mod$r_m$w): New function.
431	(FCT_mod$8r_m): New function.
432	(FCT_reg): Correctly handle 16-bit registers.
433	(FCT_reg$w): New function.
434	* i386_disasm.c (i386_disasm): Handle prefixes better.
435	Pass third parameter to operand functions.
436	* i386_parse.y (struct instruction): Add off3 field.
437	Handle third operand throughout.
438
4392007-02-05  Ulrich Drepper  <drepper@redhat.com>
440
441	* i386_disasm.c: New file.
442	* i386_data.h: New file.
443	* i386_gendis.c: New file.
444	* i386_lex.l: New file.
445	* i386_parse.y: New file.
446	* memory-access.h: New file.
447	* x86_64_disasm.c: New file.
448	* defs/i386: New file.
449	* defs/i386.doc: New file.
450	* defs/x86_64: New file.
451
4522005-02-15  Ulrich Drepper  <drepper@redhat.com>
453
454	* Makefile (AM_CFLAGS): Add -Wunused -Wextra -Wformat=2.
455
4562005-02-05  Ulrich Drepper  <drepper@redhat.com>
457
458	* Makefile.am (AM_CFLAGS): Define, instead of adding things to DEFS.
459
4602003-08-11  Ulrich Drepper  <drepper@redhat.com>
461
462	* Moved to CVS archive.
463