Add fr450 support.
[platform/upstream/binutils.git] / cpu / ChangeLog
1 2004-03-01  Richard Sandiford  <rsandifo@redhat.com>
2
3         * frv.cpu (define-arch frv): Add fr450 mach.
4         (define-mach fr450): New.
5         (define-model fr450): New.  Add profile units to every fr450 insn.
6         (define-attr UNIT): Add MDCUTSSI.
7         (define-attr FR450-MAJOR): New enum.  Add to every fr450 insn.
8         (define-attr AUDIO): New boolean.
9         (f-LRAE, f-LRAD, f-LRAS, f-TLBPRopx, f-TLBPRL)
10         (f-LRA-null, f-TLBPR-null): New fields.
11         (scr0, scr1, scr2, scr3, imavr1, damvr1, cxnr, ttbr)
12         (tplr, tppr, tpxr, timerh, timerl, timerd, btbr): New SPRs.
13         (LRAE, LRAD, LRAS, TLBPRopx, TLBPRL): New operands.
14         (LRA-null, TLBPR-null): New macros.
15         (iacc-multiply-r-r, slass, scutss, int-arith-ss-r-r): Add AUDIO attr.
16         (load-real-address): New macro.
17         (lrai, lrad, tlbpr): New instructions.
18         (media-cut-acc, media-cut-acc-ss): Add fr450-major argument.
19         (mcut, mcuti, mcutss, mcutssi): Adjust accordingly.
20         (mdcutssi): Change UNIT attribute to MDCUTSSI.
21         (media-low-clear-semantics, media-scope-limit-semantics)
22         (media-quad-limit, media-quad-shift): New macros.
23         (mqlclrhs, mqlmths, mqsllhi, mqsrahi): New instructions.
24         * frv.opc (frv_is_branch_major, frv_is_float_major, frv_is_media_major)
25         (frv_is_branch_insn, frv_is_float_insn, frv_is_media_insn)
26         (frv_vliw_reset, frv_vliw_add_insn): Handle bfd_mach_fr450.
27         (fr450_unit_mapping): New array.
28         (fr400_unit_mapping, fr500_unit_mapping, fr550_unit_mapping): Add entry
29         for new MDCUTSSI unit.
30         (fr450_check_insn_major_constraints): New function.
31         (check_insn_major_constraints): Use it.
32
33 2004-03-01  Richard Sandiford  <rsandifo@redhat.com>
34
35         * frv.cpu (nsdiv, nudiv, nsdivi, nudivi): Remove fr400 profiling unit.
36         (scutss): Change unit to I0.
37         (calll, callil, ccalll): Add missing FR550-MAJOR and profile unit.
38         (mqsaths): Fix FR400-MAJOR categorization.
39         (media-quad-multiply-cross-acc, media-quad-cross-multiply-cross-acc)
40         (media-quad-cross-multiply-acc): Change unit from MDUALACC to FMALL.
41         * frv.opc (fr400_check_insn_major_constraints): Check for (M-2,M-1)
42         combinations.
43
44 2004-03-01  Richard Sandiford  <rsandifo@redhat.com>
45
46         * frv.cpu (r-store, r-store-dual, r-store-quad): Delete.
47         (rstb, rsth, rst, rstd, rstq): Delete.
48         (rstbf, rsthf, rstf, rstdf, rstqf): Delete.
49
50 2004-02-23  Nick Clifton  <nickc@redhat.com>
51
52         * Apply these patches from Renesas:
53
54         2004-02-10  Kazuhiro Inaoka  <inaoka.kazuhiro@renesas.com>
55
56         * cpu/m32r.opc (my_print_insn): Fixed incorrect output when
57         disassembling codes for 0x*2 addresses.
58
59         2003-12-15  Kazuhiro Inaoka  <inaoka.kazuhiro@renesas.com>
60
61         * cpu/m32r.cpu: Add PIPE_O attribute to "pop" instruction.
62
63         2003-12-03  Kazuhiro Inaoka  <inaoka.kazuhiro@renesas.com>
64
65         * cpu/m32r.cpu : Add new model m32r2.
66         Add new instructions.
67         Replace occurrances of 'Mitsubishi' with 'Renesas'.
68         Changed PIPE attr of push from O to OS.
69         Care for Little-endian of M32R.
70         * cpu/m32r.opc (CGEN_DIS_HASH, my_print_insn):
71         Care for Little-endian of M32R.
72         (parse_slo16): signed extension for value.
73
74 2004-02-20  Andrew Cagney  <cagney@redhat.com>
75
76         * m32r.opc, m32r.cpu: New files.  Written by , Doug Evans, Nick
77         Clifton, Ben Elliston, Matthew Green, and Andrew Haley.
78
79         * sh.cpu, sh.opc, sh64-compact.cpu, sh64-media.cpu: New files, all
80         written by Ben Elliston.
81
82 2004-01-14  Richard Sandiford  <rsandifo@redhat.com>
83
84         * frv.cpu (UNIT): Add IACC.
85         (iacc-multiply-r-r): Use it.
86         * frv.opc (fr400_unit_mapping): Add entry for IACC.
87         (fr500_unit_mapping, fr550_unit_mapping): Likewise.
88
89 2004-01-06  Alexandre Oliva  <aoliva@redhat.com>
90
91         2003-12-19  Alexandre Oliva  <aoliva@redhat.com>
92         * frv.opc (parse_ulo16, parse_uhi16, parse_d12): Fix some
93         cut&paste errors in shifting/truncating numerical operands.
94         2003-08-08  Alexandre Oliva  <aoliva@redhat.com>
95         * frv.opc (parse_ulo16): Parse gotofflo and gotofffuncdesclo.
96         (parse_uslo16): Likewise.
97         (parse_uhi16): Parse gotoffhi and gotofffuncdeschi.
98         (parse_d12): Parse gotoff12 and gotofffuncdesc12.
99         (parse_s12): Likewise.
100         2003-08-04  Alexandre Oliva  <aoliva@redhat.com>
101         * frv.opc (parse_ulo16): Parse gotlo and gotfuncdesclo.
102         (parse_uslo16): Likewise.
103         (parse_uhi16): Parse gothi and gotfuncdeschi.
104         (parse_d12): Parse got12 and gotfuncdesc12.
105         (parse_s12): Likewise.
106
107 2003-10-10  Dave Brolley  <brolley@redhat.com>
108
109         * frv.cpu (dnpmop): New p-macro.
110         (GRdoublek): Use dnpmop.
111         (CPRdoublek, FRdoublei, FRdoublej, FRdoublek): Ditto.
112         (store-double-r-r): Use (.sym regtype doublek).
113         (r-store-double): Ditto.
114         (store-double-r-r-u): Ditto.
115         (conditional-store-double): Ditto.
116         (conditional-store-double-u): Ditto.
117         (store-double-r-simm): Ditto.
118         (fmovs): Assign to UNIT FMALL.
119
120 2003-10-06  Dave Brolley  <brolley@redhat.com>
121
122         * frv.cpu, frv.opc: Add support for fr550.
123
124 2003-09-24  Dave Brolley  <brolley@redhat.com>
125
126         * frv.cpu (u-commit): New modelling unit for fr500.
127         (mwtaccg): Use frv_ref_SI to reference ACC40Sk as an input operand.
128         (commit-r): Use u-commit model for fr500.
129         (commit): Ditto.
130         (conditional-float-binary-op): Take profiling data as an argument.
131         Update callers.
132         (ne-float-binary-op): Ditto.
133
134 2003-09-19  Michael Snyder  <msnyder@redhat.com>
135
136         * frv.cpu (nldqi): Delete unimplemented instruction.
137
138 2003-09-12  Dave Brolley  <brolley@redhat.com>
139
140         * frv.cpu (u-clrgr, u-clrfr): New units of model fr500.
141         (clear-ne-flag-r): Pass insn profiling in as an argument. Call
142         frv_ref_SI to get input register referenced for profiling.
143         (clear-ne-flag-all): Pass insn profiling in as an argument.
144         (clrgr,clrfr,clrga,clrfa): Add profiling information.
145
146 2003-09-11  Michael Snyder  <msnyder@redhat.com>
147
148         * frv.cpu: Typographical corrections.
149
150 2003-09-09  Dave Brolley  <brolley@redhat.com>
151
152         * frv.cpu (media-dual-complex): Change UNIT to FMALL.
153         (conditional-media-dual-complex, media-quad-complex): Likewise.
154
155 2003-09-04  Dave Brolley  <brolley@redhat.com>
156
157         * frv.cpu (register-transfer): Pass in all attributes in on argument.
158         Update all callers.
159         (conditional-register-transfer): Ditto.
160         (cache-preload): Ditto.
161         (floating-point-conversion): Ditto.
162         (floating-point-neg): Ditto.
163         (float-abs): Ditto.
164         (float-binary-op-s): Ditto.
165         (conditional-float-binary-op): Ditto.
166         (ne-float-binary-op): Ditto.
167         (float-dual-arith): Ditto.
168         (ne-float-dual-arith): Ditto.
169
170 2003-09-03  Dave Brolley  <brolley@redhat.com>
171
172         * frv.opc (parse_A, parse_A0, parse_A1): New parse handlers.
173         * frv.cpu (UNIT): Add IALL, FMALL, FMLOW, STORE, SCAN, DCPL, MDUALACC,
174         MCLRACC-1.
175         (A): Removed operand.
176         (A0,A1): New operands replace operand A.
177         (mnop): Now a real insn
178         (mclracc): Removed insn.
179         (mclracc-0, mclracc-1): New insns replace mclracc.
180         (all insns): Use new UNIT attributes.
181
182 2003-08-21  Nick Clifton  <nickc@redhat.com>
183
184         * frv.cpu (mbtoh): Replace input parameter to u-media-dual-expand
185         and u-media-dual-btoh with output parameter.
186         (cmbtoh): Add profiling hack.
187
188 2003-08-19  Michael Snyder  <msnyder@redhat.com>
189
190         * frv.cpu: Fix typo, Frintkeven -> FRintkeven
191
192 2003-06-10  Doug Evans  <dje@sebabeach.org>
193
194         * frv.cpu: Add IDOC attribute.
195
196 2003-06-06  Andrew Cagney  <cagney@redhat.com>
197
198         Contributed by Red Hat.
199         * iq2000.cpu: New file.  Written by Ben Elliston, Jeff Johnston,
200         Stan Cox, and Frank Ch. Eigler.
201         * iq2000.opc: New file.  Written by Ben Elliston, Frank
202         Ch. Eigler, Chris Moller, Jeff Johnston, and Stan Cox.
203         * iq2000m.cpu: New file.  Written by Jeff Johnston.
204         * iq10.cpu: New file.  Written by Jeff Johnston.
205
206 2003-06-05  Nick Clifton  <nickc@redhat.com>
207
208         * frv.cpu (FRintieven): New operand.  An even-numbered only
209         version of the FRinti operand.
210         (FRintjeven): Likewise for FRintj.
211         (FRintkeven): Likewise for FRintk.
212         (mdcutssi, media-dual-word-rotate-r-r, mqsaths,
213         media-quad-arith-sat-semantics, media-quad-arith-sat,
214         conditional-media-quad-arith-sat, mdunpackh,
215         media-quad-multiply-semantics, media-quad-multiply,
216         conditional-media-quad-multiply, media-quad-complex-i,
217         media-quad-multiply-acc-semantics, media-quad-multiply-acc,
218         conditional-media-quad-multiply-acc, munpackh,
219         media-quad-multiply-cross-acc-semantics, mdpackh,
220         media-quad-multiply-cross-acc, mbtoh-semantics,
221         media-quad-cross-multiply-cross-acc-semantics,
222         media-quad-cross-multiply-cross-acc, mbtoh, mhtob-semantics,
223         media-quad-cross-multiply-acc-semantics, cmbtoh,
224         media-quad-cross-multiply-acc, media-quad-complex, mhtob,
225         media-expand-halfword-to-double-semantics, mexpdhd, cmexpdhd,
226         cmhtob): Use new operands.
227         * frv.opc (CGEN_VERBOSE_ASSEMBLER_ERRORS): Define.
228         (parse_even_register): New function.
229
230 2003-06-03  Nick Clifton  <nickc@redhat.com>
231
232         * frv.cpu (media-dual-word-rotate-r-r): Use a signed 6-bit
233         immediate value not unsigned.
234
235 2003-06-03  Andrew Cagney  <cagney@redhat.com>
236
237         Contributed by Red Hat.
238         * frv.cpu: New file.  Written by Dave Brolley, Catherine Moore,
239         and Eric Christopher.
240         * frv.opc: New file.  Written by Catherine Moore, and Dave
241         Brolley.
242         * simplify.inc: New file.  Written by Doug Evans.
243
244 2003-05-02  Andrew Cagney  <cagney@redhat.com>
245
246         * New file.
247
248 \f
249 Local Variables:
250 mode: change-log
251 left-margin: 8
252 fill-column: 74
253 version-control: never
254 End: