Import current --enable-gdb-build-warnings.
[deliverable/binutils-gdb.git] / sim / igen / ChangeLog
1 2002-06-16 Andrew Cagney <ac131313@redhat.com>
2
3 * configure: Regenerated to track ../common/aclocal.m4 changes.
4
5 2002-06-03 Richard Henderson <rth@redhat.com>
6
7 * gen-engine.c (print_run_body): Avoid multi-line strings.
8 * lf.c (lf_print__gnu_copyleft): Likewise.
9
10 2002-05-01 Chris Demetriou <cgd@broadcom.com>
11
12 * igen.c: Use 'deprecated' rather than 'depreciated.'
13
14 2002-03-23 Andrew Cagney <ac131313@redhat.com>
15
16 * gen.c (format_name_cmp): New function.
17 (insn_list_insert): Use the instruction field name as an
18 additional key. Different field names indicate different
19 semantics.
20
21 2002-03-07 Chris Demetriou <cgd@broadcom.com>
22
23 * igen.c (print_itrace_format): Add support for a new "%#lx" format.
24
25 Tue May 23 21:39:23 2000 Andrew Cagney <cagney@b1.cygnus.com>
26
27 * configure: Regenerated to track ../common/aclocal.m4 changes.
28
29 2000-04-12 Frank Ch. Eigler <fche@redhat.com>
30
31 * gen-semantics.c (print_semantic_body): Use GPR_CLEAR(N) instead
32 of GPR_SET(N,0) for gen-zero-rN.
33
34 Thu Sep 2 18:15:53 1999 Andrew Cagney <cagney@b1.cygnus.com>
35
36 * Makefile.in (SIM_WARNINGS): Replace this with.
37 (IGEN_WERROR_CFLAGS, IGEN_WARN_CFLAGS, WERROR_CFLAGS,
38 WARN_CFLAGS): With these.
39 (BUILD_CFLAGS): Update.
40
41 * configure: Regenerated to track ../common/aclocal.m4 changes.
42
43 1999-05-08 Felix Lee <flee@cygnus.com>
44
45 * configure: Regenerated to track ../common/aclocal.m4 changes.
46
47 Fri Dec 4 15:14:09 1998 Andrew Cagney <cagney@b1.cygnus.com>
48
49 * igen.c (main): Fix -Pitable=.
50
51 * gen-engine.c (print_run_body): Prefix instruction_address.
52
53 Wed Oct 28 18:12:43 1998 Andrew Cagney <cagney@b1.cygnus.com>
54
55 * Makefile.in (SIM_WARNINGS): Update to match ../common/aclocal.m4
56 changes.
57
58 Wed Aug 12 10:55:28 1998 Frank Ch. Eigler <fche@cygnus.com>
59
60 * gen-icache.c (print_icache_extraction): #undef a generated
61 symbol before #define'ing it, to remove conflict with system
62 macros.
63
64 Wed Jul 29 10:07:27 1998 Andrew Cagney <cagney@b1.cygnus.com>
65
66 * gen.c (gen_entry_expand_opcode): For conditional, fields. Fix
67 the extraction of the value from its source - both table and bit
68 cases were wrong.
69
70 Tue Jul 28 11:19:43 1998 Andrew Cagney <cagney@b1.cygnus.com>
71
72 * ld-insn.c (parse_insn_word): For constant conditional strings,
73 encode their bit value.
74
75 * ld-insn.c (parse_insn_word, parse_insn_words): Allow conditional
76 operands to refer to fields in earlier instruction words.
77
78 * gen.c (sub_val): Replace field argument with val_last_pos.
79 (gen_entry_expand_opcode): Look in previous tables for a value for
80 a conditional field as well as the bits from the current table.
81 (insn_list_insert): Add sort key of instructions where
82 their operand fields have different conditionals.
83 (insn_field_cmp): New function.
84
85 Sun Apr 26 15:31:55 1998 Tom Tromey <tromey@creche>
86
87 * configure: Regenerated to track ../common/aclocal.m4 changes.
88 * config.in: Ditto.
89
90 Sun Apr 26 15:20:08 1998 Tom Tromey <tromey@cygnus.com>
91
92 * acconfig.h: New file.
93 * configure.in: Reverted change of Apr 24; use sinclude again.
94
95 Fri Apr 24 14:16:40 1998 Tom Tromey <tromey@creche>
96
97 * configure: Regenerated to track ../common/aclocal.m4 changes.
98 * config.in: Ditto.
99
100 Fri Apr 24 11:19:33 1998 Tom Tromey <tromey@cygnus.com>
101
102 * configure.in: Don't call sinclude.
103
104 Fri Apr 24 19:45:00 1998 Andrew Cagney <cagney@b1.cygnus.com>
105
106 * gen-icache.c (print_icache_extraction): Do not type cast
107 pointers.
108
109 * ld-insn.c (load_insn_table): Terminate error with NL.
110
111 * gen.c (insns_bit_useless): Perform unsigned bit comparisons.
112
113 * filter.c (is_filtered_out, filter_parse): Pacify GCC, len is
114 unsigned.
115
116 Wed Apr 22 14:27:39 1998 Michael Meissner <meissner@cygnus.com>
117
118 * configure: Reconfigure to pick up ../common/aclocal.m4 changes
119 to suppress inlining by default.
120
121 Tue Apr 21 01:37:54 1998 Andrew Cagney <cagney@b1.cygnus.com>
122
123 * gen-icache.c (print_icache_extraction): When generating #define
124 force the expression to the correct type.
125
126 Thu Apr 16 08:50:29 1998 Andrew Cagney <cagney@b1.cygnus.com>
127
128 * misc.c (name2i): strlen returns an unsigned.
129
130 Tue Apr 14 19:04:28 1998 Andrew Cagney <cagney@b1.cygnus.com>
131
132 * igen.h (struct igen_warn_options): Add unimplemented option.
133 * igen.c (main): Update
134
135 * ld-insn.c (load_insn_table): Report unimplemented functions.
136
137 Tue Apr 14 10:57:26 1998 Andrew Cagney <cagney@b1.cygnus.com>
138
139 * ld-insn.c (parse_insn_word): Treat `!' and `=' as valid
140 separator tokens when parsing a conditional.
141
142 * igen.h (main): Add option -S so that suffix can be specified.
143
144 Tue Apr 14 08:44:53 1998 Andrew Cagney <cagney@b1.cygnus.com>
145
146 * igen.h (struct igen_trace_options): Add members insn_expansion
147 and insn_insertion.
148
149 * igen.c (main): Add options -Gtrace-insn-expansion,
150 -Gtrace-insn-insertion and -Gtrace-all.
151
152 * gen.c (gen_entry_expand_insns): Trace each instruction as it is
153 selected for expansion.
154 (gen_entry_expand_opcode): Trace each expanded instruction as it
155 is inserted into the table.
156
157 Mon Apr 13 19:21:47 1998 Andrew Cagney <cagney@b1.cygnus.com>
158
159 * ld-insn.c (parse_insn_word): Parse conditional operators.
160 (parse_insn_word): Verify field conditionals.
161
162 * ld-insn.h: Extend syntax to allow macros and field equality.
163 (struct insn_field_cond): Rename insn_field_exclusion, add type.
164
165 * gen.c (gen_entry_expand_opcode): Check type of conditional.
166 (insns_bit_useless): Ditto.
167
168 * ld-insn.c (parse_macro_record): New function.
169
170 Mon Apr 13 22:37:47 1998 Andrew Cagney <cagney@b1.cygnus.com>
171
172 * ld-insn.h (enum insn_field_type): Add insn_field_invalid.
173
174 * ld-insn.c (parse_insn_word): Check instruction field type
175 correctly initialized.
176 (print_insn_words): Ditto.
177 (insn_field_type_to_str): Ditto.
178 (dump_insn_field): Ditto.
179
180 * gen.c (insns_bit_useless): Ditto.
181
182 Fri Apr 3 18:08:16 1998 Andrew Cagney <cagney@b1.cygnus.com>
183
184 * gen.h, igen.c (print_include_inline, print_includes,
185 print_includes): New functions. Generate include list. For for
186 semantics et.al. generate CPP code to inline when
187 C_REVEALS_MODULE_P.
188
189 * igen.c (gen_semantics_c): Call print_includes.
190 * gen-engine.c (gen_engine_c): Ditto.
191
192 Sat Apr 4 21:09:11 1998 Andrew Cagney <cagney@b1.cygnus.com>
193
194 * igen.h: (struct _igen_name_option): Replace with struct
195 igen_module_option. Contains both module prefix and suffix.
196 (INIT_OPTIONS): Initialize.
197
198 * igen.c (main): Update -P option to fill in full module info.
199 (gen-engine.c, gen-icache.c, gen-itable.c, gen-semantics.c,
200 gen-support.c): Update.
201
202 Sat Apr 4 02:15:35 1998 Andrew Cagney <cagney@b1.cygnus.com>
203
204 * igen.c (print_itrace): Use TRACE_ANY_P macro to determine if any
205 tracing is needed.
206
207 Thu Mar 26 20:51:23 1998 Stu Grossman <grossman@bhuna.cygnus.co.uk>
208
209 * table.c (table_push): Redo, using stdio. Fixes NT native
210 problem with <CRLF>=><LF> translation...
211
212 Tue Mar 24 23:30:07 1998 Andrew Cagney <cagney@b1.cygnus.com>
213
214 * gen-engine.c (print_run_body): Re-extract the CIA after
215 processing any events.
216
217 Tue Mar 24 17:46:08 1998 Stu Grossman <grossman@bhuna.cygnus.co.uk>
218
219 * Makefile.in: Get SHELL from configure.
220 * configure: Regenerate with autoconf 2.12.1 to fix shell issues for
221 NT native builds.
222
223 Mon Mar 16 12:51:31 1998 Andrew Cagney <cagney@b1.cygnus.com>
224
225 * igen.c: Pass sim_cia to trace_prefix.
226
227 Thu Feb 26 19:25:02 1998 Andrew Cagney <cagney@b1.cygnus.com>
228
229 * ld-insn.c (parse_function_record): Check models are valid.
230 (parse_function_record): Only discard function when no model is
231 common.
232
233 Tue Feb 24 01:42:03 1998 Andrew Cagney <cagney@b1.cygnus.com>
234
235 * gen-engine.c (print_run_body): Always wrap generated idecode
236 body in ENGINE_ISSUE_PREFIX_HOOK / ENGINE_ISSUE_POSTFIX_HOOK.
237
238 Fri Feb 20 16:22:10 1998 Andrew Cagney <cagney@b1.cygnus.com>
239
240 * ld-insn.c (parse_function_record): When -Wnodiscard, suppress
241 discarded function warning.
242
243 * igen.c (main): Clarify -Wnodiscard.
244
245 * ld-insn.c (parse_function_record): For functions, allow use of
246 instruction style function model records
247
248 * ld-insn.h (nr_function_model_fields): Define.
249
250 Tue Feb 17 16:36:27 1998 Andrew Cagney <cagney@b1.cygnus.com>
251
252 * igen.c (print_itrace_prefix): Generate call to trace_prefix
253 instead of trace_one_insn.
254 (print_itrace): Generate trace_prefix call if any tracing enabled,
255 (print_itrace): Nest generated call to trace_generic inside
256 conditional for any tracing enabled.
257 (print_itrace_prefix): Do not pass PHASE to trace_prefix.
258
259 Tue Feb 3 14:00:32 1998 Andrew Cagney <cagney@b1.cygnus.com>
260
261 * gen-engine.c (print_run_body): Add bitsize suffix to IMEM macro.
262 * gen-icache.c (print_icache_body): Ditto.
263 * gen-idecode.c (print_idecode_ifetch): Ditto.
264
265 * gen-icache.c (print_icache_body): Mark successive instruction
266 words as unused.
267
268 * ld-insn.c (parse_insn_word): Only report insn-width problems
269 when warning enabled.
270
271 * igen.h: Add flag for warning about invalid instruction widths.
272 * igen.c: Parse -Wwidth option.
273
274 * gen-support.c (gen_support_h): Map instruction_word onto
275 <PREFIX>_instruction_word when needed.
276 (print_support_function_name): Use support prefix.
277 (gen_support_h): Ditto for <PREFIX>_idecode_issue.
278
279 Sun Feb 1 11:08:48 1998 Andrew Cagney <cagney@b1.cygnus.com>
280
281 * gen-support.c (gen_support_h): Generate new macro CPU_.
282
283 Sat Jan 31 14:50:27 1998 Andrew Cagney <cagney@b1.cygnus.com>
284
285 * gen-engine.c (gen_engine_h): Don't assume a model is present.
286 (gen_engine_c): Ditto.
287
288 * igen.c (gen_run_c): Ditto.
289
290 * gen-engine.c (print_run_body): Use CIA_GET & CIA_SET instead of
291 CPU_CIA. Parameterize with CPU argument.
292
293 Fri Jan 30 09:09:39 1998 Andrew Cagney <cagney@b1.cygnus.com>
294
295 * gen.h (struct _gen_list): Replace processor with model.
296
297 * igen.c (gen_idecode_h): Update.
298 (gen_run_c): For generated switch, use model->full_name.
299
300 * gen.c (print_gen_entry_path): Ditto.
301 (make_table): Ditto.
302 (gen_entry_expand_insns): Ditto.
303 (make_gen_tables): Ditto.
304
305 * igen.c (gen_run_c): Add extra argument `nr_cpus' to generated
306 function sim_engine_run. Pass argument on to engine_run.
307
308 * gen-engine.c (print_engine_run_function_header): Add extra
309 argument `nr_cpus' to generated function engine_run.
310 (print_run_body): Fix SMP case.
311
312 * gen-support.c (support_c_function): Call sim_engine_abort when
313 internal function fails to long jump.
314
315 Wed Jan 21 18:00:22 1998 Andrew Cagney <cagney@b1.cygnus.com>
316
317 * gen-semantics.c (print_semantic_body): Use GPR_SET to zero
318 hardwired register.
319
320 Wed Dec 17 14:49:03 1997 Jeffrey A Law (law@cygnus.com)
321
322 * gen-semantics.c (print_semantic_body): Fix handling of
323 hardwired zero register.
324
325 Tue Dec 9 12:45:00 1997 Andrew Cagney <cagney@b1.cygnus.com>
326
327 * igen.h (struct _igen_gen_options): Add member default_model.
328
329 * igen.c (gen_run_c): Default to the first machine in the
330 multi-sim list.
331 (main): Add MODEL parameter to gen-multi-sim option.
332
333 * gen.h (function_decl_type): Declare enum.
334
335 * gen-engine.c (print_engine_run_function_header), gen-engine.h:
336 Make global, pass function_decl_type as argument.
337 (gen_engine_h, gen_engine_c): Update call.
338
339 * gen-idecode.c (print_idecode_issue_function_header),
340 gen-idecode.h: Pass function_decl_type as argument.
341
342 * igen.c (gen_idecode_h): For multi-sim, delcare global variable
343 idecode_issue.
344
345 * igen.c (gen_run_c): For multi-sim, initialize globals
346 idecode_issue and engine_run.
347
348 Fri Nov 14 10:51:44 1997 Andrew Cagney <cagney@b1.cygnus.com>
349
350 * ld-insn.c (parse_insn_model_record): Allow multiple model names
351 to be specified in a single instruction model record.
352 (dump_insn_model_entry): Update.
353
354 * ld-insn.h (struct _insn_model_entry): Replace member name with
355 the filter names. Document syntax change.
356
357 Wed Nov 12 15:45:40 1997 Andrew Cagney <cagney@b1.cygnus.com>
358
359 * gen-engine.c (print_run_body): Add hooks for adding code before
360 and after an instruction has been issued.
361
362 1997-11-04 Brendan Kehoe <brendan@lisa.cygnus.com>
363
364 * gen-idecode.c (print_jump_until_stop_body): Use `#if 0' instead of
365 `#ifdef 0' around this.
366
367 Tue Nov 4 08:18:29 1997 Michael Meissner <meissner@cygnus.com>
368
369 * ld-decode.c (load_decode_table): Don't assume NULL is an integer
370 constant.
371
372 Wed Oct 29 13:17:17 1997 Andrew Cagney <cagney@b1.cygnus.com>
373
374 * ld-insn.h: Document mnemonic string format.
375
376 Tue Oct 28 10:50:35 1997 Andrew Cagney <cagney@b1.cygnus.com>
377
378 * gen-icache.c (print_icache_extraction): Force result of atol to
379 unsigned.
380
381 * ld-insn.c (parse_function_record): Separate handling of old and
382 ney fynction records.
383 (load_insn_table): For %s record, hack function name & type after
384 it has been parsed.
385
386 * filter.h (filter_is_subset): Reverse argument names, wrong
387 order.
388
389 * ld-insn.c (load_insn_table): Move include code to.
390 (parse_include_record): New function. Check for filtering of
391 include statement by both flags and models.
392 (load_insn_table): Check for model filtering of cache and model
393 records.
394 (parse_model_data_record): Check for model & flag filtering of
395 model data records.
396 (parse_function_record): Check for model & flag filtering of
397 function records.
398
399 * ld-insn.h: Define record_filter_models_field. Add filter-models
400 field to all but instruction records.
401 (struct _function_entry, struct _cache_entry): Add models field.
402 (nr_function_fields): Make parm field mandatory.
403
404 Mon Oct 27 15:14:26 1997 Andrew Cagney <cagney@b1.cygnus.com>
405
406 * igen.c (main): Change -I option to -I<directory>. Add optional
407 size to -Ggen-icache option. Add -Gno-... support.
408
409 * igen.h (struct _igen_options): Add include field.
410
411 * ld-insn.c (enum insn_record_type, insn_type_map): Add
412 include_record.
413 (load_insn_table): Call table_push when include record.
414
415 * table.c (struct _open table, struct table): Make table object an
416 indirect ptr to the current table file.
417 (current_line, new_table_entry, next_line): Make file arg type
418 open_table.
419 (table_open): Use table_push.
420 (table_read): Point variable file at current table, at eof, pop
421 last open table.
422
423 * table.h, table.c (table_push): New function.
424
425 Thu Oct 16 11:03:27 1997 Andrew Cagney <cagney@b1.cygnus.com>
426
427 * gen-semantics.c (print_semantic_body): Use CIA not
428 cia.ip. Escape newlines at end of generated call to
429 sim_engine_abort.
430
431 Tue Oct 14 11:13:27 1997 Andrew Cagney <cagney@b1.cygnus.com>
432
433 * igen.c (print_itrace): Output line-ref to igen source file when
434 generating trace statements.
435 (print_itrace_prefix, print_itrace_format): Escape newline at end
436 of each line of generated call to trace function.
437
438 Mon Oct 13 11:27:31 1997 Andrew Cagney <cagney@b1.cygnus.com>
439
440 * gen-support.c (gen_support_h): Generate #define NIA. Definition
441 dependant on gen-delayed-branch mode.
442
443 * ld-insn.c (parse_insn_mnemonic_record): Check for opening and
444 closing double quote in mnemonic field.
445 (parse_option_record): Add gen-delayed-branch option.
446
447 Wed Oct 8 13:10:16 1997 Andrew Cagney <cagney@b1.cygnus.com>
448
449 * gen.c (insn_list_insert): Missing \n in warning.
450
451 * ld-insn.c (load_insn_table): Only notify of discarded
452 instrctions when warn.discard enabled.
453
454 * igen.h: Add option.warn.discard, default enabled.
455
456 * igen.c (main): Add -Wnodiscard option.
457
458 * ld-insn.c (record_type): For old record type, check the number
459 of fields is correct.
460 (load_insn_table): Allow insn assembler and insn model records to
461 appear in any order.
462 (parse_insn_model_record): Rename from parse_insn_model_records.
463 Parse only one record.
464 (parse_insn_mnemonic_record): Rename from
465 parse_insn_mnemonic_records. Parse only one record.
466
467 Tue Sep 23 15:52:06 1997 Felix Lee <flee@yin.cygnus.com>
468
469 * gen-itable.c (gen_itable_h): [nr_itable_* + 1] to avoid
470 illegal zero-sized array.
471 (itable_print_set): likewise, avoid empty initializers.
472
473 Mon Sep 22 18:49:07 1997 Felix Lee <flee@cygnus.com>
474
475 * configure.in: i386-windows is a cross, so don't expect
476 libiberty to be there.
477 * configure: updated.
478
479 Fri Sep 19 10:36:30 1997 Andrew Cagney <cagney@b1.cygnus.com>
480
481 * igen.c (print_function_name): Put the format name after the
482 function / instruction name, not before.
483 (print_itrace): Better format trace code.
484
485 Tue Sep 16 11:01:07 1997 Andrew Cagney <cagney@b1.cygnus.com>
486
487 * gen.c (insns_bit_useless): Don't treat string fields restricted
488 to a range of values as useless.
489
490 Mon Sep 15 15:47:21 1997 Andrew Cagney <cagney@b1.cygnus.com>
491
492 * igen.c (gen_run_c): Handle non-multi-sim case.
493
494 * gen-support.c (gen_support_h): Define SD_ - to replace _SD.
495 Define CIA from cia.
496
497 Thu Sep 11 10:27:39 1997 Andrew Cagney <cagney@b1.cygnus.com>
498
499 * gen-semantics.c (print_semantic_body): Trace the instruction
500 after it has been validated.
501 (print_semantic_body): Count the instruction using sim-profile.
502
503 Wed Sep 10 13:35:37 1997 Andrew Cagney <cagney@b1.cygnus.com>
504
505 * gen-itable.c (gen_itable_h): Collect summary info on instruction
506 table when traversing it.
507 (gen_itable_h): Output an enum defining the max size of each of
508 the itable string members.
509
510 Tue Sep 9 03:30:26 1997 Andrew Cagney <cagney@b1.cygnus.com>
511
512 * igen.c (gen_run_c): New function. Generate sim_engine_run that
513 looks at the currently selected architecture.
514
515 * gen-engine.c, gen-idecode.c: Add multi-sim support - generate
516 one engine per model.
517
518 * gen-semantics.c, gen-icache.c gen-support.c:
519 Update.
520
521 * ld-insn.h, ld-insn-h (load_insn_table): Rewrite. table.h only
522 returns a line at a time. Parse multi-word instructions. Add
523 multi-sim support.
524
525 * table.h, table.c: Simplify. Only parse a single line at a time.
526 ld-insn can handle the rest.
527
528 * filter.h, filter.c (filter_parse, filter_add, filter_is_subset,
529 filter_is_common, filter_is_member, filter_next): New filter
530 operations.
531 (dump_filter): Ditto.
532
533 * gen.h, gen.c: New file. Takes the insn table and turns it into
534 a set of decode tables and semantic functions.
535
536 * ld-insn.c: Copy generator code from here.
537 * gen.c: To here.
538
539 Fri Aug 8 11:43:45 1997 Andrew Cagney <cagney@b1.cygnus.com>
540
541 * misc.h (NZALLOC): Allocate an N element array of TYPE.
542
543 * table.h, table.c: Simplify table parser so that it only
544 understands colon delimited lines and code blocks.
545 (table_read): Parse '{' ... '}' as a code block.
546 (table_print_code): New function, print out a code block to file.
547 (main): Add suport for standalone testing.
548
549 * ld-insn.h, ld-insn.c:
550
551
552 Mon Sep 1 11:41:12 1997 Andrew Cagney <cagney@b1.cygnus.com>
553
554 * gen-idecode.c (error_leaf_contains_multiple_insn): Make static.
555 (print_jump_definition, print_jump, print_jump_internal_function,
556 print_jump_insn, print_jump_until_stop_body): Delete, moved to
557 sim-engine.c
558
559 * igen.c (print_itrace_format): Delete unused variable chp.
560 (gen-engine.h): Include.
561
562 * table.c (current_file_name, current_line_entry,
563 current_line_entry): Make static.
564
565 Wed Aug 6 12:31:17 1997 Andrew Cagney <cagney@b1.cygnus.com>
566
567 * configure.in: Define AR_FOR_BUILD, AR_FLAGS_FOR_BUILD,
568 RANLIB_FOR_BUILD and CFLAGS_FOR_BUILD.
569 * configure.in: Include simulator common/aclocal.m4.
570 * configure.in: Add --enable-sim-warnings option.
571 * configure: Re-generate.
572
573 * Makefile.in: Use.
574
575 * Makefile.in (tmp-filter): New rule.
576 (igen.o, tmp-table, tmp-ld-decode, tmp-ld-cache, tmp-ld-insn,
577 ld-decode.o, ld-cache.o, ld-insn.o): Fix dependencies.
578
579 * gen.h, gen.c: New files.
580
581 * Makefile.in (gen.o, tmp-gen): New rules, update all
582 dependencies.
583
584 Tue Jun 24 11:46:45 1997 Andrew Cagney <cagney@b1.cygnus.com>
585
586 * ld-insn.c (load_insn_table): Accept %s as a function type.
587
588 Thu Jun 5 17:14:32 1997 Andrew Cagney <cagney@b1.cygnus.com>
589
590 * igen.c (print_itrace_prefix): Move printing of insn prefix to
591 here.
592 (print_itrace_format): Drop printing of MY_NAME in instruction
593 trace. Printing of insn prefix moved.
594 (print_itrace): Ditto.
595
596 Fri May 30 11:27:37 1997 Andrew Cagney <cagney@b1.cygnus.com>
597
598 * gen-icache.c (print_icache_function_header): Pass
599 table_line_entry instead of separate file and line.
600
601 * table.c (table_entry_read): Set assembler source file/line-nr to
602 the current not initial file.
603 (table_entry_read): Fix line numbering of source files.
604
605 table.h (table_line_entry): New structure. Exactly specifies a
606 source file/line-nr.
607 (table_*_entry): Add this to all.
608
609 table.c (table_entry_print_cpp_line_nr): Change to use values from
610 a table_line_entry struct.
611 (table_entry_read): Save table_line_entry in all structures read.
612
613 gen-icache.c, gen-support.c, gen-idecode.c, gen-semantics.c,
614 gen-model.c: Update all references.
615
616 Thu May 29 10:29:57 1997 Andrew Cagney <cagney@b1.cygnus.com>
617
618 * igen.c (print_my_defines): Define MY_NAME - a string. For
619 MY_PREFIX, undefine the name of the function incase some dumb
620 header defined it. it.
621 (print_itrace): Use MY_NAME not MY_PREFIX.
622
623 * lf.c (lf_write): New function write an N character buffer to the
624 file.
625
626 * igen.c (print_itrace): When available, use the assembler to
627 print the insn-trace.
628 (print_itrace_prefix): New function, print first part of call to
629 print_one_insn.
630 (print_itrace_format): New function, print fmt argument for
631 print_one_insn.
632
633 * table.c (table_entry_read): Save any assembler lines instead of
634 discarding them.
635
636 Wed May 28 09:55:29 1997 Andrew Cagney <cagney@b1.cygnus.com>
637
638 * gen-icache.c (print_icache_body): Process immeds.
639
640 * gen-semantics.c (print_semantic_body): When computing NIA, skip
641 any immed words that follow the instruction word.
642
643 * ld-insn.c (parse_insn_format): Parse immeds appended to an
644 instruction.
645
646 * igen.c (main): Allow any register to be specified as the zero
647 register.
648 (semantic_zero_reg): Global, index to zero register.
649
650 * gen-semantics.c (print_semantic_body): Zero selected register.
651
652 Tue May 27 14:12:32 1997 Andrew Cagney <cagney@b1.cygnus.com>
653
654 * igen.h: Stop options and code gen type bit masks overlaping.
655
656 Fri May 23 12:01:08 1997 Andrew Cagney <cagney@b1.cygnus.com>
657
658 * gen-semantics.c (print_semantic_body): Incorrect test for
659 zero-r0 code.
660
661 Fri May 16 14:32:31 1997 Andrew Cagney <cagney@b1.cygnus.com>
662
663 * gen-semantics.c (print_semantic_body): Use common sim-engine
664 interface.
665
666 Fri May 16 11:48:30 1997 Andrew Cagney <cagney@b1.cygnus.com>
667
668 * gen-semantics.c (print_semantic_body): Add code to clear r0.
669
670 * igen.c (main): Add new option zero-r0, which adds code to clear
671 GPR(0) each cycle.
672
673 Wed May 7 12:31:30 1997 Andrew Cagney <cagney@b1.cygnus.com>
674
675 * igen.c (print_itrace): Fix so line-nr is passed to trace
676 function.
677
678 * gen-idecode.c (print_idecode_validate): Correct FP code.
679
680 * gen-support.c (gen_support_h): Always pass MY_INDEX to support
681 functions.
682 (print_support_function_name): Ditto.
683
684 Tue May 6 06:12:04 1997 Mike Meissner <meissner@cygnus.com>
685
686 * igen.c (print_itrace): Call trace_one_insn to trace
687 instructions, rather than doing it directly.
688
689 Mon May 5 14:11:46 1997 Mike Meissner <meissner@cygnus.com>
690
691 * gen-engine.c (engine_switch_leaf): Remove extra %s.
692 (print_engine_floating_point_unavailable): Wrap in #ifdef
693 UNUSED/#endif, until somebody uses it.
694
695 * gen-idecode.c (error_leaf_contains_multiple_insn): Remove unused
696 variable.
697 (print_jump_until_stop_body): Wrap in #ifdef UNUSED/#endif, until
698 somebody uses it.
699 (print_idecode_validate): Use long formats to print long values.
700
701 * gen-semantics.c (print_idecode_invalid): Set name to "unknown"
702 if we get an unexpected type.
703
704 Fri May 2 13:28:06 1997 Andrew Cagney <cagney@b1.cygnus.com>
705
706 * igen.c (print_itrace): Pass SD as well as CPU to calls to
707 trace_printf.
708
709 * gen-support.c (gen_support_h): Always pass sim_cia cia to
710 support functions.
711 (print_support_function_name): Ditto.
712
713 Wed Apr 30 17:35:51 1997 Andrew Cagney <cagney@b1.cygnus.com>
714
715 * gen-support.c (support_c_function): Remove unnecessary memset of
716 cia.
717 * gen-semantics.c (print_semantic_body): Wasn't closing
718 generated comment.
719
720 Tue Apr 29 11:11:12 1997 Andrew Cagney <cagney@b1.cygnus.com>
721
722 * ld-insn.c (load_insn_table): Report instructions that do not
723 have at least a format and name.
724 (insn_table_find_opcode_field): Check progress is being made.
725
726 * gen-support.c (support_c_function): Report empty function body.
727
728 Thu Apr 24 11:43:45 1997 Andrew Cagney <cagney@b1.cygnus.com>
729
730 * ld-insn.c (insn_table_expand_opcode): Allow reserved fields to
731 be broken up.
732 (insn_table_expand_insns): Allow special rules to apply to groups
733 of instructions when all members of the group match the special
734 mask/value.
735
736 * gen-semantics.c (print_c_semantic): Ditto.
737 * igen.c (print_semantic_function_formal): Ditto.
738 (print_semantic_function_type): Ditto.
739 * igen.c (print_icache_function_formal): Ditto.
740 * gen-idecode.c (print_idecode_issue_function_body): Ditto.
741
742 * gen-idecode.c (gen_idecode_h): Prepend the global_prefix to the
743 instruction_address type.
744
745 * gen-semantics.c (print_semantic_body): Call cpu_error when an
746 unimplemented instruction is encountered - gives the interpreter
747 the chance to stop correctly.
748
749 Wed Apr 23 20:06:36 1997 Andrew Cagney <cagney@b1.cygnus.com>
750
751 * igen.c (print_function_name): Allow dot's in instruction names.
752
753 Tue Apr 22 21:46:28 1997 Andrew Cagney <cagney@b1.cygnus.com>
754
755 * igen.c (main), igen.h: Support new option - delayed-branch -
756 generate code to drive a delayed branch processor.
757
758 * gen-idecode.c (gen_idecode_h): Define instruction_address type.
759
760 * igen.c (print_icache_function_formal): Replace address_word with
761 instruction_address.
762 (print_semantic_function_formal): Ditto.
763 (print_semantic_function_type): Ditto.
764 * gen-idecode.c (print_idecode_issue_function_body): Ditto.
765
766 * gen-semantics.c (print_semantic_body): Ditto.
767 (print_c_semantic): Ditto.
768
769 * gen-support.c (support_c_function): Return a zeroed CIA instead
770 of just zero - works with any cia type.
771
772 * igen.c (print_itrace): For delayed branch case, print just the
773 current instruction.
774
775 Thu Apr 17 07:02:33 1997 Doug Evans <dje@canuck.cygnus.com>
776
777 * igen.c (print_itrace): Use TRACE_FOO_P and trace_printf.
778
779 Tue Apr 15 15:20:31 1997 Ian Lance Taylor <ian@cygnus.com>
780
781 * Makefile.in (INSTALL): Set to @INSTALL@.
782 (INSTALL_XFORM, INSTALL_XFORM1): Remove.
783
784 Mon Apr 14 16:29:34 1997 Ian Lance Taylor <ian@cygnus.com>
785
786 * Makefile.in (INSTALL): Change install.sh to install-sh.
787
788 Wed Apr 2 18:51:20 1997 Doug Evans <dje@canuck.cygnus.com>
789
790 * gen-support.c (gen_support_c): sim-state.h renamed to sim-main.h.
791 * gen-idecode.c (gen_idecode_c): Likewise.
792 * igen.c (gen_semantics_c): Likewise.
793
794 Mon Mar 24 10:10:08 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
795
796 * gen-icache.c (print_icache_body): No longer define cpu/sd,
797 support.h now defines CPU/SD globally.
798
799 * gen-model.c (gen_model_h): Ditto.
800
801 * gen-idecode.c (print_idecode_issue_function_body): Ditto.
802 (print_jump): Ditto.
803 (print_jump_until_stop_body): Ditto.
804 (print_idecode_validate): Ditto.
805
806 * gen-icache.c (print_icache_body): Ditto.
807
808 * gen-semantics.c (print_semantic_body): Ditto.
809
810 * igen.c (print_semantic_function_formal): Rename cpu to sim_cpu,
811 processor to cpu.
812 (print_icache_function_formal): Ditto.
813
814 * gen-support.c (print_support_function_name): Include sd/cpu arg
815 in support function argument list.
816 (support_c_function): Generate code to cpu/sd from sd/cpu.
817 (gen_support_h): Define _SD the argument prefix for all support
818 functions. Define SD/CPU to determine sd/cpu from value of _SD
819 macro.
820
821 Tue Mar 18 15:52:24 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
822
823 * gen-support.c (gen_support_c): Update for renaming of engine to
824 sim-state.
825
826 * igen.c: Ditto.
827 * gen-idecode.c (gen_idecode_c): Ditto.
828
829 Mon Mar 17 15:17:07 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
830
831 * ld-decode.c (load_decode_table): Rename slash to reserved.
832 (dump_decode_rule): Ditto.
833
834 * ld-insn.c (parse_insn_format): Differentiate between a `/' -
835 reserved bit - and a `*' - wild card.
836 (parse_insn_format): Change is_slash to more informative reserved.
837 (dump_insn_field): Ditto.
838 (insn_field_is_constant): Ditto.
839 (insn_table_expand_opcode): Ditto.
840
841 * gen-idecode.c (print_idecode_validate): Make check_mask and
842 check_val the correct integer size.
843 (print_idecode_validate): Fix reserved bit check for 64 bit
844 targets.
845
846 Fri Mar 14 11:24:06 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
847
848 * ld-insn.c (parse_insn_format): Accept '*' as an alternative of
849 `/' in bit fields. `/' denotes a wild bit.
850
851 Fri Mar 7 18:20:38 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
852
853 * igen.h, igen.c (main): New options. Control generation of
854 conditional issue and slot verification code.
855
856 Fri Mar 7 18:17:25 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
857
858 * gen-support.c (print_support_function_name): Prepend the global
859 name prefix when applicable. Provide #define to map the user
860 specified name the generated globaly unique one.
861
862 Fri Mar 7 18:07:45 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
863
864 * gen-idecode.c (print_idecode_validate): Wrap each of the checks
865 - reserved bits, floating point and slot validation - with a
866 #ifdef so that they are optional.
867
868 Fri Mar 7 16:35:13 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
869
870 * gen-idecode.c (error_leaf_contains_multiple_insn): New function
871 - report the error of a leaf node in the decision tree containing
872 several instructions.
873 (print_idecode_table_leaf): Detect a leaf with multiple instructions.
874 (print_idecode_switch_leaf): Ditto.
875
876 * gen-semantics.h, gen-semantics.c (print_idecode_illegal,
877 print_idecode_invalid): Rename former to latter. Add argument so
878 that one function can generate all invalid instruction cases -
879 illegal, fp-unavailable, wrong-slot.
880 * gen-engine.c: Update.
881
882 * gen-idecode.c: Use print_idecode_invalid to generate a function
883 call for cases when fp-unavailable and the slot is wrong.
884
885 * gen-idecode.c (print_idecode_validate): New check, generate code
886 to verify that the instruction slot is correct.
887
888 * igen.c (main): Simplify options.
889
890 Wed Mar 5 09:55:55 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
891
892 * igen.c (print_itrace): Remove source line reference for trace
893 code - let the user see the generated file.
894 (print_itrace): Print the trace code rather than reference a
895 macro.
896
897 Tue Mar 4 17:31:55 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
898
899 * igen.c (print_semantic_function_actual): Pass either the
900 processor - smp - or the engine - mono - into semantic functions.
901 Don't pass in both.
902
903 * gen-icache.c (print_icache_body): Dependant on smp, derive
904 processor from engine or engine from processor, and hence ensuring
905 that both are defined in all semantic functions.
906
907 Mon Mar 3 17:11:21 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
908
909 * ld-insn.c (parse_insn_format): Make the width field optional.
910 If missing assume that the number of characters in the value
911 determines the number of bits in the field.
912
913 Thu Feb 27 11:27:48 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
914
915 * ld-insn.c (insn_table_expand_opcode): Replace assertion with
916 more useful error message.
917
918 Tue Feb 25 16:43:27 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
919
920 * misc.c (error): Output errors on stderr.
921
922 * ld-insn.c (parse_insn_format): Skip any leading spaces.
923 Verify the width of instructions being parsed.
924
925 * table.c (table_entry_read): Parse CPP's convention for
926 specifying original file name/line-nr.
927
928 Wed Feb 19 12:30:28 1997 Andrew Cagney <cagney@critters.cygnus.com>
929
930 * ld-insn.c (parse_insn_format): Allow trailing spaces in
931 instruction fields.
932
933 * Makefile.in: Create using ../ppc/Makefile.in as a starting
934 point.
935 * configure.in: Ditto vis ../ppc/configure.in
936
937 Mon Feb 17 10:44:18 1997 Andrew Cagney <cagney@critters.cygnus.com>
938
939 * gen-support.c (gen_support_c): Always include engine.h instead
940 of cpu.h
941 * gen-idecode.c (gen_idecode_c): Ditto.
942
943 * words.h (instruction_word): Remove instruction_word - now
944 generated by igen.
945 (address_word): New. Used by igen.
946
947 * lf.c (lf_print_function_type_function): New, pass a function to
948 print out the type instead of a constant string.
949
950 * igen.h, igen.c (print_semantic_function_formal,
951 SEMANTIC_FUNCTION_FORMAL): Relace macro with function.
952 (print_semantic_function_actual, SEMANTIC_FUNCTION_ACTUAL): Ditto.
953 (print_semantic_function_type, SEMANTIC_FUNCTION_TYPE): Ditto.
954 (print_icache_function_type, ICACHE_FUNCTION_TYPE): Ditto.
955 (print_icache_function_formal, ICACHE_FUNCTION_FORMAL): Ditto.
956 (print_icache_function_actual, ICACHE_FUNCTION_ACTUAL): Ditto.
957 * gen-idecode.c (print_idecode_table): Update.
958 (idecode_switch_leaf): Update.
959 (print_idecode_switch_function_header): Ditto.
960 (print_idecode_floating_point_unavailable): Ditto.
961 (print_idecode_issue_function_header): Ditto.
962 * igen.c (gen_icache_h): Ditto.
963 * gen-engine.c (print_engine_table): Ditto.
964 (engine_switch_leaf): Ditto.
965 * gen-support.c (print_support_function_name): Ditto.
966 * gen-semantics.c (print_semantic_function_header): Update.
967 Update.
968 * gen-icache.c (print_icache_function_header): Update.
969 (print_icache_function): Update.
970 (print_icache_internal_function_declaration): Update.
971 (print_icache_internal_function_definition): Update.
972
973 * gen-idecode.c (gen_idecode_h): Drop including of idecode_*.h
974 files, will at some stage need to move it into support.
975
976 * igen.h, igen.c (main): New option -e <engine> - generate a full
977 simulation engine. Previously this was the -d <idecode-file>
978 option.
979 * gen-engine.h, gen-engine.c: Copies of gen-idecode.*. Will need
980 to clean these up so that that call upon the updated gen-idecode
981 code.
982
983 * gen-idecode.h, gen-idecode.c: Prune out any code not relevant to
984 generating a decode table.
985
986 * Makefile.in (igen): Add dependencies for new gen-engine.* files.
987
988 * igen.h, igen.c (main): New option -M - Control what is returned
989 by semantic functions - -1/NIA vs CIA+N/NIA. Add
990 generate_semantic_returning_modified_nia_only to igen_code enum.
991 * gen-semantics.c (print_semantic_body): As an alternative, make
992 NIA == -1 instead of CIA+insn_size by default.
993
994 * igen.h, igen.c (main, global_name_prefix, global_uname_prefix):
995 New option -P <prefix> - Prepend all generated functions with the
996 specified prefix.
997 (gen_idecode_c): Adjust.
998 * gen-icache.c (print_icache_struct): Ditto.
999 * gen-support.c (gen_support_c): Ditto.
1000
1001 Sun Feb 16 15:23:15 1997 Andrew Cagney <cagney@critters.cygnus.com>
1002
1003 * igen.c (main): Correct usage. Missleading message about ucase
1004 options dumping internal tables. -F now includes rather then
1005 excludes instructions.
1006
1007 * misc.h, misc.c (a2i): Make 64bit.
1008
1009 * ld-insn.h (max_insn_bit_size, default_insn_bit_size): Increase
1010 max to 64bits, expect trouble. Make the default 32 bits.
1011 * gen-idecode.c (print_idecode_table): Change EXTRACTED*
1012 et.al. macro's to use the insn_bit_size instead of assuming 32
1013 bits.
1014 * gen-icache.c (print_icache_extraction): Ditto.
1015 * gen-idecode.c (idecode_switch_start): Ditto.
1016 * gen-idecode.c (gen_idecode_c): Ditto
1017
1018 * igen.h (insn_specifying_widths), igen.c (main): New option -W.
1019 Indicates that the instruction field of the table is specifying
1020 bit widths instead of bit offsets.
1021 * ld-insn.c (parse_insn_format): Parse instruction fields
1022 specifying widths.
1023
1024 * misc.c (a2i): Allow binary numbers to be specified using the
1025 syntax 0bNNNN.
1026 * ld-insn.c: Allow such numbers to appear in the instruction
1027 format.
1028
1029 * table.c (table_entry_read): Make // a valid comment character.
1030 (table_entry_read): Skip lines containing a leading " - these may
1031 eventually be used in a disasembler.
1032
1033 Fri Feb 14 15:23:15 1997 Andrew Cagney <cagney@critters.cygnus.com>
1034
1035 * filter.c, filter.h, gen-engine.c, gen-engine.h, gen-icache.c,
1036 gen-icache.h, gen-idecode.c, gen-idecode.h, gen-itable.c,
1037 gen-itable.h, gen-model.c, gen-model.h, gen-semantics.c,
1038 gen-semantics.h, gen-support.c, gen-support.h, igen.c, igen.h,
1039 ld-cache.c, ld-cache.h, ld-decode.c, ld-decode.h, ld-insn.c,
1040 ld-insn.h, lf.c, lf.h, misc.c, misc.h, table.c, table.h: Copy in
1041 from the ../ppc directory.
1042
1043 * filter_host.c, filter_host.h: Copy in from the ../ppc directory
1044 renaming from filter_filename.[hc]
This page took 0.061339 seconds and 4 git commands to generate.