import gdb-1999-09-08 snapshot
[deliverable/binutils-gdb.git] / sim / igen / ChangeLog
index 45848cc4d5c15c4eee8de0228de8b130fe3b4485..993e9f846e7d180cc83f9cf40eb0bbbc1f3b3a8b 100644 (file)
@@ -1,3 +1,454 @@
+Thu Sep  2 18:15:53 1999  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * Makefile.in (SIM_WARNINGS): Replace this with.
+       (IGEN_WERROR_CFLAGS, IGEN_WARN_CFLAGS, WERROR_CFLAGS,
+       WARN_CFLAGS): With these.
+       (BUILD_CFLAGS): Update.
+
+       * configure: Regenerated to track ../common/aclocal.m4 changes.
+
+1999-05-08  Felix Lee  <flee@cygnus.com>
+
+       * configure: Regenerated to track ../common/aclocal.m4 changes.
+       
+Fri Dec  4 15:14:09 1998  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * igen.c (main): Fix -Pitable=.
+
+       * gen-engine.c (print_run_body): Prefix instruction_address.
+
+Wed Oct 28 18:12:43 1998  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * Makefile.in (SIM_WARNINGS): Update to match ../common/aclocal.m4
+       changes.
+
+Wed Aug 12 10:55:28 1998  Frank Ch. Eigler  <fche@cygnus.com>
+
+       * gen-icache.c (print_icache_extraction): #undef a generated
+       symbol before #define'ing it, to remove conflict with system
+       macros.
+
+Wed Jul 29 10:07:27 1998  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gen.c (gen_entry_expand_opcode): For conditional, fields.  Fix
+       the extraction of the value from its source - both table and bit
+       cases were wrong.
+
+Tue Jul 28 11:19:43 1998  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * ld-insn.c (parse_insn_word): For constant conditional strings,
+       encode their bit value.
+
+       * ld-insn.c (parse_insn_word, parse_insn_words): Allow conditional
+       operands to refer to fields in earlier instruction words.
+
+       * gen.c (sub_val): Replace field argument with val_last_pos.
+       (gen_entry_expand_opcode): Look in previous tables for a value for
+       a conditional field as well as the bits from the current table.
+       (insn_list_insert): Add sort key of instructions where
+       their operand fields have different conditionals.
+       (insn_field_cmp): New function.
+       
+Sun Apr 26 15:31:55 1998  Tom Tromey  <tromey@creche>
+
+       * configure: Regenerated to track ../common/aclocal.m4 changes.
+       * config.in: Ditto.
+
+Sun Apr 26 15:20:08 1998  Tom Tromey  <tromey@cygnus.com>
+
+       * acconfig.h: New file.
+       * configure.in: Reverted change of Apr 24; use sinclude again.
+
+Fri Apr 24 14:16:40 1998  Tom Tromey  <tromey@creche>
+
+       * configure: Regenerated to track ../common/aclocal.m4 changes.
+       * config.in: Ditto.
+
+Fri Apr 24 11:19:33 1998  Tom Tromey  <tromey@cygnus.com>
+
+       * configure.in: Don't call sinclude.
+
+Fri Apr 24 19:45:00 1998  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gen-icache.c (print_icache_extraction): Do not type cast
+       pointers.
+       
+       * ld-insn.c (load_insn_table): Terminate error with NL.
+
+       * gen.c (insns_bit_useless): Perform unsigned bit comparisons.
+
+       * filter.c (is_filtered_out, filter_parse): Pacify GCC, len is
+       unsigned.
+
+Wed Apr 22 14:27:39 1998  Michael Meissner  <meissner@cygnus.com>
+
+       * configure: Reconfigure to pick up ../common/aclocal.m4 changes
+       to suppress inlining by default.
+
+Tue Apr 21 01:37:54 1998  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gen-icache.c (print_icache_extraction): When generating #define
+       force the expression to the correct type.
+
+Thu Apr 16 08:50:29 1998  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * misc.c (name2i): strlen returns an unsigned.
+
+Tue Apr 14 19:04:28 1998  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * igen.h (struct igen_warn_options): Add unimplemented option.
+       * igen.c (main): Update
+
+       * ld-insn.c (load_insn_table): Report unimplemented functions.
+
+Tue Apr 14 10:57:26 1998  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * ld-insn.c (parse_insn_word): Treat `!' and `=' as valid
+       separator tokens when parsing a conditional.
+
+       * igen.h (main): Add option -S so that suffix can be specified.
+
+Tue Apr 14 08:44:53 1998  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * igen.h (struct igen_trace_options): Add members insn_expansion
+       and insn_insertion.
+
+       * igen.c (main): Add options -Gtrace-insn-expansion,
+       -Gtrace-insn-insertion and -Gtrace-all.
+
+       * gen.c (gen_entry_expand_insns): Trace each instruction as it is
+       selected for expansion.
+       (gen_entry_expand_opcode): Trace each expanded instruction as it
+       is inserted into the table.
+       
+Mon Apr 13 19:21:47 1998  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * ld-insn.c (parse_insn_word): Parse conditional operators.
+       (parse_insn_word): Verify field conditionals.
+
+       * ld-insn.h: Extend syntax to allow macros and field equality.
+       (struct insn_field_cond): Rename insn_field_exclusion, add type.
+
+       * gen.c (gen_entry_expand_opcode): Check type of conditional.
+       (insns_bit_useless): Ditto.
+
+       * ld-insn.c (parse_macro_record): New function.
+
+Mon Apr 13 22:37:47 1998  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * ld-insn.h (enum insn_field_type): Add insn_field_invalid.
+
+       * ld-insn.c (parse_insn_word): Check instruction field type
+       correctly initialized.
+       (print_insn_words): Ditto.
+       (insn_field_type_to_str): Ditto.
+       (dump_insn_field): Ditto.
+
+       * gen.c (insns_bit_useless): Ditto.
+
+Fri Apr  3 18:08:16 1998  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gen.h, igen.c (print_include_inline, print_includes,
+       print_includes): New functions.  Generate include list.  For for
+       semantics et.al. generate CPP code to inline when
+       C_REVEALS_MODULE_P.
+       
+       * igen.c (gen_semantics_c): Call print_includes.
+       * gen-engine.c (gen_engine_c): Ditto.
+
+Sat Apr  4 21:09:11 1998  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * igen.h: (struct _igen_name_option): Replace with struct
+       igen_module_option. Contains both module prefix and suffix.
+       (INIT_OPTIONS): Initialize.
+       
+       * igen.c (main): Update -P option to fill in full module info.
+       (gen-engine.c, gen-icache.c, gen-itable.c, gen-semantics.c,
+       gen-support.c): Update.
+
+Sat Apr  4 02:15:35 1998  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * igen.c (print_itrace): Use TRACE_ANY_P macro to determine if any
+       tracing is needed.
+
+Thu Mar 26 20:51:23 1998  Stu Grossman  <grossman@bhuna.cygnus.co.uk>
+
+       * table.c (table_push):  Redo, using stdio.  Fixes NT native
+       problem with <CRLF>=><LF> translation...
+
+Tue Mar 24 23:30:07 1998  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gen-engine.c (print_run_body): Re-extract the CIA after
+       processing any events.
+
+Tue Mar 24 17:46:08 1998  Stu Grossman  <grossman@bhuna.cygnus.co.uk>
+
+       * Makefile.in:  Get SHELL from configure.
+       * configure:  Regenerate with autoconf 2.12.1 to fix shell issues for
+       NT native builds.
+
+Mon Mar 16 12:51:31 1998  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * igen.c: Pass sim_cia to trace_prefix.
+
+Thu Feb 26 19:25:02 1998  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * ld-insn.c (parse_function_record): Check models are valid.
+       (parse_function_record): Only discard function when no model is
+       common.
+
+Tue Feb 24 01:42:03 1998  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gen-engine.c (print_run_body): Always wrap generated idecode
+       body in ENGINE_ISSUE_PREFIX_HOOK / ENGINE_ISSUE_POSTFIX_HOOK.
+
+Fri Feb 20 16:22:10 1998  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * ld-insn.c (parse_function_record): When -Wnodiscard, suppress
+       discarded function warning.
+
+       * igen.c (main): Clarify -Wnodiscard.
+
+       * ld-insn.c (parse_function_record): For functions, allow use of
+       instruction style function model records
+
+       * ld-insn.h (nr_function_model_fields): Define.
+       
+Tue Feb 17 16:36:27 1998  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * igen.c (print_itrace_prefix): Generate call to trace_prefix
+       instead of trace_one_insn.
+       (print_itrace): Generate trace_prefix call if any tracing enabled,
+       (print_itrace): Nest generated call to trace_generic inside
+       conditional for any tracing enabled.
+       (print_itrace_prefix): Do not pass PHASE to trace_prefix.
+
+Tue Feb  3 14:00:32 1998  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gen-engine.c (print_run_body): Add bitsize suffix to IMEM macro.
+       * gen-icache.c (print_icache_body): Ditto.
+       * gen-idecode.c (print_idecode_ifetch): Ditto.
+
+       * gen-icache.c (print_icache_body): Mark successive instruction
+       words as unused.
+
+       * ld-insn.c (parse_insn_word): Only report insn-width problems
+       when warning enabled.
+
+       * igen.h: Add flag for warning about invalid instruction widths.
+       * igen.c: Parse -Wwidth option.
+       
+       * gen-support.c (gen_support_h): Map instruction_word onto
+       <PREFIX>_instruction_word when needed.
+       (print_support_function_name): Use support prefix.
+       (gen_support_h): Ditto for <PREFIX>_idecode_issue.
+       
+Sun Feb  1 11:08:48 1998  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gen-support.c (gen_support_h): Generate new macro CPU_.
+
+Sat Jan 31 14:50:27 1998  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gen-engine.c (gen_engine_h): Don't assume a model is present.
+       (gen_engine_c): Ditto.
+
+       * igen.c (gen_run_c): Ditto.
+
+       * gen-engine.c (print_run_body): Use CIA_GET & CIA_SET instead of
+       CPU_CIA.  Parameterize with CPU argument.
+       
+Fri Jan 30 09:09:39 1998  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gen.h (struct _gen_list): Replace processor with model.
+
+       * igen.c (gen_idecode_h): Update.
+       (gen_run_c): For generated switch, use model->full_name.
+
+       * gen.c (print_gen_entry_path): Ditto.
+       (make_table):  Ditto.
+       (gen_entry_expand_insns):  Ditto.
+       (make_gen_tables):  Ditto.
+
+       * igen.c (gen_run_c): Add extra argument `nr_cpus' to generated
+       function sim_engine_run.  Pass argument on to engine_run.
+
+       * gen-engine.c (print_engine_run_function_header): Add extra
+       argument `nr_cpus' to generated function engine_run.
+       (print_run_body): Fix SMP case.
+
+       * gen-support.c (support_c_function): Call sim_engine_abort when
+       internal function fails to long jump.
+
+Wed Jan 21 18:00:22 1998  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gen-semantics.c (print_semantic_body): Use GPR_SET to zero
+       hardwired register.
+
+Wed Dec 17 14:49:03 1997  Jeffrey A Law  (law@cygnus.com)
+
+       * gen-semantics.c (print_semantic_body): Fix handling of
+       hardwired zero register.
+
+Tue Dec  9 12:45:00 1997  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * igen.h (struct _igen_gen_options): Add member default_model.
+
+       * igen.c (gen_run_c): Default to the first machine in the
+       multi-sim list.
+       (main): Add MODEL parameter to gen-multi-sim option.
+
+       * gen.h (function_decl_type): Declare enum.
+
+       * gen-engine.c (print_engine_run_function_header), gen-engine.h:
+       Make global, pass function_decl_type as argument.
+       (gen_engine_h, gen_engine_c): Update call.
+
+       * gen-idecode.c (print_idecode_issue_function_header),
+       gen-idecode.h: Pass function_decl_type as argument.
+
+       * igen.c (gen_idecode_h): For multi-sim, delcare global variable
+       idecode_issue.
+
+       * igen.c (gen_run_c): For multi-sim, initialize globals
+       idecode_issue and engine_run.
+
+Fri Nov 14 10:51:44 1997  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * ld-insn.c (parse_insn_model_record): Allow multiple model names
+       to be specified in a single instruction model record.
+       (dump_insn_model_entry): Update.
+
+       * ld-insn.h (struct _insn_model_entry): Replace member name with
+       the filter names.  Document syntax change.
+
+Wed Nov 12 15:45:40 1997  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gen-engine.c (print_run_body): Add hooks for adding code before
+       and after an instruction has been issued.
+
+1997-11-04  Brendan Kehoe  <brendan@lisa.cygnus.com>
+
+       * gen-idecode.c (print_jump_until_stop_body): Use `#if 0' instead of
+       `#ifdef 0' around this.
+
+Tue Nov  4 08:18:29 1997  Michael Meissner  <meissner@cygnus.com>
+
+       * ld-decode.c (load_decode_table): Don't assume NULL is an integer
+       constant.
+
+Wed Oct 29 13:17:17 1997  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * ld-insn.h: Document mnemonic string format.
+
+Tue Oct 28 10:50:35 1997  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gen-icache.c (print_icache_extraction): Force result of atol to
+       unsigned.
+
+       * ld-insn.c (parse_function_record): Separate handling of old and
+       ney fynction records.
+       (load_insn_table): For %s record, hack function name & type after
+       it has been parsed.
+
+       * filter.h (filter_is_subset): Reverse argument names, wrong
+       order.
+
+       * ld-insn.c (load_insn_table): Move include code to.
+       (parse_include_record): New function.  Check for filtering of
+       include statement by both flags and models.
+       (load_insn_table): Check for model filtering of cache and model
+       records.
+       (parse_model_data_record): Check for model & flag filtering of
+       model data records.
+       (parse_function_record): Check for model & flag filtering of
+       function records.
+
+       * ld-insn.h: Define record_filter_models_field.  Add filter-models
+       field to all but instruction records.
+       (struct _function_entry, struct _cache_entry): Add models field.
+       (nr_function_fields): Make parm field mandatory.
+
+Mon Oct 27 15:14:26 1997  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * igen.c (main): Change -I option to -I<directory>.  Add optional
+       size to -Ggen-icache option.  Add -Gno-... support.
+       
+       * igen.h (struct _igen_options): Add include field.
+       
+       * ld-insn.c (enum insn_record_type, insn_type_map): Add
+       include_record.
+       (load_insn_table): Call table_push when include record.
+       
+       * table.c (struct _open table, struct table): Make table object an
+       indirect ptr to the current table file.
+       (current_line, new_table_entry, next_line): Make file arg type
+       open_table.
+       (table_open): Use table_push.
+       (table_read): Point variable file at current table, at eof, pop
+       last open table.
+
+       * table.h, table.c (table_push): New function.
+
+Thu Oct 16 11:03:27 1997  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gen-semantics.c (print_semantic_body): Use CIA not
+       cia.ip. Escape newlines at end of generated call to
+       sim_engine_abort.
+
+Tue Oct 14 11:13:27 1997  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * igen.c (print_itrace): Output line-ref to igen source file when
+       generating trace statements.
+       (print_itrace_prefix, print_itrace_format): Escape newline at end
+       of each line of generated call to trace function.
+
+Mon Oct 13 11:27:31 1997  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gen-support.c (gen_support_h): Generate #define NIA. Definition
+       dependant on gen-delayed-branch mode.
+
+       * ld-insn.c (parse_insn_mnemonic_record): Check for opening and
+       closing double quote in mnemonic field.
+       (parse_option_record): Add gen-delayed-branch option.
+
+Wed Oct  8 13:10:16 1997  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * gen.c (insn_list_insert): Missing \n in warning.
+
+       * ld-insn.c (load_insn_table): Only notify of discarded
+       instrctions when warn.discard enabled.
+
+       * igen.h: Add option.warn.discard, default enabled.
+
+       * igen.c (main): Add -Wnodiscard option.
+
+       * ld-insn.c (record_type): For old record type, check the number
+       of fields is correct.
+       (load_insn_table): Allow insn assembler and insn model records to
+       appear in any order.
+       (parse_insn_model_record): Rename from parse_insn_model_records.
+       Parse only one record.
+       (parse_insn_mnemonic_record): Rename from
+       parse_insn_mnemonic_records.  Parse only one record.
+
+Tue Sep 23 15:52:06 1997  Felix Lee  <flee@yin.cygnus.com>
+
+       * gen-itable.c (gen_itable_h): [nr_itable_* + 1] to avoid
+       illegal zero-sized array.
+       (itable_print_set): likewise, avoid empty initializers.
+
+Mon Sep 22 18:49:07 1997  Felix Lee  <flee@cygnus.com>
+
+       * configure.in: i386-windows is a cross, so don't expect
+       libiberty to be there.
+       * configure: updated.
+       
+Fri Sep 19 10:36:30 1997  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * igen.c (print_function_name): Put the format name after the
+       function / instruction name, not before.
+       (print_itrace): Better format trace code.
+
 Tue Sep 16 11:01:07 1997  Andrew Cagney  <cagney@b1.cygnus.com>
 
        * gen.c (insns_bit_useless): Don't treat string fields restricted
This page took 0.027547 seconds and 4 git commands to generate.