b9835de588d49cecea6b4fad6f9fdf3837de9a1e
[deliverable/binutils-gdb.git] / sim / igen / ChangeLog
1 Tue May 27 14:12:32 1997 Andrew Cagney <cagney@b1.cygnus.com>
2
3 * igen.h: Stop options and code gen type bit masks overlaping.
4
5 Fri May 23 12:01:08 1997 Andrew Cagney <cagney@b1.cygnus.com>
6
7 * gen-semantics.c (print_semantic_body): Incorrect test for
8 zero-r0 code.
9
10 Fri May 16 14:32:31 1997 Andrew Cagney <cagney@b1.cygnus.com>
11
12 * gen-semantics.c (print_semantic_body): Use common sim-engine
13 interface.
14
15 Fri May 16 11:48:30 1997 Andrew Cagney <cagney@b1.cygnus.com>
16
17 * gen-semantics.c (print_semantic_body): Add code to clear r0.
18
19 * igen.c (main): Add new option zero-r0, which adds code to clear
20 GPR(0) each cycle.
21
22 Wed May 7 12:31:30 1997 Andrew Cagney <cagney@b1.cygnus.com>
23
24 * igen.c (print_itrace): Fix so line-nr is passed to trace
25 function.
26
27 * gen-idecode.c (print_idecode_validate): Correct FP code.
28
29 * gen-support.c (gen_support_h): Always pass MY_INDEX to support
30 functions.
31 (print_support_function_name): Ditto.
32
33 Tue May 6 06:12:04 1997 Mike Meissner <meissner@cygnus.com>
34
35 * igen.c (print_itrace): Call trace_one_insn to trace
36 instructions, rather than doing it directly.
37
38 Mon May 5 14:11:46 1997 Mike Meissner <meissner@cygnus.com>
39
40 * gen-engine.c (engine_switch_leaf): Remove extra %s.
41 (print_engine_floating_point_unavailable): Wrap in #ifdef
42 UNUSED/#endif, until somebody uses it.
43
44 * gen-idecode.c (error_leaf_contains_multiple_insn): Remove unused
45 variable.
46 (print_jump_until_stop_body): Wrap in #ifdef UNUSED/#endif, until
47 somebody uses it.
48 (print_idecode_validate): Use long formats to print long values.
49
50 * gen-semantics.c (print_idecode_invalid): Set name to "unknown"
51 if we get an unexpected type.
52
53 Fri May 2 13:28:06 1997 Andrew Cagney <cagney@b1.cygnus.com>
54
55 * igen.c (print_itrace): Pass SD as well as CPU to calls to
56 trace_printf.
57
58 * gen-support.c (gen_support_h): Always pass sim_cia cia to
59 support functions.
60 (print_support_function_name): Ditto.
61
62 Wed Apr 30 17:35:51 1997 Andrew Cagney <cagney@b1.cygnus.com>
63
64 * gen-support.c (support_c_function): Remove unnecessary memset of
65 cia.
66 * gen-semantics.c (print_semantic_body): Wasn't closing
67 generated comment.
68
69 Tue Apr 29 11:11:12 1997 Andrew Cagney <cagney@b1.cygnus.com>
70
71 * ld-insn.c (load_insn_table): Report instructions that do not
72 have at least a format and name.
73 (insn_table_find_opcode_field): Check progress is being made.
74
75 * gen-support.c (support_c_function): Report empty function body.
76
77 Thu Apr 24 11:43:45 1997 Andrew Cagney <cagney@b1.cygnus.com>
78
79 * ld-insn.c (insn_table_expand_opcode): Allow reserved fields to
80 be broken up.
81 (insn_table_expand_insns): Allow special rules to apply to groups
82 of instructions when all members of the group match the special
83 mask/value.
84
85 * gen-semantics.c (print_c_semantic): Ditto.
86 * igen.c (print_semantic_function_formal): Ditto.
87 (print_semantic_function_type): Ditto.
88 * igen.c (print_icache_function_formal): Ditto.
89 * gen-idecode.c (print_idecode_issue_function_body): Ditto.
90
91 * gen-idecode.c (gen_idecode_h): Prepend the global_prefix to the
92 instruction_address type.
93
94 * gen-semantics.c (print_semantic_body): Call cpu_error when an
95 unimplemented instruction is encountered - gives the interpreter
96 the chance to stop correctly.
97
98 Wed Apr 23 20:06:36 1997 Andrew Cagney <cagney@b1.cygnus.com>
99
100 * igen.c (print_function_name): Allow dot's in instruction names.
101
102 Tue Apr 22 21:46:28 1997 Andrew Cagney <cagney@b1.cygnus.com>
103
104 * igen.c (main), igen.h: Support new option - delayed-branch -
105 generate code to drive a delayed branch processor.
106
107 * gen-idecode.c (gen_idecode_h): Define instruction_address type.
108
109 * igen.c (print_icache_function_formal): Replace address_word with
110 instruction_address.
111 (print_semantic_function_formal): Ditto.
112 (print_semantic_function_type): Ditto.
113 * gen-idecode.c (print_idecode_issue_function_body): Ditto.
114
115 * gen-semantics.c (print_semantic_body): Ditto.
116 (print_c_semantic): Ditto.
117
118 * gen-support.c (support_c_function): Return a zeroed CIA instead
119 of just zero - works with any cia type.
120
121 * igen.c (print_itrace): For delayed branch case, print just the
122 current instruction.
123
124 Thu Apr 17 07:02:33 1997 Doug Evans <dje@canuck.cygnus.com>
125
126 * igen.c (print_itrace): Use TRACE_FOO_P and trace_printf.
127
128 Tue Apr 15 15:20:31 1997 Ian Lance Taylor <ian@cygnus.com>
129
130 * Makefile.in (INSTALL): Set to @INSTALL@.
131 (INSTALL_XFORM, INSTALL_XFORM1): Remove.
132
133 Mon Apr 14 16:29:34 1997 Ian Lance Taylor <ian@cygnus.com>
134
135 * Makefile.in (INSTALL): Change install.sh to install-sh.
136
137 Wed Apr 2 18:51:20 1997 Doug Evans <dje@canuck.cygnus.com>
138
139 * gen-support.c (gen_support_c): sim-state.h renamed to sim-main.h.
140 * gen-idecode.c (gen_idecode_c): Likewise.
141 * igen.c (gen_semantics_c): Likewise.
142
143 Mon Mar 24 10:10:08 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
144
145 * gen-icache.c (print_icache_body): No longer define cpu/sd,
146 support.h now defines CPU/SD globally.
147
148 * gen-model.c (gen_model_h): Ditto.
149
150 * gen-idecode.c (print_idecode_issue_function_body): Ditto.
151 (print_jump): Ditto.
152 (print_jump_until_stop_body): Ditto.
153 (print_idecode_validate): Ditto.
154
155 * gen-icache.c (print_icache_body): Ditto.
156
157 * gen-semantics.c (print_semantic_body): Ditto.
158
159 * igen.c (print_semantic_function_formal): Rename cpu to sim_cpu,
160 processor to cpu.
161 (print_icache_function_formal): Ditto.
162
163 * gen-support.c (print_support_function_name): Include sd/cpu arg
164 in support function argument list.
165 (support_c_function): Generate code to cpu/sd from sd/cpu.
166 (gen_support_h): Define _SD the argument prefix for all support
167 functions. Define SD/CPU to determine sd/cpu from value of _SD
168 macro.
169
170 Tue Mar 18 15:52:24 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
171
172 * gen-support.c (gen_support_c): Update for renaming of engine to
173 sim-state.
174
175 * igen.c: Ditto.
176 * gen-idecode.c (gen_idecode_c): Ditto.
177
178 Mon Mar 17 15:17:07 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
179
180 * ld-decode.c (load_decode_table): Rename slash to reserved.
181 (dump_decode_rule): Ditto.
182
183 * ld-insn.c (parse_insn_format): Differentiate between a `/' -
184 reserved bit - and a `*' - wild card.
185 (parse_insn_format): Change is_slash to more informative reserved.
186 (dump_insn_field): Ditto.
187 (insn_field_is_constant): Ditto.
188 (insn_table_expand_opcode): Ditto.
189
190 * gen-idecode.c (print_idecode_validate): Make check_mask and
191 check_val the correct integer size.
192 (print_idecode_validate): Fix reserved bit check for 64 bit
193 targets.
194
195 Fri Mar 14 11:24:06 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
196
197 * ld-insn.c (parse_insn_format): Accept '*' as an alternative of
198 `/' in bit fields. `/' denotes a wild bit.
199
200 Fri Mar 7 18:20:38 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
201
202 * igen.h, igen.c (main): New options. Control generation of
203 conditional issue and slot verification code.
204
205 Fri Mar 7 18:17:25 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
206
207 * gen-support.c (print_support_function_name): Prepend the global
208 name prefix when applicable. Provide #define to map the user
209 specified name the generated globaly unique one.
210
211 Fri Mar 7 18:07:45 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
212
213 * gen-idecode.c (print_idecode_validate): Wrap each of the checks
214 - reserved bits, floating point and slot validation - with a
215 #ifdef so that they are optional.
216
217 Fri Mar 7 16:35:13 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
218
219 * gen-idecode.c (error_leaf_contains_multiple_insn): New function
220 - report the error of a leaf node in the decision tree containing
221 several instructions.
222 (print_idecode_table_leaf): Detect a leaf with multiple instructions.
223 (print_idecode_switch_leaf): Ditto.
224
225 * gen-semantics.h, gen-semantics.c (print_idecode_illegal,
226 print_idecode_invalid): Rename former to latter. Add argument so
227 that one function can generate all invalid instruction cases -
228 illegal, fp-unavailable, wrong-slot.
229 * gen-engine.c: Update.
230
231 * gen-idecode.c: Use print_idecode_invalid to generate a function
232 call for cases when fp-unavailable and the slot is wrong.
233
234 * gen-idecode.c (print_idecode_validate): New check, generate code
235 to verify that the instruction slot is correct.
236
237 * igen.c (main): Simplify options.
238
239 Wed Mar 5 09:55:55 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
240
241 * igen.c (print_itrace): Remove source line reference for trace
242 code - let the user see the generated file.
243 (print_itrace): Print the trace code rather than reference a
244 macro.
245
246 Tue Mar 4 17:31:55 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
247
248 * igen.c (print_semantic_function_actual): Pass either the
249 processor - smp - or the engine - mono - into semantic functions.
250 Don't pass in both.
251
252 * gen-icache.c (print_icache_body): Dependant on smp, derive
253 processor from engine or engine from processor, and hence ensuring
254 that both are defined in all semantic functions.
255
256 Mon Mar 3 17:11:21 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
257
258 * ld-insn.c (parse_insn_format): Make the width field optional.
259 If missing assume that the number of characters in the value
260 determines the number of bits in the field.
261
262 Thu Feb 27 11:27:48 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
263
264 * ld-insn.c (insn_table_expand_opcode): Replace assertion with
265 more useful error message.
266
267 Tue Feb 25 16:43:27 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
268
269 * misc.c (error): Output errors on stderr.
270
271 * ld-insn.c (parse_insn_format): Skip any leading spaces.
272 Verify the width of instructions being parsed.
273
274 * table.c (table_entry_read): Parse CPP's convention for
275 specifying original file name/line-nr.
276
277 Wed Feb 19 12:30:28 1997 Andrew Cagney <cagney@critters.cygnus.com>
278
279 * ld-insn.c (parse_insn_format): Allow trailing spaces in
280 instruction fields.
281
282 * Makefile.in: Create using ../ppc/Makefile.in as a starting
283 point.
284 * configure.in: Ditto vis ../ppc/configure.in
285
286 Mon Feb 17 10:44:18 1997 Andrew Cagney <cagney@critters.cygnus.com>
287
288 * gen-support.c (gen_support_c): Always include engine.h instead
289 of cpu.h
290 * gen-idecode.c (gen_idecode_c): Ditto.
291
292 * words.h (instruction_word): Remove instruction_word - now
293 generated by igen.
294 (address_word): New. Used by igen.
295
296 * lf.c (lf_print_function_type_function): New, pass a function to
297 print out the type instead of a constant string.
298
299 * igen.h, igen.c (print_semantic_function_formal,
300 SEMANTIC_FUNCTION_FORMAL): Relace macro with function.
301 (print_semantic_function_actual, SEMANTIC_FUNCTION_ACTUAL): Ditto.
302 (print_semantic_function_type, SEMANTIC_FUNCTION_TYPE): Ditto.
303 (print_icache_function_type, ICACHE_FUNCTION_TYPE): Ditto.
304 (print_icache_function_formal, ICACHE_FUNCTION_FORMAL): Ditto.
305 (print_icache_function_actual, ICACHE_FUNCTION_ACTUAL): Ditto.
306 * gen-idecode.c (print_idecode_table): Update.
307 (idecode_switch_leaf): Update.
308 (print_idecode_switch_function_header): Ditto.
309 (print_idecode_floating_point_unavailable): Ditto.
310 (print_idecode_issue_function_header): Ditto.
311 * igen.c (gen_icache_h): Ditto.
312 * gen-engine.c (print_engine_table): Ditto.
313 (engine_switch_leaf): Ditto.
314 * gen-support.c (print_support_function_name): Ditto.
315 * gen-semantics.c (print_semantic_function_header): Update.
316 Update.
317 * gen-icache.c (print_icache_function_header): Update.
318 (print_icache_function): Update.
319 (print_icache_internal_function_declaration): Update.
320 (print_icache_internal_function_definition): Update.
321
322 * gen-idecode.c (gen_idecode_h): Drop including of idecode_*.h
323 files, will at some stage need to move it into support.
324
325 * igen.h, igen.c (main): New option -e <engine> - generate a full
326 simulation engine. Previously this was the -d <idecode-file>
327 option.
328 * gen-engine.h, gen-engine.c: Copies of gen-idecode.*. Will need
329 to clean these up so that that call upon the updated gen-idecode
330 code.
331
332 * gen-idecode.h, gen-idecode.c: Prune out any code not relevant to
333 generating a decode table.
334
335 * Makefile.in (igen): Add dependencies for new gen-engine.* files.
336
337 * igen.h, igen.c (main): New option -M - Control what is returned
338 by semantic functions - -1/NIA vs CIA+N/NIA. Add
339 generate_semantic_returning_modified_nia_only to igen_code enum.
340 * gen-semantics.c (print_semantic_body): As an alternative, make
341 NIA == -1 instead of CIA+insn_size by default.
342
343 * igen.h, igen.c (main, global_name_prefix, global_uname_prefix):
344 New option -P <prefix> - Prepend all generated functions with the
345 specified prefix.
346 (gen_idecode_c): Adjust.
347 * gen-icache.c (print_icache_struct): Ditto.
348 * gen-support.c (gen_support_c): Ditto.
349
350 Sun Feb 16 15:23:15 1997 Andrew Cagney <cagney@critters.cygnus.com>
351
352 * igen.c (main): Correct usage. Missleading message about ucase
353 options dumping internal tables. -F now includes rather then
354 excludes instructions.
355
356 * misc.h, misc.c (a2i): Make 64bit.
357
358 * ld-insn.h (max_insn_bit_size, default_insn_bit_size): Increase
359 max to 64bits, expect trouble. Make the default 32 bits.
360 * gen-idecode.c (print_idecode_table): Change EXTRACTED*
361 et.al. macro's to use the insn_bit_size instead of assuming 32
362 bits.
363 * gen-icache.c (print_icache_extraction): Ditto.
364 * gen-idecode.c (idecode_switch_start): Ditto.
365 * gen-idecode.c (gen_idecode_c): Ditto
366
367 * igen.h (insn_specifying_widths), igen.c (main): New option -W.
368 Indicates that the instruction field of the table is specifying
369 bit widths instead of bit offsets.
370 * ld-insn.c (parse_insn_format): Parse instruction fields
371 specifying widths.
372
373 * misc.c (a2i): Allow binary numbers to be specified using the
374 syntax 0bNNNN.
375 * ld-insn.c: Allow such numbers to appear in the instruction
376 format.
377
378 * table.c (table_entry_read): Make // a valid comment character.
379 (table_entry_read): Skip lines containing a leading " - these may
380 eventually be used in a disasembler.
381
382 Fri Feb 14 15:23:15 1997 Andrew Cagney <cagney@critters.cygnus.com>
383
384 * filter.c, filter.h, gen-engine.c, gen-engine.h, gen-icache.c,
385 gen-icache.h, gen-idecode.c, gen-idecode.h, gen-itable.c,
386 gen-itable.h, gen-model.c, gen-model.h, gen-semantics.c,
387 gen-semantics.h, gen-support.c, gen-support.h, igen.c, igen.h,
388 ld-cache.c, ld-cache.h, ld-decode.c, ld-decode.h, ld-insn.c,
389 ld-insn.h, lf.c, lf.h, misc.c, misc.h, table.c, table.h: Copy in
390 from the ../ppc directory.
391
392 * filter_host.c, filter_host.h: Copy in from the ../ppc directory
393 renaming from filter_filename.[hc]
This page took 0.050032 seconds and 4 git commands to generate.