Save a copy of argv, not just a pointer.
[deliverable/binutils-gdb.git] / sim / common / ChangeLog
index e8c67fc33c4c69df8b4604952a126d6786132304..b4dd6782e033fd9e70570387dfab6eedf24a1d53 100644 (file)
@@ -1,3 +1,438 @@
+Wed Aug 27 09:51:42 1997  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * sim-utils.c (sim_copy_argv): Rewrite to match malloc strategy
+       used by copyargv and freeargv.
+
+       * sim-options.c (sim_parse_args): Save a copy of PROG-ARGS in
+       STATE_PROG_ARGV, not just a pointer.
+
+Mon Aug 25 17:50:22 1997  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * configure: Regenerated to track ../common/aclocal.m4 changes.
+       * config.in: Ditto.
+
+Mon Aug 25 12:11:06 1997  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * aclocal.m4 (sim-endian): Add second argument to
+       SIM_AC_OPTION_ENDIAN.  First is hardwired endian, second is
+       default endian when not hardwired.
+
+       * sim-config.h (WITH_DEFAULT_TARGET_BYTE_ORDER): New macro, if all
+       else failes value for target byte order.
+
+       * sim-config.c (sim_config): Add abfd arguments. Set
+       STATE_PROG_BFD accordingly.  Determine prefered_target_byte_order
+       from same.
+       (sim_config): Return SIM_RC, don't abort.
+       (bfd.h): Include.
+       
+       * run.c (main): Update call to sim_open - add ABFD argument.
+       * nrun.c (main): Add NULL ABFD argument.
+
+Thu Aug 14 12:48:57 1997  Doug Evans  <dje@canuck.cygnus.com>
+
+       * callback.c (os_poll_quit): Make static.
+       Call sim_cb_eprintf, not p->eprintf.
+       (sim_cb_printf, sim_cb_eprintf): New functions.
+       * sim-utils.h (sim_cb_printf, sim_cb_eprintf): Declare.
+
+       * sim-basics.h (zalloc,zfree,sim_add_commas,SIM_ELAPSED_TIME,
+       sim_elapsed_time_get,sim_elapsed_time_since): Move decls to
+       sim-utils.h. #include sim-utils.h.
+       * sim-utils.h: Above decls moved here.
+       (sim_analyze_program,sim_load_file): Use `struct _bfd', not `bfd'.
+
+       * sim-watch.c (action_watchpoint): Fix thinkos.
+
+Thu Jul 24 08:48:05 1997  Stu Grossman  (grossman@critters.cygnus.com)
+
+       * sim-types.h:  Fix defs of 64 bit data types for MSVC.
+
+Tue Jul 22 10:35:37 1997  Doug Evans  <dje@canuck.cygnus.com>
+
+       * sim-n-core.h (sim_core_write_unaligned_N): Add missing break
+       to FORCED_ALIGNMENT case.
+
+Thu Jun  5 13:48:37 1997  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * callback.c (target_to_host_open): Handle hosts with O_BINARY.
+
+Thu Jun  5 08:47:10 1997  Jeffrey A Law  (law@cygnus.com)
+
+       * Make-common.in (libsim.a): Fix typo.
+
+Thu Jun  5 13:48:37 1997  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * nrun.c (main): Verify the structure returned before using it.
+
+Wed Jun  4 11:44:06 1997  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * sim-config.h (WITH_ENGINE): Enable the sim-engine module by
+       default.
+
+       * sim-engine.c (sim_engine_install): New function.  Install the
+       engine init functions.
+       (sim_engine_init): [Re]initialize the simulator engine.
+       
+       * sim-module.c: Add sim_engine to list of modules that always
+       install.
+
+Tue Jun  3 04:52:04 1997  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * sim-watch.c (schedule_watchpoint): Use sim_unschedule_watchpoint
+       to remove the old watchpoint, not delete_watchpoint.
+       (watch_option_handler): Action the correct watchpoint, not just
+       cycles.
+
+Wed May 28 14:47:41 1997  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * sim-n-core.h (sim_core_write_aligned_N): For 8byte reads, output
+       both low and high word.
+       (sim_core_write_aligned_N): Ditto.
+       
+       * sim-trace.c (set_trace_options): Delete code explicitly setting
+       core->trace.
+
+       * sim-options.c (sim_print_help): Call the list commands if not a
+       standalone simulator.
+       (sim_print_help): Advise that some options may not be applicable.
+       
+       * sim-trace.c (set_trace_options): Assume core present.
+
+       * sim-events.c (sim_events_schedule_after_signal): Overflow signal
+       buffer when full not almost full.
+
+Tue May 27 14:32:00 1997  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * sim-events.c (sim_events_process): Don't blat the event queue
+       when processing watchpoints.
+
+       * sim-watch.h: Make arg unsigned long - stop sign extension.
+
+       * sim-events.c (sim_watch_valid): rewrite so debugable.
+
+       * sim-config.h (WITH_XOR_ENDIAN): Default to zero.
+
+       * sim-watch.c (schedule_watchpoint): Add is_within option so that
+       inequality test is possible.
+       (handle_watchpoint): Re-pass is_within arg.
+       (watch_option_handler): When `!' prefix to pc-watchpoint arg pass
+       0 to schedule_watchpoint's is_within arg.
+       (sim_watchpoint_init): Re-pass is_within arg.
+
+       * sim-options.c (sim_print_help): Add is_command argument.  Don't
+       include -- prefix when called from the command line interpreter.
+
+       * sim-watch.c (schedule_watchpoint): Pass true is_within argument.
+
+       * sim-events.c (sim_events_watch_sim): Add is_within argument,
+       zero indicates that the test should be reversed.
+       (sim_events_watch_core): Ditto.
+       (WATCH_CORE): Compare range against is_within.
+       (WATCH_SIM): Ditto.
+
+Tue May 27 12:48:03 1997  Andrew Cagney  <cagney@b2.cygnus.com>
+
+       * sim-events.c (WATCH_CORE): Pass NULL cpu argument to
+       sim_core_read_buffer.  Check nr-bytes transfered.
+
+       * sim-core.h (sim_core_common): Define a new struct that contains
+       the common data.  to sd and cpu structures.
+       * sim-core.c (sim_core_attach): Update.
+       (sim_core_init): Update. Remember to copy initialized data to each
+       cpu.
+       (sim_core_find_mapping): Ditto.
+
+       * sim-core.c (sim_core_read_buffer): Add cpu argument.
+       (sim_core_write_buffer): Ditto.
+
+       * sim-n-core.h (sim_core_read_unaligned_N): When mis-aligned
+       transfer use xor version of read buffer.
+       (sim_core_write_unaligned_N): Ditto for write.
+       
+       * sim-core.c (sim_core_xor_read_buffer): New function implement
+       xor-endian data read breaking transfer up into xor-endian sized
+       blocks.
+       (sim_core_xor_write_buffer): Ditto for write.
+       (reverse_n): Reverse order of arbitrary number of bytes in buffer
+       - needed for xor-endian transfers.
+
+Fri May 23 14:24:31 1997  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * sim-inline.h: Review description.
+       
+       * sim-core.h, sim-core.c: Reduce number of functions being inlined
+       to just those involved in data transfers and configuration.
+       
+       * sim-xcat.h (XSTRING): New macro, map macro definition onto
+       string.
+       * sim-n-core.h (sim_core_read_aligned_N): Use.
+       (sim_core_read_unaligned_N): Ditto.
+       (sim_core_read_unaligned_N): Ditto..
+       (sim_core_write_unaligned_N): Ditto.
+       
+       * sim-core.h: Add xor endian bitmap to main structure.  *
+       
+       sim-n-core.h (sim_core_write_aligned_N): Add suport for xor
+       endian.
+       (sim_core_read_aligned_N): Ditto.
+
+       * sim-core.c (sim_core_set_xor_endian): New function.
+       (sim_core_attach): Don't overwrite the per-cpu xor map when
+       cloning the global core.
+
+Fri May 23 10:53:13 1997  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * sim-engine.h: Update below so that it is using an enumerated
+       type.
+
+Thu May 22 09:12:16 1997  Gavin Koch  <gavin@cygnus.com>
+
+       * sim-engine.c (sim_engine_restart): 
+       * sim-resume.c (sim_resume): Change longjmp param/setjmp 
+       return value used for simulator restart from 0 to 2.
+
+Wed May 21 08:47:30 1997  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * cgen-scache.c (scache_option_handler): Add is_command arg.
+
+       * sim-model.c (model_option_handler): Add is_command argument.
+
+       * sim-profile.c (profile_option_handler): Add is_command arg.
+
+       * sim-events.c (sim_watch_valid): Use ub64, lb64 when 64bit value
+       involved.
+
+       * sim-module.c (sim_module_add_init_fn): Call init fn in the same
+       order that they are registered.
+
+       * sim-options.h (OPTION_HANDLER): Add argument to differentiate
+       between option and command line processing.
+
+       * sim-options.c: Include stdlib.h, ctype.h.
+
+       * Make-common.in (sim-watch.o): Add rule.
+       (sim_main_headers): Assume sim-assert.h included.
+       (sim-*.o): Simplify make rule.
+       
+       * sim-module.c: Add sim_watch_install to module list.
+
+Tue May 20 14:15:23 1997  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * sim-base.h (STATE_LOADED_P): New predicate. Set once everything
+       has been loaded.
+
+       * sim-trace.c (trace_install): Check magic. Include sim-assert.h.
+       * sim-events.c (sim_events_install): Ditto.
+       * sim-core.c (sim_core_install): Ditto.
+       * sim-model.c (model_install): Ditto.
+       * sim-options.c (standard_install): Ditto.
+       * sim-profile.c (profile_install): Ditto.
+       * sim-reason.c (sim_stop_reason): Ditto.
+       * sim-run.c (sim_engine_run): Ditto.
+       * sim-utils.c (sim_analyze_program): Ditto.
+
+       * sim-module.c (modules): Make profile_install and trace_install
+       optional.
+
+       * sim-base.h (STATE_MEM_BASE): Define for flat memory systems.
+
+       * sim-options.c (standard_option_handler): Set the byte order.
+
+       * sim-events.c (sim_events_process): Allow multi tick processing.
+       (sim_events_tickn): New function - multi cycle tick.
+       
+       * sim-events.h (sim_events_tickn, sim_events_timewarp): Add
+       prototypes.  Under development.
+       (sim_events): Replace processing with nr_ticks_to_process.
+
+Tue May 20 09:39:22 1997  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * nrun.c (main): Pass callbacks to sim_open instead of using
+       sim_set_callbacks.
+
+       * run.c (main): Ditto.
+
+Mon May 19 12:07:22 1997  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * sim-events.c (sim_events_zalloc): Signal save memory allocator -
+       stop tk interrupting malloc calls.
+       (sim_events_zalloc): Converse.
+
+       * Make-common.in (sim_main_headers): Add sim-events.h.
+
+       * sim-events.c (sim_events_schedule_after_signal): Change return
+       type to void - signal events are strictly internal.
+       (sim_events_init): Allocate a finite buffer for signal events.
+       (sim_events_schedule_after_signal): Enter signal events into the
+       signal buffer.
+
+       * sim-engine.c (sim_engine_halt): Check SIM_DESC magic.
+       (sim_engine_restart): Ditto.
+       (sim_engine_abort): Ditto.
+       * sim-stop.c (sim_stop): Ditto.
+       (control_c_simulation): Ditto.
+       * sim-resume.c (sim_resume): Ditto.
+       (has_stepped): Ditto.
+       * sim-abort.c (sim_engine_abort): Ditto.
+
+       * sim-basics.h (transfer_type): New type.
+
+       * sim-core.c (sim_core_signal): New function. Print core signal
+       information.
+       (sim_core_find_mapping): Add transfer argument.
+
+       * sim-n-core.h (sim_core_{write,write}_unaligned_N): Call
+       SIM_CORE_SIGNAL if a recoverable abort.
+       * sim-core.c (sim_core_find_mapping): Ditto.
+
+Fri May 16 15:13:21 1997  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * sim-core.c (sim_core_find_mapping): Replace calls to
+       sim_io_error to more resiliant sim_engine_abort.
+
+       * sim-n-core.h (sim_core_read_unaligned_N): Ditto.
+       (sim_core_write_unaligned_N): Ditto.
+
+Tue May 13 13:50:06 1997  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * sim-module.c: Add sim_events_install to list.
+       
+       * sim-events.c (sim_events_install, sim_events_uninstall): Clonse
+       from sim_core_*.
+       (sim_events_init): Now returns SIG_RC.
+
+       * sim-run.c: New file. Generic sim_engine_run.
+       * sim-reason.c: New file. Generic sim_stop_reason.
+       * sim-stop.c: New file. Generic sim_stop.
+       * sim-resume.c: New file. Generic sim_resume.
+       
+       * Make-common.in (sim-engine.o): Add rule.
+       (sim-run.o, sim-reason.o, sim-stop.o, sim-resume.o): Ditto.
+       
+       * sim-engine.h, sim-engine.c: New file. Provide generic
+       implementation of sim_engine_halt, sim_engine_error. et.al.
+
+       * sim-base.h (sim_state_base): Add member halt.
+       (sim-engine.h): Include.
+
+       * sim-events.h (sim_event_handler): Always pass SIM_DESC to event
+       handlers.
+       * sim-events.c (sim_events_poll): Update event handler.
+
+Tue May 13 09:57:49 1997  Andrew Cagney  <cagney@b2.cygnus.com>
+
+       * sim-events.h, sim-events.c (sim_events_watch_clock): New
+       function.
+       (sim_events_watch_sim): New function.
+       (sim_events_watch_core): New function.
+       (sim_watch_valid): New function.
+       (sim_events_preprocess): New function.
+       (sim_events_process): Process the watchpoints as well as the timer
+       queue.
+       (sim_events_tick): Check WORK_PENDING instead of the hold queue.
+       (sim_events_deschedule): Check all the queues when removing an
+       event.
+       (sim_events_init): Ditto for cleaning.
+
+Mon May 19 12:07:22 1997  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * sim-fpu.c (is_ufpu_number): Comment out - currently unused.
+
+Mon May 19 11:23:03 1997  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * callback.c (os_open): Type of arg flags is int.
+
+Fri May 16 22:26:43 1997  Michael Meissner  <meissner@cygnus.com>
+
+       * sim-fpu.c (sim_fpu_is_{eq,ne,lt,le,gt,ge}): Compare Infinities
+       just like normal numbers as per IEEE rules.
+
+Wed May 14 21:20:38 1997  Bob Manson  <manson@charmed.cygnus.com>
+
+       * callback.c (os_close): Mark the descriptor as being
+       available if the close succeeded.
+       (os_open): Pass 0644 as the mode of the file being created.
+
+Thu May 15 10:58:52 1997  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * sim-fpu.c (pack_fpu, unpack_fpu): New functions - decode a
+       float.
+
+       * sim-inline.c (SIM_INLINE_C): Rename from _SIM_INLINE_C_.
+       * sim-lnline.h: Update.
+
+       * sim-fpu.h, sim-fpu.c (sim_fpu_[iu]{32,64}to): New int2fp
+       conversion functions.
+       (sim_fpu_to{32,64}[iu]): New fp2int functions.
+       
+       * sim-fpu.h, sim-fpu.c (sim_fpu_is_{lt,le,eq,ne,ge,gt}): New fp
+       compare functions.  Replacing.
+       (sim_fpu_cmp): This. Delete.
+       
+Mon May 12 14:49:05 1997  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * sim-core.c (sim_core_find_mapping): Call engine_error not
+       sim_io_error when possible.
+
+Mon May 12 08:55:07 1997  Andrew Cagney  <cagney@b2.cygnus.com>
+
+       * sim-endian.h (V1_H2): Add macro's to insert a word into a
+       high/low double word.
+
+       * sim-trace.h: Remove definition of attribute - defined in
+       sim_basics.h.
+
+Mon May 12 08:55:07 1997  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * sim-options.h (struct OPTION): Add doc_opt as the documenting
+       name of the option - or family of options.
+
+       * sim-options.c (sim_args_command): Match command `a-b c' with
+       option `--a-b-c' from option table.
+
+Thu May  8 12:40:07 1997  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * sim-options.c (sim_print_help): For optional arguments, wrap
+       them in [].
+
+       * sim-trace.c (set_trace_options): New function, handle optional
+       argument and multiple assignment.
+       (trace_option_handler): Update.
+
+       * sim-trace.c (trace_option_handler): Trace branch and not fpu
+       when branch tracing selected.
+
+Wed May  7 15:19:58 1997  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       * sim-trace.c (trace_one_insn): Make a va-args function.
+
+       * sim-trace.c (trace_vprintf): New function, va-arg version of
+       trace_printf.
+
+Tue May  6 16:38:16 1997  Doug Evans  <dje@canuck.cygnus.com>
+
+       * sim-trace.c (trace_uninstall): Don't close a file twice.
+       * sim-profile.c (profile_uninstall): Likewise.
+
+Tue May  6 06:14:01 1997  Mike Meissner  <meissner@cygnus.com>
+
+       * sim-trace.c (toplevel): Include bfd.h.
+       (trace_options): Note that --trace-linenum also turns on
+       --trace-insn.  Add --trace-{branch,semantics}.
+       (trace_option_handler): If --trace-linenum, also turn on
+       --trace-insn.  Add --trace-branch support.  If --trace-semantics,
+       turn on ALU, FPU, branch, and memory tracing.
+       (trace_one_insn): New function to trace an instruction.  Support
+       --trace-linenum.
+       (OPTION_TRACE_*): Use an enum, rather than lots of defines.
+
+       * sim-trace.h (TRACE_{SEMANTICS,BRANCH}_IDX): Add new macros.
+       (MAX_TRACE_VALUES): Use 32, not 12 by default.
+       (TRACE_branch): Add new mask.
+       (TRACE_*_P): Define all possible trace_p macros.
+       (trace_one_insn): Declare function.
+
 Mon May  5 14:08:34 1997  Mike Meissner  <meissner@cygnus.com>
 
        * sim-trace.h (__attribute__): Define as nothing if not GNU C or
This page took 0.037662 seconds and 4 git commands to generate.