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