* m32c.cpu (Imm-8-s4n, Imm-12-s4n): New.
[external/binutils.git] / cpu / ChangeLog
1 2005-10-27  DJ Delorie  <dj@redhat.com>
2
3         * m32c.cpu (Imm-8-s4n, Imm-12-s4n): New.
4         (arith-jnz16-imm4-dst-defn, arith-jnz32-imm4-dst-defn,
5         arith-jnz-imm4-dst-mach, arith-jnz-imm4-dst): Keep track of which
6         imm operand is needed.
7         (adjnz, sbjnz): Pass the right operands.
8         (unary-insn-defn, unary16-defn, unary32-defn, unary-insn-mach,
9         unary-insn): Add -g variants for opcodes that need to support :G.
10         (not.BW:G, push.BW:G): Call it.
11         (stzx16-imm8-imm8-dsp8sb, stzx16-imm8-imm8-dsp8fb,
12         stzx16-imm8-imm8-abs16): Fix operand typos.
13         * m32c.opc (m32c_asm_hash): Support bnCND.
14         (parse_signed4n, print_signed4n): New.
15         
16 2005-10-26  DJ Delorie  <dj@redhat.com>
17
18         * m32c.cpu (f-dsp-8-s24, Dsp-8-s24): New.
19         (mov-dspsp-dst-defn, mov-src-dspsp-defn, mov16-dspsp-dst-defn,
20         mov16-src-dspsp-defn, mov32-dspsp-dst-defn, mov32-src-dspsp-defn):
21         dsp8[sp] is signed.
22         (mov.WL:S #imm,A0/A1): dsp24 is signed (i.e. -0x800000..0xffffff).
23         (mov.BW:S r0,r1): Fix typo r1l->r1.
24         (tst): Allow :G suffix.
25         * m32c.opc (parse_signed24): New, for -0x800000..0xffffff.
26
27 2005-10-26  Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
28
29         * m32r.opc (parse_hi16): Do not assume a 32-bit host word size.
30
31 2005-10-25  DJ Delorie  <dj@redhat.com>
32
33         * m32c.cpu (add16-bQ-sp,add16-wQ-sp): Fix to allow either width by
34         making one a macro of the other.
35
36 2005-10-21  DJ Delorie  <dj@redhat.com>
37
38         * m32c.cpu (lde, ste): Add dsp[a0] and [a1a] addressing.
39         (indexb, indexbd, indexbs, indexw, indexwd, indexws, indexl,
40         indexld, indexls): .w variants have `1' bit.
41         (rot32.b): QI, not SI.
42         (rot32.w): HI, not SI.
43         (xchg16): HI for .w variant.
44
45 2005-10-19  Nick Clifton  <nickc@redhat.com>
46
47         * m32r.opc (parse_slo16): Fix bad application of previous patch.
48
49 2005-10-18  Andreas Schwab  <schwab@suse.de>
50
51         * m32r.opc (parse_slo16): Better version of previous patch.
52
53 2005-10-14  Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
54
55         * cpu/m32r.opc (parse_slo16): Do not assume a 32-bit host word
56         size.
57
58 2005-07-25  DJ Delorie  <dj@redhat.com>
59
60         * m32c.opc (parse_unsigned8): Add %dsp8().
61         (parse_signed8): Add %hi8().
62         (parse_unsigned16): Add %dsp16().
63         (parse_signed16): Add %lo16() and %hi16().
64         (parse_lab_5_3): Make valuep a bfd_vma *.
65
66 2005-07-18  Nick Clifton  <nickc@redhat.com>
67
68         * m32c.cpu (f-16-8, f-24-8, f-32-16, f-dsp-8-u24): New opcode
69         components.
70         (f-lab32-jmp-s): Fix insertion sequence.
71         (Dsp-8-u24, Lab-5-3, Lab32-jmp-s): New operands.
72         (Dsp-40-s8): Make parameter be signed.
73         (Dsp-40-s16): Likewise.
74         (Dsp-48-s8): Likewise.
75         (Dsp-48-s16): Likewise.
76         (Imm-13-u3): Likewise. (Despite its name!)
77         (BitBase16-16-s8): Make the parameter be unsigned.
78         (BitBase16-8-u11-S): Likewise.
79         (Lab-8-8, Lab-8-16, Lab-16-8, jcnd16-5, jcnd16, jcnd32, jmp16.s,
80         jmp16.b, jmp16.w, jmp32.s, jmp32.b, jmp32.w, jsp16.w, jsr32.w): Allow
81         relaxation.
82
83         * m32c.opc: Fix formatting.
84         Use safe-ctype.h instead of ctype.h
85         Move duplicated code sequences into a macro.
86         Fix compile time warnings about signedness mismatches.
87         Remove dead code.
88         (parse_lab_5_3): New parser function.
89         
90 2005-07-16  Jim Blandy  <jimb@redhat.com>
91
92         * m32c.opc (m32c_cgen_insn_supported): Use int, not CGEN_BITSET,
93         to represent isa sets.
94
95 2005-07-15  Jim Blandy  <jimb@redhat.com>
96
97         * m32c.cpu, m32c.opc: Fix copyright.
98
99 2005-07-14  Jim Blandy  <jimb@redhat.com>
100
101         * m32c.cpu, m32c.opc: Machine description for the Renesas M32C.
102
103 2005-07-14  Alan Modra  <amodra@bigpond.net.au>
104
105         * ms1.opc (print_dollarhex): Correct format string.
106
107 2005-07-06  Alan Modra  <amodra@bigpond.net.au>
108
109         * iq2000.cpu: Include from binutils cpu dir.
110
111 2005-07-05  Nick Clifton  <nickc@redhat.com>
112
113         * iq2000.opc (parse_lo16, parse_mlo16): Make value parameter
114         unsigned in order to avoid compile time warnings about sign
115         conflicts.
116
117         * ms1.opc (parse_*): Likewise.
118         (parse_imm16): Use a "void *" as it is passed both signed and
119         unsigned arguments.
120
121 2005-07-01  Nick Clifton  <nickc@redhat.com>
122
123         * frv.opc: Update to ISO C90 function declaration style.
124         * iq2000.opc: Likewise.
125         * m32r.opc: Likewise.
126         * sh.opc: Likewise.
127
128 2005-06-15  Dave Brolley  <brolley@redhat.com>
129
130         Contributed by Red Hat.
131         * ms1.cpu: New file.  Written by Nick Clifton, Stan Cox.
132         * ms1.opc: New file.  Written by Stan Cox.
133
134 2005-05-10  Nick Clifton  <nickc@redhat.com>
135
136         * Update the address and phone number of the FSF organization in
137         the GPL notices in the following files:
138         cris.cpu, frv.cpu, frv.opc, iq10.cpu, iq2000.opc, iq2000m.cpu,
139         m32r.cpu, m32r.opc, sh.cpu, sh.opc, sh64-compact.cpu,
140         sh64-media.cpu, simplify.inc
141
142 2005-02-24  Alan Modra  <amodra@bigpond.net.au>
143
144         * frv.opc (parse_A): Warning fix.
145
146 2005-02-23  Nick Clifton  <nickc@redhat.com>
147
148         * frv.opc: Fixed compile time warnings about differing signed'ness
149         of pointers passed to functions.
150         * m32r.opc: Likewise.
151
152 2005-02-11  Nick Clifton  <nickc@redhat.com>
153
154         * iq2000.opc (parse_jtargq10): Change type of valuep argument to
155         'bfd_vma *' in order avoid compile time warning message.
156
157 2005-01-28  Hans-Peter Nilsson  <hp@axis.com>
158
159         * cris.cpu (mstep): Add missing insn.
160
161 2005-01-25  Alexandre Oliva  <aoliva@redhat.com>
162
163         2004-11-10  Alexandre Oliva  <aoliva@redhat.com>
164         * frv.cpu: Add support for TLS annotations in loads and calll.
165         * frv.opc (parse_symbolic_address): New.
166         (parse_ldd_annotation): New.
167         (parse_call_annotation): New.
168         (parse_ld_annotation): New.
169         (parse_ulo16, parse_uslo16): Use parse_symbolic_address.
170         Introduce TLS relocations.
171         (parse_d12, parse_s12, parse_u12): Likewise.
172         (parse_uhi16): Likewise.  Fix constant checking on 64-bit host.
173         (parse_call_label, print_at): New.
174
175 2004-12-21  Mikael Starvik  <starvik@axis.com>
176
177         * cris.cpu (cris-set-mem): Correct integral write semantics.
178
179 2004-11-29  Hans-Peter Nilsson  <hp@axis.com>
180
181         * cris.cpu: New file.
182
183 2004-11-15  Michael K. Lechner <mike.lechner@gmail.com>
184
185         * iq2000.cpu: Added quotes around macro arguments so that they
186         will work with newer versions of guile.
187
188 2004-10-27  Nick Clifton  <nickc@redhat.com>
189
190         * iq2000m.cpu (pkrlr1, pkrlr30, rbr1, rbr30, rxr1, rxr30, wbr1,
191         wbr1u, wbr30, wbr30u, wxr1, wxr1u, wxr30, wxr30u): Add an index
192         operand.
193         * iq2000.cpu (dnop index): Rename to _index to avoid complications
194         with guile.
195
196 2004-08-27  Richard Sandiford  <rsandifo@redhat.com>
197
198         * frv.cpu (cfmovs): Change UNIT attribute to FMALL.
199
200 2004-05-15  Nick Clifton  <nickc@redhat.com>
201
202         * iq2000.opc (iq2000_cgen_insn_supported): Make 'insn' argument const.
203
204 2004-03-30  Kazuhiro Inaoka  <inaoka.kazuhiro@renesas.com>
205
206         * m32r.opc (parse_hi16): Fixed shigh(0xffff8000) bug.
207
208 2004-03-01  Richard Sandiford  <rsandifo@redhat.com>
209
210         * frv.cpu (define-arch frv): Add fr450 mach.
211         (define-mach fr450): New.
212         (define-model fr450): New.  Add profile units to every fr450 insn.
213         (define-attr UNIT): Add MDCUTSSI.
214         (define-attr FR450-MAJOR): New enum.  Add to every fr450 insn.
215         (define-attr AUDIO): New boolean.
216         (f-LRAE, f-LRAD, f-LRAS, f-TLBPRopx, f-TLBPRL)
217         (f-LRA-null, f-TLBPR-null): New fields.
218         (scr0, scr1, scr2, scr3, imavr1, damvr1, cxnr, ttbr)
219         (tplr, tppr, tpxr, timerh, timerl, timerd, btbr): New SPRs.
220         (LRAE, LRAD, LRAS, TLBPRopx, TLBPRL): New operands.
221         (LRA-null, TLBPR-null): New macros.
222         (iacc-multiply-r-r, slass, scutss, int-arith-ss-r-r): Add AUDIO attr.
223         (load-real-address): New macro.
224         (lrai, lrad, tlbpr): New instructions.
225         (media-cut-acc, media-cut-acc-ss): Add fr450-major argument.
226         (mcut, mcuti, mcutss, mcutssi): Adjust accordingly.
227         (mdcutssi): Change UNIT attribute to MDCUTSSI.
228         (media-low-clear-semantics, media-scope-limit-semantics)
229         (media-quad-limit, media-quad-shift): New macros.
230         (mqlclrhs, mqlmths, mqsllhi, mqsrahi): New instructions.
231         * frv.opc (frv_is_branch_major, frv_is_float_major, frv_is_media_major)
232         (frv_is_branch_insn, frv_is_float_insn, frv_is_media_insn)
233         (frv_vliw_reset, frv_vliw_add_insn): Handle bfd_mach_fr450.
234         (fr450_unit_mapping): New array.
235         (fr400_unit_mapping, fr500_unit_mapping, fr550_unit_mapping): Add entry
236         for new MDCUTSSI unit.
237         (fr450_check_insn_major_constraints): New function.
238         (check_insn_major_constraints): Use it.
239
240 2004-03-01  Richard Sandiford  <rsandifo@redhat.com>
241
242         * frv.cpu (nsdiv, nudiv, nsdivi, nudivi): Remove fr400 profiling unit.
243         (scutss): Change unit to I0.
244         (calll, callil, ccalll): Add missing FR550-MAJOR and profile unit.
245         (mqsaths): Fix FR400-MAJOR categorization.
246         (media-quad-multiply-cross-acc, media-quad-cross-multiply-cross-acc)
247         (media-quad-cross-multiply-acc): Change unit from MDUALACC to FMALL.
248         * frv.opc (fr400_check_insn_major_constraints): Check for (M-2,M-1)
249         combinations.
250
251 2004-03-01  Richard Sandiford  <rsandifo@redhat.com>
252
253         * frv.cpu (r-store, r-store-dual, r-store-quad): Delete.
254         (rstb, rsth, rst, rstd, rstq): Delete.
255         (rstbf, rsthf, rstf, rstdf, rstqf): Delete.
256
257 2004-02-23  Nick Clifton  <nickc@redhat.com>
258
259         * Apply these patches from Renesas:
260
261         2004-02-10  Kazuhiro Inaoka  <inaoka.kazuhiro@renesas.com>
262
263         * cpu/m32r.opc (my_print_insn): Fixed incorrect output when
264         disassembling codes for 0x*2 addresses.
265
266         2003-12-15  Kazuhiro Inaoka  <inaoka.kazuhiro@renesas.com>
267
268         * cpu/m32r.cpu: Add PIPE_O attribute to "pop" instruction.
269
270         2003-12-03  Kazuhiro Inaoka  <inaoka.kazuhiro@renesas.com>
271
272         * cpu/m32r.cpu : Add new model m32r2.
273         Add new instructions.
274         Replace occurrances of 'Mitsubishi' with 'Renesas'.
275         Changed PIPE attr of push from O to OS.
276         Care for Little-endian of M32R.
277         * cpu/m32r.opc (CGEN_DIS_HASH, my_print_insn):
278         Care for Little-endian of M32R.
279         (parse_slo16): signed extension for value.
280
281 2004-02-20  Andrew Cagney  <cagney@redhat.com>
282
283         * m32r.opc, m32r.cpu: New files.  Written by , Doug Evans, Nick
284         Clifton, Ben Elliston, Matthew Green, and Andrew Haley.
285
286         * sh.cpu, sh.opc, sh64-compact.cpu, sh64-media.cpu: New files, all
287         written by Ben Elliston.
288
289 2004-01-14  Richard Sandiford  <rsandifo@redhat.com>
290
291         * frv.cpu (UNIT): Add IACC.
292         (iacc-multiply-r-r): Use it.
293         * frv.opc (fr400_unit_mapping): Add entry for IACC.
294         (fr500_unit_mapping, fr550_unit_mapping): Likewise.
295
296 2004-01-06  Alexandre Oliva  <aoliva@redhat.com>
297
298         2003-12-19  Alexandre Oliva  <aoliva@redhat.com>
299         * frv.opc (parse_ulo16, parse_uhi16, parse_d12): Fix some
300         cut&paste errors in shifting/truncating numerical operands.
301         2003-08-08  Alexandre Oliva  <aoliva@redhat.com>
302         * frv.opc (parse_ulo16): Parse gotofflo and gotofffuncdesclo.
303         (parse_uslo16): Likewise.
304         (parse_uhi16): Parse gotoffhi and gotofffuncdeschi.
305         (parse_d12): Parse gotoff12 and gotofffuncdesc12.
306         (parse_s12): Likewise.
307         2003-08-04  Alexandre Oliva  <aoliva@redhat.com>
308         * frv.opc (parse_ulo16): Parse gotlo and gotfuncdesclo.
309         (parse_uslo16): Likewise.
310         (parse_uhi16): Parse gothi and gotfuncdeschi.
311         (parse_d12): Parse got12 and gotfuncdesc12.
312         (parse_s12): Likewise.
313
314 2003-10-10  Dave Brolley  <brolley@redhat.com>
315
316         * frv.cpu (dnpmop): New p-macro.
317         (GRdoublek): Use dnpmop.
318         (CPRdoublek, FRdoublei, FRdoublej, FRdoublek): Ditto.
319         (store-double-r-r): Use (.sym regtype doublek).
320         (r-store-double): Ditto.
321         (store-double-r-r-u): Ditto.
322         (conditional-store-double): Ditto.
323         (conditional-store-double-u): Ditto.
324         (store-double-r-simm): Ditto.
325         (fmovs): Assign to UNIT FMALL.
326
327 2003-10-06  Dave Brolley  <brolley@redhat.com>
328
329         * frv.cpu, frv.opc: Add support for fr550.
330
331 2003-09-24  Dave Brolley  <brolley@redhat.com>
332
333         * frv.cpu (u-commit): New modelling unit for fr500.
334         (mwtaccg): Use frv_ref_SI to reference ACC40Sk as an input operand.
335         (commit-r): Use u-commit model for fr500.
336         (commit): Ditto.
337         (conditional-float-binary-op): Take profiling data as an argument.
338         Update callers.
339         (ne-float-binary-op): Ditto.
340
341 2003-09-19  Michael Snyder  <msnyder@redhat.com>
342
343         * frv.cpu (nldqi): Delete unimplemented instruction.
344
345 2003-09-12  Dave Brolley  <brolley@redhat.com>
346
347         * frv.cpu (u-clrgr, u-clrfr): New units of model fr500.
348         (clear-ne-flag-r): Pass insn profiling in as an argument. Call
349         frv_ref_SI to get input register referenced for profiling.
350         (clear-ne-flag-all): Pass insn profiling in as an argument.
351         (clrgr,clrfr,clrga,clrfa): Add profiling information.
352
353 2003-09-11  Michael Snyder  <msnyder@redhat.com>
354
355         * frv.cpu: Typographical corrections.
356
357 2003-09-09  Dave Brolley  <brolley@redhat.com>
358
359         * frv.cpu (media-dual-complex): Change UNIT to FMALL.
360         (conditional-media-dual-complex, media-quad-complex): Likewise.
361
362 2003-09-04  Dave Brolley  <brolley@redhat.com>
363
364         * frv.cpu (register-transfer): Pass in all attributes in on argument.
365         Update all callers.
366         (conditional-register-transfer): Ditto.
367         (cache-preload): Ditto.
368         (floating-point-conversion): Ditto.
369         (floating-point-neg): Ditto.
370         (float-abs): Ditto.
371         (float-binary-op-s): Ditto.
372         (conditional-float-binary-op): Ditto.
373         (ne-float-binary-op): Ditto.
374         (float-dual-arith): Ditto.
375         (ne-float-dual-arith): Ditto.
376
377 2003-09-03  Dave Brolley  <brolley@redhat.com>
378
379         * frv.opc (parse_A, parse_A0, parse_A1): New parse handlers.
380         * frv.cpu (UNIT): Add IALL, FMALL, FMLOW, STORE, SCAN, DCPL, MDUALACC,
381         MCLRACC-1.
382         (A): Removed operand.
383         (A0,A1): New operands replace operand A.
384         (mnop): Now a real insn
385         (mclracc): Removed insn.
386         (mclracc-0, mclracc-1): New insns replace mclracc.
387         (all insns): Use new UNIT attributes.
388
389 2003-08-21  Nick Clifton  <nickc@redhat.com>
390
391         * frv.cpu (mbtoh): Replace input parameter to u-media-dual-expand
392         and u-media-dual-btoh with output parameter.
393         (cmbtoh): Add profiling hack.
394
395 2003-08-19  Michael Snyder  <msnyder@redhat.com>
396
397         * frv.cpu: Fix typo, Frintkeven -> FRintkeven
398
399 2003-06-10  Doug Evans  <dje@sebabeach.org>
400
401         * frv.cpu: Add IDOC attribute.
402
403 2003-06-06  Andrew Cagney  <cagney@redhat.com>
404
405         Contributed by Red Hat.
406         * iq2000.cpu: New file.  Written by Ben Elliston, Jeff Johnston,
407         Stan Cox, and Frank Ch. Eigler.
408         * iq2000.opc: New file.  Written by Ben Elliston, Frank
409         Ch. Eigler, Chris Moller, Jeff Johnston, and Stan Cox.
410         * iq2000m.cpu: New file.  Written by Jeff Johnston.
411         * iq10.cpu: New file.  Written by Jeff Johnston.
412
413 2003-06-05  Nick Clifton  <nickc@redhat.com>
414
415         * frv.cpu (FRintieven): New operand.  An even-numbered only
416         version of the FRinti operand.
417         (FRintjeven): Likewise for FRintj.
418         (FRintkeven): Likewise for FRintk.
419         (mdcutssi, media-dual-word-rotate-r-r, mqsaths,
420         media-quad-arith-sat-semantics, media-quad-arith-sat,
421         conditional-media-quad-arith-sat, mdunpackh,
422         media-quad-multiply-semantics, media-quad-multiply,
423         conditional-media-quad-multiply, media-quad-complex-i,
424         media-quad-multiply-acc-semantics, media-quad-multiply-acc,
425         conditional-media-quad-multiply-acc, munpackh,
426         media-quad-multiply-cross-acc-semantics, mdpackh,
427         media-quad-multiply-cross-acc, mbtoh-semantics,
428         media-quad-cross-multiply-cross-acc-semantics,
429         media-quad-cross-multiply-cross-acc, mbtoh, mhtob-semantics,
430         media-quad-cross-multiply-acc-semantics, cmbtoh,
431         media-quad-cross-multiply-acc, media-quad-complex, mhtob,
432         media-expand-halfword-to-double-semantics, mexpdhd, cmexpdhd,
433         cmhtob): Use new operands.
434         * frv.opc (CGEN_VERBOSE_ASSEMBLER_ERRORS): Define.
435         (parse_even_register): New function.
436
437 2003-06-03  Nick Clifton  <nickc@redhat.com>
438
439         * frv.cpu (media-dual-word-rotate-r-r): Use a signed 6-bit
440         immediate value not unsigned.
441
442 2003-06-03  Andrew Cagney  <cagney@redhat.com>
443
444         Contributed by Red Hat.
445         * frv.cpu: New file.  Written by Dave Brolley, Catherine Moore,
446         and Eric Christopher.
447         * frv.opc: New file.  Written by Catherine Moore, and Dave
448         Brolley.
449         * simplify.inc: New file.  Written by Doug Evans.
450
451 2003-05-02  Andrew Cagney  <cagney@redhat.com>
452
453         * New file.
454
455 \f
456 Local Variables:
457 mode: change-log
458 left-margin: 8
459 fill-column: 74
460 version-control: never
461 End: