packaging: update homepage url
[platform/upstream/elfutils.git] / libcpu / ChangeLog
1 2015-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
7 2014-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
12 2014-04-13  Mark Wielaard  <mjw@redhat.com>
13
14         * Makefile.am (i386_gendis_LDADD): Remove libmudflap.
15
16 2013-04-24  Mark Wielaard  <mjw@redhat.com>
17
18         * Makefile.am: Use AM_CPPFLAGS instead of INCLUDES.
19
20 2012-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
25 2012-06-26  Roland McGrath  <roland@hack.frob.com>
26
27         * Makefile.am [!MAINTAINER_MODE] ($(srcdir)/%_dis.h): New rule.
28
29 2012-02-24  Mark Wielaard  <mjw@redhat.com>
30
31         * Makefile.am (CLEANFILES): Move %_dis.h to...
32         (MAINTAINERCLEANFILES): here.
33
34 2012-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
39 2011-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
48 2010-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
54 2010-02-15  Roland McGrath  <roland@redhat.com>
55
56         * Makefile.am: Use config/eu.am for common stuff.
57
58 2009-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
63 2009-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
68 2009-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
77 2008-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
113 2008-12-30  Ulrich Drepper  <drepper@redhat.com>
114
115         * defs/i386: Add blendpd and blendps opcodes.
116
117 2008-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
122 2008-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
127 2008-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
137 2008-01-21  Ulrich Drepper  <drepper@redhat.com>
138
139         * Makefile.am (EXTRA_DIST): Remove defs/x86_64.
140
141 2008-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
154 2008-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
173 2008-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
185 2008-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
194 2008-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
202 2008-01-03  Ulrich Drepper  <drepper@redhat.com>
203
204         * defs/i386: Add yet more SSE instructions.
205
206 2008-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
213 2008-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
223 2007-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
229 2007-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
235 2007-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
268 2007-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
304 2007-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
319 2007-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
339 2007-12-21  Ulrich Drepper  <drepper@redhat.com>
340
341         * i386_data.h: Fix SIB handling.
342         * i386_disasm.c: Likewise.
343
344 2007-12-19  Ulrich Drepper  <drepper@redhat.com>
345
346         * defs/i386: Fix up 'and' opcode.
347
348 2007-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
381 2007-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
394 2005-02-15  Ulrich Drepper  <drepper@redhat.com>
395
396         * Makefile (AM_CFLAGS): Add -Wunused -Wextra -Wformat=2.
397
398 2005-02-05  Ulrich Drepper  <drepper@redhat.com>
399
400         * Makefile.am (AM_CFLAGS): Define, instead of adding things to DEFS.
401
402 2003-08-11  Ulrich Drepper  <drepper@redhat.com>
403
404         * Moved to CVS archive.