• Home
  • History
  • Annotate
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
12015-10-05  Josh Stone  <jistone@redhat.com>
2
3	* Makefile.am (%_defs): Add AM_V_GEN and AM_V_at silencers.
4	($(srcdir)/%_dis.h): Ditto.
5	(%.mnemonics): Add AM_V_GEN silencer.
6
72014-10-29  Jose E. Marchesi  <jose.marchesi@oracle.com>
8
9	* Makefile.am (AM_CFLAGS): Use -fPIC instead of -fpic to avoid
10	relocation overflows in some platforms.
11
122014-04-13  Mark Wielaard  <mjw@redhat.com>
13
14	* Makefile.am (i386_gendis_LDADD): Remove libmudflap.
15
162013-04-24  Mark Wielaard  <mjw@redhat.com>
17
18	* Makefile.am: Use AM_CPPFLAGS instead of INCLUDES.
19
202012-10-10  Roland McGrath  <roland@hack.frob.com>
21
22	* Makefile.am (%_defs, $(srcdir)/%_dis.h): Redirect to temp file,
23	mv into place with separate command.
24
252012-06-26  Roland McGrath  <roland@hack.frob.com>
26
27	* Makefile.am [!MAINTAINER_MODE] ($(srcdir)/%_dis.h): New rule.
28
292012-02-24  Mark Wielaard  <mjw@redhat.com>
30
31	* Makefile.am (CLEANFILES): Move %_dis.h to...
32	(MAINTAINERCLEANFILES): here.
33
342012-01-21  Ulrich Drepper  <drepper@gmail.com>
35
36	* i386_disasm.c (ADD_NSTRING): Define.
37	(i386_disasm): Print color codes in the appropriate places.
38
392011-10-16  Roland McGrath  <roland@hack.frob.com>
40
41	* Makefile.am (libcpu_i386_a_SOURCES): Add i386_dis.h.
42	(libcpu_x86_64_a_SOURCES): Add x86_64_dis.h.
43	(i386_disasm.o, x86_64_disasm.o): Depend on those in $(srcdir).
44	(%_dis.h): Renamed target pattern to ...
45	($(srcdir)/%_dis.h): ... this.
46	(noinst_HEADERS, noinst_PROGRAMS): Put under [MAINTAINER_MODE].
47
482010-08-16  Roland McGrath  <roland@redhat.com>
49
50	* Makefile.am (%_defs): New pattern rule.
51	(%_dis.h, %.mnemonics): Define as pattern rules using %_defs input.
52	(CLEANFILES): Include all those files.
53
542010-02-15  Roland McGrath  <roland@redhat.com>
55
56	* Makefile.am: Use config/eu.am for common stuff.
57
582009-04-14  Roland McGrath  <roland@redhat.com>
59
60	* Makefile.am (AM_CFLAGS): Add -fdollars-in-identifiers; it is not the
61	default on every machine.
62
632009-01-23  Roland McGrath  <roland@redhat.com>
64
65	* Makefile.am (i386_parse_CFLAGS): Use quotes around command
66	substitution that can produce leading whitespace.
67
682009-01-01  Ulrich Drepper  <drepper@redhat.com>
69
70	* i386_parse.y (instrtable_out): Optimize match_data table by not
71	emitting 0xff masks for leading bytes.
72	* i386_disasm.c (i386_disasm): Adjust reader of match_data.
73
74	* i386_disasm.c (i386_disasm): Reset bufcnt when not matched.  We
75	don't expect snprintf to fail.
76
772008-12-31  Ulrich Drepper  <drepper@redhat.com>
78
79	* defs/i386: Add dppd, dpps, insertps, movntdqa, mpsadbw, packusdw,
80	pblendvb, pblendw, pcmpeqq, pcmpestri, pcmpestrm, pcmpistri, pcmpistrm,
81	pcmpgtq, phminposuw, pinsrb, pinsrd, pmaxsb, pmaxsd, pmaxud, pmaxuw,
82	pminsb, pminsd, pminud, pminuw, pmovsxbw, pmovsxbd, pmovsxbq, pmovsxwd,
83	pmovsxwq, pmovsxdq, pmovzxbw, pmovzxbd, pmovzxbq, pmovzxwd, pmovzxwq,
84	pmovzxdq, pmuldq, pmulld, popcnt, ptest, roundss, roundps, roundpd,
85	and roundsd opcodes.
86
87	* i386_disasm.c (i386_disasm): Correct resizing of buffer.
88
89	* i386_parse.y (struct argstring): Add off element.
90	(off_op_str): New global variable.
91	(print_op_str): Print strings as concatenated strings.  Keep track
92	of index and length.  Update ->off element.
93	(print_op_str_idx): New function.
94	(instrtable_out): Mark op%d_fct as const.
95	Emit two tables for the strings: the string itself (op%d_str) and the
96	index table (op%d_str_idx).
97	* i386_disasm.c (i386_disasm): Adjust for new op%d_str definition.
98
99	* i386_disasm.c [X86_64] (i386_disasm): Handle rex prefix when
100	printing only prefix.
101
102	* i386_disasm.c (i386_disasm): Minor optimizations.
103
104	* i386_parse.y (instrtable_out): No need to emit index, the reader can
105	keep track.
106	* i386_disasm.c (i386_disasm): The index is not emitted anymore, no
107	need to skip it.
108
109	* i386_disasm.c (amd3dnow): Mark as const.
110
111	* defs/i386: Add blendvpd and blendvps opcodes.
112
1132008-12-30  Ulrich Drepper  <drepper@redhat.com>
114
115	* defs/i386: Add blendpd and blendps opcodes.
116
1172008-12-19  Ulrich Drepper  <drepper@redhat.com>
118
119	* defs/i386: Add entry for AMD 3DNOW.
120	* i386_disasm.c: Implement AMD 3DNOW disassembly.
121
1222008-12-17  Ulrich Drepper  <drepper@redhat.com>
123
124	* i386_disasm.c (i386_disasm): If instruction matches prefix,
125	undoing the prefix match finishes the instruction.
126
1272008-01-21  Roland McGrath  <roland@redhat.com>
128
129	* defs/i386: Fix typo in comment.
130	* i386_disasm.c (i386_disasm): Handle cltq, cqto.
131
132	* i386_parse.y: Add sanity check for NMNES macro value.
133	* Makefile.am (i386_parse.o): Fix target in dependency rule.
134	(i386_parse.h): New target with empty commands.
135	(i386_lex.o): Depend on it in place of i386_parse.c.
136
1372008-01-21  Ulrich Drepper  <drepper@redhat.com>
138
139	* Makefile.am (EXTRA_DIST): Remove defs/x86_64.
140
1412008-01-14  Ulrich Drepper  <drepper@redhat.com>
142
143	* defs/i386: Add fixes for opcodes with register number in opcode,
144	64-bit immediate forms, nop with rex.B.
145	* i386_data.h [X86_64] (FCT_imm64$w): New function.
146	(FCT_oreg): New function.
147	(FCT_oreg$w): New function.
148	* i386_disasm.c (i386_disasm): Reinitialize fmt always before
149	starting the loop to process the string.  Handle 0x90 special for
150	x86-64.
151	* i386_parse.y (fillin_arg): Expand synonyms before concatening to
152	form the function name.
153
1542008-01-11  Ulrich Drepper  <drepper@redhat.com>
155
156	* i386_disasm.c (struct output_buffer): Remove symcb and symcbarg.
157	(i386_disasm): Remove appropriate initializers.
158	Use symcb to lookup symbol strings.
159
160	* i386_disasm.c (struct output_buffer): Add labelbuf, labelbufsize,
161	symaddr_use, and symaddr fields.
162	(i386_disasm): Remove labelbuf and labelbufsize variables.
163	Add back %e format.  Implement %a and %l formats.
164
165	* i386_data.h (general_mod$r_m): Set symaddr_use and symaddr for %rip
166	base addressing.
167
168	* i386_disasm.c (i386_disasm): Resize output buffer if necessary.
169	Optimize output_data initialization.  Free buffers before return.
170	(struct output_data): Remove op1str field.  Adjust code.
171	(i386_disasm): Store final NUL btye at end of functions.
172
1732008-01-10  Ulrich Drepper  <drepper@redhat.com>
174
175	* i386_data.h (FCT_crdb): New function.
176	(FCT_ccc): Use FCT_crdb.
177	(FCT_ddd): Likewise.
178
179	* defs/i386: Fix a few instructions with immediate arguments.
180
181	* i386_disasm.c: Rewrite interface to callback functions for operands
182	to take a single pointer to a structure.
183	* i386_data.h: Adjust all functions.
184
1852008-01-08  Ulrich Drepper  <drepper@redhat.com>
186
187	* Makefile.am: Enable x86-64 again.
188	* defs/i386: Lots of changes for x86-64.
189	* i386_data.h: Add support for use in x86-64 disassembler.
190	* i386_disasm.c: Likewise.
191	* i386_parse.y: Likewise.
192	* defs/x86_64: Removed.
193
1942008-01-04  Ulrich Drepper  <drepper@redhat.com>
195
196	* defs/i386: Cleanups, remove masks which are not needed.
197	Add remaining Intel opcodes.
198	* i386_data.h (FCT_imm8): Check for input buffer overrun.
199	* i386_disasm.c (i386_disasm): Likewise.
200	* i386_parse.y: Remove suffixes which are not needed anymore.
201
2022008-01-03  Ulrich Drepper  <drepper@redhat.com>
203
204	* defs/i386: Add yet more SSE instructions.
205
2062008-01-02  Ulrich Drepper  <drepper@redhat.com>
207
208	* i386_disasm.c (i386_disasm): Extend matcher to allow tables to
209	contain instructions with prefixes.
210	* defs/i386: Use for many SSE operations.
211	* i386_data.h (FCT_mmxreg2): Removed.
212
2132008-01-01  Ulrich Drepper  <drepper@redhat.com>
214
215	* defs/i386: More 0f prefix support.
216	* i386_data.h (FCT_mmxreg): Implement.
217	(FCT_mmxreg2): Implement.
218	(FCT_mmreg): Remove.
219	* i386_disasm.c (i386_disasm): More special instructions.
220	Fix tttn suffix for cmov.
221	* i386_parse.y: Simplify test for mod/r_m mode.
222
2232007-12-31  Ulrich Drepper  <drepper@redhat.com>
224
225	* defs/i386: Fix order or arguments for mov of control/debug registers.
226	* i386_data.h (FCT_ccc): Implement
227	(FCT_ddd): Implement
228
2292007-12-30  Ulrich Drepper  <drepper@redhat.com>
230
231	* defs/i386: Fix 0f groups 6 and 7.
232	* i386_data.c (FCT_mod$16r_m): Implement.
233	* i386_disasm.c (i386_disasm): Third parameter can also have string.
234
2352007-12-29  Ulrich Drepper  <drepper@redhat.com>
236
237	* defs/i386: Add lots of floating point ops.
238	* i386_data.h (FCT_fmod$fr_m): Removed.
239	(FCT_freg): Implement.
240	* i386_disasm.c (i386_disasm): Implement suffix_D.
241	* i386_parse.y: Emit suffix_D.
242
243	* defs/i386: Use rel instead of dispA.
244	Fix lcall, dec, div, idiv, imul, inc, jmp, ljmp, mul, neg, not, push,
245	test.
246
247	* i386_data.h (FCT_dispA): Removed.
248	(FCT_ds_xx): Add test for end of input buffer.
249	* i386_disasm.c (ABORT_ENTRY): Removed.
250	(i386_disasm): Fix handling of SIB.  Pass correct address value to
251	operand callbacks.
252
253	* Makefile.am (*.mnemonics): Filter out INVALID entry.
254	* defs/i386: Define imms8 and use in appropriate places.
255	Add INVALID entries for special opcodes with special mnemonics.
256	Fix int3.  Fix typo in shl.  Correct xlat.
257	* i386_data.h (FCT_ds_xx): New function.
258	(FCT_ds_si): Use it.
259	(FCT_ds_bx): New function.
260	(FCT_imms8): New function.
261	* i386_disasm.c (MNE_INVALID): Define.
262	(i386_disasm): Handle invalid opcodes in mnemonics printing, not
263	separately.  Fix address value passed to operand handlers.
264	* i386_parse.y (bx_reg): Define.
265	(instrtable_out): Handle INVALID entries differently, just use
266	MNE_INVALID value for .mnemonic.
267
2682007-12-28  Ulrich Drepper  <drepper@redhat.com>
269
270	* defs/i386: Fix shift and mov immediate instructions.
271	* i386_data.h (FCT_imm16): Implement.
272
273	* defs/i386: Use absval instead of abs of lcall and ljmp.
274	Add parameters for cmps.  Fix test and mov immediate.
275	* i386_data.h: Implement FCT_absval.
276	* i386_disasm.c: Handle data16 for suffix_w  and FCT_imm.
277
278	* defs/i386: Move entries with 0x9b prefix together.
279	* i386_disasm.c (i386_disasm): Fix recognizing insufficient bytes in
280	input.  Handle data16 with suffix_W.
281
282	* i386_data.h (FCT_*): Add end parameter to all functions.  Check
283	before using more bytes.
284	(FCT_sel): Implement.
285	* i386_disasm.c (i386_disasm): Better handle end of input buffer.
286	Specal opcode 0x99.
287
288	* Makefile.am: Use m4 to preprocess defs/* files.
289	* defs/i386: Adjust appropriately.
290	* i386_data.c (FCT_ax): Implement.
291	(FCT_ax$w): Use FCT_ax.
292	* i386_disasm.c (ADD_STRING): Use _len instead of len.
293	(i386_disasm): If no instruction can be matched because of lack of
294	input and prefixes have been matched, print prefixes.
295	Recognize abort entries.
296	Handle special cases.
297	* i386_gendis.c: Recognize - input file name.
298	* i386_lex.c: Recognize INVALID token.
299	* i386_parse.y: Handle INVALID token input.
300
301	* defs/i386: Fix mov, pop.
302	* i386_data.h (FCT_sreg3): Implement.
303
3042007-12-27  Ulrich Drepper  <drepper@redhat.com>
305
306	* defs/i386: Fix adc, add, cmp, or, sbb, sub, xchg, xor.
307	* i386_data.h (FCT_imms): New function.
308	(FCT_imm$s): Use FCT_imms for handling of signed values.
309	(FCT_imm8): Sign extend values.
310	* i386_disasm.c (i386_disasm): Implement suffix_w0.
311	* i386_parse.y: Emit suffix w0.
312
313	* i386_data.h (FCT_disp8): Add 0x prefix.
314	(FCT_ds_si): Implement.
315	* i386_disasm.c (i386_disasm): Increment addr for invalid prefixes.
316	Implement tttn suffix.
317	* i386_parse.y: Emit tttn suffix definition.
318
3192007-12-26  Ulrich Drepper  <drepper@redhat.com>
320
321	* i386_data.h (struct instr_enc): Use suffix field.
322	(FCT_dx): Fill in body.
323	(FCT_es_di): Likewise.
324	(FCT_imm$s): Sign-extended byte values.
325	* i386_disasm.c: Protect ADD_CHAR and ADD_STRING macros.  Adjust uses.
326	(i386_disasm): Handle suffix.
327	* i386_parse.y: Emit suffix information.
328	* defs/i386: Remove unnecessary suffixes.
329
330	* Makefile.am: Disable building x86-64 version for now.
331
332	* defs/i386: Fix and, bound, cmp, or, pop, sbb, sub, xor.
333	* i386_data.h: Pass pointer to prefix to functions.  If not prefixes
334	are consumed this means invalid input.
335	* i386_disasm.c: Fix prefix printing.  Adjust function calls for
336	parameter change.
337	* i386_parse.y: Recognize moda prefix.
338
3392007-12-21  Ulrich Drepper  <drepper@redhat.com>
340
341	* i386_data.h: Fix SIB handling.
342	* i386_disasm.c: Likewise.
343
3442007-12-19  Ulrich Drepper  <drepper@redhat.com>
345
346	* defs/i386: Fix up 'and' opcode.
347
3482007-10-31  Ulrich Drepper  <drepper@redhat.com>
349
350	* Makefile.am: Add dependencies of the generated files on the source
351	files.
352	(i386_lex_CFLAGS): Add -Wno-sign-compare.
353
354	* defs/i386: A lot more data.
355	* defs/x86_64: Likewise.
356	* i386_data.h (struct instr_enc): Add off1_3, off2_3, and off3_3
357	fields.
358	(opfct_t): Add parameter for third operand.
359	(FCT_*): Likewise.
360	(data_prefix): New function.
361	(FCT_abs): Implement.
362	(FCT_ax): Renamed to FCT_ax$w amd implement.
363	(FCT_disp8): Implement.
364	(FCT_dispA): Implement.
365	(FCT_imm): Implement.
366	(FCT_imm$w): Implement.
367	(FCT_imm$s): Don't zero-pad numbers.
368	(FCT_imm8): Likewise.
369	(FCT_rel): Likewise.
370	(general_mod$r_m): New function.
371	(FCT_mod$r_m): Use it.
372	(FCT_mod$r_m$w): New function.
373	(FCT_mod$8r_m): New function.
374	(FCT_reg): Correctly handle 16-bit registers.
375	(FCT_reg$w): New function.
376	* i386_disasm.c (i386_disasm): Handle prefixes better.
377	Pass third parameter to operand functions.
378	* i386_parse.y (struct instruction): Add off3 field.
379	Handle third operand throughout.
380
3812007-02-05  Ulrich Drepper  <drepper@redhat.com>
382
383	* i386_disasm.c: New file.
384	* i386_data.h: New file.
385	* i386_gendis.c: New file.
386	* i386_lex.l: New file.
387	* i386_parse.y: New file.
388	* memory-access.h: New file.
389	* x86_64_disasm.c: New file.
390	* defs/i386: New file.
391	* defs/i386.doc: New file.
392	* defs/x86_64: New file.
393
3942005-02-15  Ulrich Drepper  <drepper@redhat.com>
395
396	* Makefile (AM_CFLAGS): Add -Wunused -Wextra -Wformat=2.
397
3982005-02-05  Ulrich Drepper  <drepper@redhat.com>
399
400	* Makefile.am (AM_CFLAGS): Define, instead of adding things to DEFS.
401
4022003-08-11  Ulrich Drepper  <drepper@redhat.com>
403
404	* Moved to CVS archive.
405