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