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