+Tue Oct 28 12:29:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * sim-bits.h: Document ROTn macro.
+
+ * sim-endian.h (H2T): Handle 16 byte variables.
+
+ * sim-n-core.h (sim_core_read_unaligned_N): Return a dummy when an
+ error.
+
+ * sim-core.c: Do not generate sim_core_*_word.
+
+ * sim-n-core.h (sim_core_trace_N): Add line_nr argument.
+ (sim_core_write_aligned_N, sim_core_read_aligned_N): Update.
+
+ * sim-core.h (sim_core_read_unaligned_word,
+ sim_core_read_aligned_word, sim_core_read_word,
+ sim_core_write_unaligned_word, sim_core_write_aligned_word,
+ sim_core_write_word): Change to macros that map onto sim_core_*_N.
+
+Mon Oct 27 11:25:10 1997 Doug Evans <devans@canuck.cygnus.com>
+
+ * sim-n-endian.h: Add TAGS entrys for 16 byte versions.
+
+ * sim-endian.h: Disable 16 byte support.
+
+Mon Oct 27 12:00:48 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * sim-endian.c (_SWAP_16): Define. Generate 126 bit swap code.
+
+ * sim-n-core.h (sim_core_trace_N): New function.
+ (sim_core_read_aligned_N, sim_core_write_aligned_N): Use,
+ (sim_core_read_unaligned_N): Do not retyrn bogus value wden error.
+
+ * sim-endian.h: Add 128 bit variant.
+
+ * sim-core.h, sim-core.c: Add 128 bit variant.
+
+ * sim-types.h: Add signed128 and unsigned128 types using a struct.
+
+Fri Oct 24 11:33:07 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * sim-events.c (sim_events_process): Clear events->work_pending.
+ (sim_events_tickn, sim_events_tick): Accumulate, instead of
+ setting, nr_ticks_to_process.
+ (sim_events_preprocess): Allow nr_ticks_to_process to be non-zero
+ when the event queue isn't next.
+
+ * sim-events.h, sim-events.c (sim_events_slip): New function.
+
+Wed Oct 22 14:18:38 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * sim-hload.c (sim_load): Pass lma_p==0 and do_load=sim_load.
+
+ * sim-utils.h, sim-load.c (sim_load_file): Add lma_p and do_load
+ arguments.
+
+Tue Oct 21 18:37:57 1997 Doug Evans <devans@canuck.cygnus.com>
+
+ * nrun.c (main): Remove useless test of name != NULL.
+ Exit if bfd_openr fails. Call bfd_check_format after bfd_openr.
+
+Tue Oct 21 10:42:38 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * sim-fpu.c (EXPMAX): Type is unsigned.
+ (MIN_INT, MAX_INT): Type is signed64.
+ (i2fpu): Type of val is signed64.
+
+Tue Oct 21 10:42:38 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * sim-profile.h (PROFILE_PC_BUCKET_SIZE): Treat a shift of zero as
+ a bucket size of zero.
+
+ * sim-profile.c (OPTION_PROFILE_PC_GRANULARITY,
+ OPTION_PROFILE_PC): Define.
+ (profile_option_handler): Add support for --profile-pc and
+ --profile-pc-granularity options.
+ (profile_pc_init): When possible, compute nr buckets from bucket
+ size.
+
+ * sim-profile.c (profile_pc_init): Align the profile-pc end
+ address with the profile-pc bucket size.
+
+ * sim-profile.h (PROFILE_PC_NR_BUCKETS): Rename PROFILE_PC_SIZE to
+ something less ambiguous.
+ (PROFILE_PC_BUCKET_SIZE): Ditto for PROFILE_PC_SAMPLE_SIZE.
+
+ * sim-profile.c (profile_pc_cleanup): New function. Move
+ profile_pc_uninstall code to here.
+ (profile_pc_uninstall): Call.
+ (profile_pc_init): Call.
+
+Mon Oct 20 17:23:58 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * sim-profile.c (profile_print_pc): Dump pc profile to dmon.out
+ file using BSD gprof format.
+
+ * sim-bits.h (LSBIT, MSBIT, BIT): Force result to type
+ unsigned_word.
+ (LSBIT8, LSBIT16, LSBIT32, LSBIT64, MSBIT8, MSBIT16, MSBIT32,
+ MSBIT64): Force result to unsignedN.
+
+Thu Oct 16 11:38:56 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * sim-alu.h (ALU16_BEGIN, ALU32_BEGIN, ALU64_BEGIN): Drop opening
+ brace from macro.
+ (ALU8_BEGIN, ALU8_SET, ALU8_ADD, ALU8_SUB, ALU8_NEGATE): Define.
+ (ALU16_ADD, ALU16_SUB, ALU16_NEGATE): Simplify arrithmetic.
+ (ALU32_ADD, ALU32_SUB, ALU32_NEGATE): Simplify arrithmetic.
+ (ALU64_ADD, ALU64_SUB, ALU64_NEGATE): Simplify arrithmetic.
+
+Wed Oct 15 09:24:19 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * sim-core.h (struct _sim_core_mapping): Change free_buffer to
+ type void*.
+
+ * sim-core.c (sim_core_uninstall, new_sim_core_mapping,
+ sim_core_map_attach, sim_core_map_detach): Change free_buffer to
+ type void*.
+ (sim_core_attach): Rename buffer_freed to free_buffer, type
+ void*. Ensure that allocated buffer is alligned according to
+ region's address.
+
+Mon Oct 13 11:34:50 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * sim-alu.h (ALU64_HAD_OVERFLOW): Define.
+ (ALU64_SUB): Define.
+
+ * Make-common.in (all): Build SIM_EXTRA_ALL first.
+ (.gdbinit): Remove dependencies, generate once per build.
+
+Tue Oct 14 19:20:09 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * sim-n-core.h (sim_core_read_aligned_N,
+ sim_core_write_aligned_N): Make xaddr param type address_word not
+ unsigned_word.
+
+Fri Oct 3 09:49:18 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * sim-fpu.h, sim-fpu.c: Rewrite. Change sim_fpu object to an
+ unpacked floating point struct. Pass sim_fpu object by reference.
+ Add preliminary support for rounding modes.
+
+Fri Oct 3 09:28:00 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * configure: Regenerated to track ../common/aclocal.m4 changes.
+
+Thu Oct 2 19:43:52 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * aclocal.m4 (sim-bitsize): Fix typo, WITH_TARGET_WORD_BITSIZE not
+ WITH_TARGET_BITSIZE.
+
+Thu Sep 25 23:20:20 1997 Felix Lee <flee@yin.cygnus.com>
+
+ * sim-profile.c (profile_print_core): label needs empty statement.
+
+Thu Sep 25 11:20:47 1997 Stu Grossman <grossman@babylon-5.cygnus.com>
+
+ * sim-break.c (sim_set_breakpoint sim_clear_breakpoint): Use ZALLOC
+ and zfree instead of xmalloc and free. Prevents warnings.
+
+Wed Sep 24 17:38:57 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * configure: Regenerated to track ../common/aclocal.m4 changes.
+
+Wed Sep 24 17:23:31 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * Make-common.in (SIM_BITSIZE): Assign from configured value.
+ (CONFIG_CFLAGS): Add SIM_BITSIZE.
+
+ * aclocal.m4 (--enable-sim-bitsize): Developer option for
+ controling the bitsize/msb of the target.
+
+Wed Sep 24 17:41:40 1997 Stu Grossman <grossman@babylon-5.cygnus.com>
+
+ * Make-common.in: New files sim-break.c, sim-break.h.
+ * sim-base.h: Add point to breakpoint list to sim_state_base.
+ * sim-break.c sim-break.h: New modules that implement intrinsic
+ breakpoint support.
+ * sim-module.c: Add breakpoint module.
+
+Tue Sep 23 00:26:39 1997 Felix Lee <flee@yin.cygnus.com>
+
+ * sim-events.c (SIM_EVENTS_POLL_RATE): poll more often than once
+ an hour.
+ * sim-n-core.h (WITH_XOR_ENDIAN): MSVC barfs on
+ if (0) { 1 % 0; }
+ * sim-core.c (sim_core_xor_write_buffer): WITH_XOR_ENDIAN + 1.
+ (SIGBUS) define for Windows.
+ * sim-trace.c (trace_printf,debug_printf): added ALMOST_STDC.
+ * sim-resume.c: define SIGTRAP for windows.
+ * sim-xcat.h: use token pasting if ALMOST_STDC.
+
+Tue Sep 23 11:04:38 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * Make-common.in (SIM_SCACHE, SIM_DEFAULT_MODEL): Assign
+ configured values.
+ (CONFIG_CFLAGS): Add same.
+
+Mon Sep 22 17:20:27 1997 Felix Lee <flee@cygnus.com>
+
+ * sim-types.h (SIGNED64): ##i64 when _MSC_VER, not _WIN32.
+ (SIGNED32): use ##i32.
+
+Tue Sep 23 11:04:38 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * configure: Regenerated to track ../common/aclocal.m4 changes.
+
+Tue Sep 23 10:07:47 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * aclocal.m4 (sim-endian): Simplify logic determining [default]
+ endian of target.
+
+ * Make-common.in (SIM_WARNINGS, SIM_ALIGNMENT, SIM_ENDIAN,
+ SIM_HOSTENDIAN, SIM_RESERVED_BITS, SIM_ASSERT, SIM_FLOAT,
+ SIM_HARDWARE, SIM_INLINE, SIM_PACKAGES, SIM_REGPARM, SIM_SMP,
+ SIM_STDCALL, SIM_XOR_ENDIAN): Assign configured values.
+ (CONFIG_CFLAGS): Add same.
+
+ * aclocal.m4: Perform AC_SUBST on optional options.
+
+Mon Sep 22 11:46:20 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * sim-config.h (WITH_DEFAULT_ALIGNMENT): Don't hardwire any alignment.
+
+ * sim-options.c (standard_option_handler): Typo in warning message.
+
+ * sim-base.h (STATE_MODEL): Make conditional on SIM_HAVE_MODEL.
+
+ * sim-profile.c (profile_print_insn): Check 0 .. MAX_INSN for any
+ insn count. Make count conditional on there being a valid
+ INSN_NAME.
+ (profile_pc_init): Make default PC profile frequency an arbitrary
+ 256.
+
+ * sim-base.h: Ditto.
+
+ * sim-profile.h (WITH_PROFILE_MODEL_P): Only enable modeling when
+ SIM_HAVE_MODEL.
+
+ * sim-model.h (struct MACH): Depreciate, to be replaced by bfd
+ archure struct.
+
+Mon Sep 22 11:46:20 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * configure: Regenerated to track ../common/aclocal.m4 changes.
+
+Mon Sep 22 11:45:00 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * aclocal.m4 (sim_alignment): Simplify logic for selecting the
+ configured alignment.
+
+Fri Sep 19 17:45:25 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * configure: Regenerated to track ../common/aclocal.m4 changes.
+
+Fri Sep 19 17:26:14 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * sim-config.c (sim_config): Check for default alignment.
+
+ * sim-options.c (standard_option_handler): Add alignment option.
+
+ * aclocal.m4 (sim_alignment): Allow configuration of hardwired and
+ default alignment requirements on memory accesses.
+
+Fri Sep 19 11:51:35 1997 Jeffrey A Law (law@cygnus.com)
+
+ * sim-load.c (sim_load_file): Return failure if the executable
+ had no loadable sections.
+
+Wed Sep 17 13:33:28 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * sim-events.c (ETRACE): Use trace_printf not sim_io_printf for
+ trace output.
+
+ * sim-core.c (sim_core_signal): When bad access halt simulator
+ SIGSEGV / SIGBUS instead of aborting.
+ (signal.h): Include.
+
+ * sim-watch.c (sim_watchpoint_install): Handler for watchpoint
+ options was missing.
+
+ * sim-bits.h (MOVED): Define
+
+Wed Sep 17 10:33:28 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * sim-alu.h (ALU32_HAD_OVERFLOW): Pacify GCC, Use MSBIT instead of
+ BIT.
+
+ * sim-bits.h (LSBIT, MSBIT): Check for overflow of shift value.
+
+ * sim-bits.c: Add 8 bit versions of bit macros.
+
+ * sim-bits.h: Ditto.
+
+Tue Sep 16 16:15:16 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * sim-bits.c (LSSEXT, MSSEXT): Replace SEXT.
+ (LSINSERTED, MSINSERTED): Ditto for INSERTED.
+
+ * sim-n-bits.h (MSSEXTn, LSSEXTn): Replace SEXTn.
+ (LSINSERTDn, MSINSERTEDN): Ditto for INSERTEDn.
+
+ * sim-bits.h (SEXT*): Define as MSEXT/LSEXT.
+ (INSERTED*): Ditto for LSINSERTED/MSINSERTED.
+
+Mon Sep 15 17:36:15 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * aclocal.m4 (SIM_AC_COMMON): Add optional config.h file argument.
+ configure.in: Output to cconfig.h instead of config.h.
+
+ * configure: Regenerated to track ../common/aclocal.m4 changes.
+
+Mon Sep 15 15:39:28 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * sim-utils.c (sim_analyze_program): Set STATE_ARCHITECTURE from
+ BFD if known.
+
+Tue Sep 9 21:46:46 1997 Felix Lee <flee@cygnus.com>
+
+ * callback.c (os_write): divert stdout and stderr to their
+ respective hooks.
+
+Thu Sep 11 10:08:48 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * sim-profile.c (profile_print_speed): Call
+ sim_events_elapsed_time instead of PROFILE_EXEC_TIME for moment.
+
+ * sim-events.c (sim_events_elapsed_time): New function return nr
+ host MS consumed by the simulator.
+ (sim_watch_valid): Use.
+
+ * sim-module.c (modules): Install sim_events very very early.
+
+ * sim-profile.c (profile_print): Call profile_print_pc.
+ (print_bar):
+ (profile_pc_init): New function, set up processor for PC
+ profiling.
+ (profile_print_pc): New function, print a PC profile.
+ (profile_pc_event): New function, sample PC.
+
+ * sim-profile.h (PROFILE_PC_COUNT, PROFILE_PC_START,
+ PROFILE_PC_END, PROFILE_PC_SHIFT, PROFILE_PC_SAMPLE_SIZE): Add to
+ profile struct.
+
+ * sim-options.c (sim_print_help): Pacify GCC.
+
+ * sim-n-core.h (sim_core_read_aligned_N,
+ sim_core_write_aligned_N): Add un-conditional profile call.
+ (sim_core_read_unaligned_N, sim_core_write_unaligned_N): Add
+ profile call when aligned read/write isn't used.
+
+ * sim-base.h: Include sim-profile, sim-model after sim-core &
+ sim-events allow sim-core to define useful values.
+
+ * sim-profile.c (OPTION_PROFILE_CORE): Define.
+ (profile_option_handler, profile_options): Add support for
+ --profile-core option.
+ (print_bar): Include when core profiling.
+ (profile_print_core): New function, print core profile.
+
+ * sim-config.c (print_sim_config): Print profile status.
+
+ * sim-profile.h (PROFILE_NEXT_IDX, PROFILE_core,
+ WITH_PROFILE_PC_P): Define.
+ (PROFILE_CORE_COUNT): Count each core-map/size separatly.
+ (PROFILE_COUNT_CORE): Define.
+
+Thu Sep 11 08:44:52 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * sim-watch.c (handle_watchpoint): Pass a char** index into the
+ interrupt_names array as the data.
+ (sim-watch.h): Document.
+
+Wed Sep 10 16:15:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * sim-options.c (sim_print_help): When the doc string is to long
+ word wrap it.
+
+ * sim-watch.c (sim_watchpoint_install): Use option.doc_name so
+ that only the first few the watch options are listed. Generate
+ meanginful usage messages.
+
+ * sim-options.h (struct OPTION): Clarify use of doc_name field
+
+Wed Sep 10 13:23:24 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * sim-options.c (OPTION_ARCHITECTURE_INFO): New option.
+ (standard_option_handler): Handle --architecture-info.
+
+Tue Sep 9 21:46:46 1997 Felix Lee <flee@cygnus.com>
+
+ * sim-core.h (sim_cpu_core): [WITH_XOR_ENDIAN + 1], to avoid
+ illegal zero-sized array.
+ * sim-core.c (sim_core_xor_read_buffer): same.
+
+Tue Sep 9 11:20:35 1997 Doug Evans <dje@canuck.cygnus.com>
+
+ * nltvals.def: Regenerate.
+
+Tue Sep 9 02:10:36 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * sim-fpu.c (DP_FRACHIGH2): Define LL using SIGNED64.
+
+Mon Sep 8 12:22:20 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * sim-bits.c (MASKED): Delete.
+ (EXTRACTED): Delete.
+ (LSEXTRACTED, MSEXTRACTED): New functions.
+
+ * sim-n-bits.h (MASKEDn): Delete, define as MSMASKED or LSMASKED.
+ (MSMASKEDn, LSMASKEDn): Add last argument.
+ (MSMASK*): Ditto.
+
+ * sim-bits.h (EXTEND8, EXTEND16): Define.
+ (EXTRACTED64): Define as 64 bit extract, not 32 bit.
+
+ * sim-run.c (sim_engine_run): Use CPU_CIA macro.
+
+ * sim-engine.h (SIM_ENGINE_HALT_HOOK): Use CPU_CIA to get at
+ current instruction address.
+
+ * sim-inline.h (*_ENGINE): Define.
+
+Fri Sep 5 08:39:02 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * sim-core.c (sim_core_attach): Fix checks of modulo/mask.
+
+ * sim-watch.c (delete_watchpoint): Delete by ident and type.
+ (watch_option_handler): Call delete_watchpoint with ident or type.
+ (sim_watchpoint_install): Create interrupt specific watchpoint
+ commands on the fly.
+ (do_watchpoint_create): New function, create a watch point using
+ type/int-nr info encoded in the option nr.
+ (do_watchpoint_info): New function. List active watchpoints.
+
+ * sim-watch.h: Change data structure to a list.
+
+ * sim-memopt.c (memory_option_handler): Require explicit "all"
+ before deleting all memory regions.
+
+ * sim-utils.c (sim_do_commandf): New function, printf version of
+ sim_do_command.
+
+ * sim-basics.h (asprintf, vasprintf): Hack, define for CYGWIN32.
+
+ * sim-alu.h (ALU64_ADD): Use explicit MSEXTRACTED64, do not assume
+ bit endianness.
+ (SIGNED64, UNSIGNED64): Delete.
+ (ALU64_ADD): Don't rely on bit endianness.
+ (ALU64_BEGIN): Define.
+
+ * sim-n-bits.h (MSEXTRACTEDn, LSEXTRACTED): New functions.
+ (EXTRACTEDn): Delete, define as either LSEXTRACTED or MSEXTRACTED.
+
+ * sim-types.h (SIGNED64, UNSIGNED64): New macros, attach relevant
+ suffix - u64, LL - to 64 bit constants.
+
+Thu Sep 4 09:27:54 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * sim-config.c (sim_config): Add assert for SIM_MAGIC_NUMBER.
+
+ * sim-utils.h (NZALLOC): Define - zalloc * N.
+
+ * sim-hrw.c (sim_read, sim_write): New file. Provide generic
+ implementation of read/write functions.
+
+ * Make-common.in (sim-hrw.o): New target.
+
+ * sim-base.h (STATE_MEMOPT_P): Delete, simulators _always_ add
+ memory.
+
+ * sim-memopt.c (memory_option_handler): Implement memory-size
+ command. Implement memory-alias command. Let memory-delete delete
+ all memory regions.
+ (add_memopt): New function. Add a memory region.
+ (do_memopt_delete): New function. Delete a memory region.
+
+ * sim-utils.c (sim_elapsed_time_get): Never return zero.
+
+ * sim-core.c (sim_core_detach): New function.
+ (sim_core_map_detach): New function. Perform the actual detach.
+ (sim_core_init): Move initialization code from here.
+ (sim_core_install): To here.
+ (sim_core_uninstall): And here.
+
+ * sim-module.c: Add memopt module.
+
+ * sim-base.h (STATE_MEMOPT, STATE_MEMOPT_P): Add memopt to
+ simulator base type.
+
+ * Make-common.in (sim_main_headers): Add sim-memopt.h
+ (sim-memopt.o): New target.
+
+ * sim-core.c (sim_core_install): Add core_options to the option
+ table.
+
+ * sim-watch.c (watch_options): Make --delete-watch a synonym for
+ --watch-delete.
+
+ * sim-config.h (WITH_MODULO_MEMORY): Define as 0. Update
+ comments.
+
+ * sim-core.h (struct _sim_core_mapping): Change nr_bytes to type
+ address_word, add mask member.
+
+ * sim-core.h, sim-core.c (sim_core_attach): Make nr_bytes of type
+ address_word, allow for 64bit targets in 32bit host. Add modulo
+ argument.
+ (sim_core_map_attach): Ditto.
+ (new_sim_core_mapping): Ditto.
+ (sim_core_translate): Mask address when modulo memory.
+
+Wed Sep 3 17:32:54 1997 Doug Evans <dje@seba.cygnus.com>
+
+ * sim-hload.c (sim_load): Add assert for SIM_MAGIC_NUMBER.
+
+ * gdbinit.in: New file.
+ * aclocal.m4 (SIM_AC_OUTPUT): Build .gdbinit.
+ * Make-common.in (distclean): Delete .gdbinit.
+ (.gdbinit): Add rule for.
+ * configure: Regenerated to track ../common/aclocal.m4 changes.
+
+ * Make-common.in (cgen-run.o): Add rule for.
+
+Wed Sep 3 10:08:21 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * sim-resume.c (sim_resume): Suspend/resume the simulator.
+
+ * sim-events.c (sim_watch_valid): Compute total elapsed time from
+ both resumed and previous elapsed time.
+ (sim_events_init): Set initial_wallclock and current_wallclock to
+ zero.
+ (sim_events_install): Install sim_events_suspend and
+ sim_events_resume.
+ (sim_events_watch_clock): Allow for suspended simulator when
+ computing the time of the clock event.
+
+ * sim-events.h (struct _sim_event): Add resume_wallclock, rename
+ initial_wallclock to elapsed_wallclock, set both to zero.
+ (sim_events_init, sim_events_uninstall): Delete prototypes.
+
+ * sim-module.h (MODULE_SUSPEND_FN, MODULE_RESUME_FN): Define types.
+
+ * sim-module.c(sim_module_resume, sim_module_suspend): New
+ functions.
+
+Wed Sep 3 10:08:21 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * sim-core.c (sim_core_map_attach): Clarify memory overlap error
+ message.
+
+Tue Sep 2 14:57:06 1997 Doug Evans <dje@canuck.cygnus.com>
+
+ * Makefile.in (TAGS): Add support for "/* TAGS: foo */" marker.
+ * Make-common.in (TAGS): Likewise.
+ * sim-n-bits.h: Add TAGS comments for all functions.
+ * sim-n-core.h: Likewise.
+ * sim-n-endian.h: Likewise.
+
+Mon Sep 1 10:50:11 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * sim-utils.c (sim_state_alloc): Set CPU backlinks, callback and
+ kind.
+
+ * sim-base.h (sim_state_alloc): Add callback and kind arguments.
+
+ * sim-base.h (INVALID_INSTRUCTION_ADDRESS): Add default
+ definition.
+
+Sat Aug 30 09:47:21 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * sim-fpu.c (DP_GARDMSB, ...): Make unsigned.
+ (DP_FRACHIGH, DP_FRACHIGH2, ..): Use MSMASK to avoid LL.
+
+Fri Aug 29 13:37:44 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * sim-core.c (sim_core_map_attach): Cast attach enum to int.
+ (sim_core_xor_read_buffer, sim_core_xor_write_buffer): Make
+ nr_transfered and nr_this_transfer unsigned.
+
+ * sim-events.c (sim_events_tickn): N is signed, as limited to
+ MAXINT.
+
+ * sim-n-endian.h (offset_N): Change size to unsigned.
+
+ * callback.c (os_poll_quit): Add prototypes for kbhit and getkey.
+
+Fri Aug 29 10:10:53 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * sim-utils.c (sim_copy_argv): Delete, replaced by dupargv.
+
+ * sim-options.c (sim_parse_args): Use dupargv.
+
+Thu Aug 28 10:36:34 1997 Doug Evans <dje@canuck.cygnus.com>
+
+ * sim-options.c (standard_option_handler): Use xstrdup, not strdup.
+
+Thu Aug 28 12:09:15 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * sim-base.h (STATE_ARCHITECTURE, STATE_TARGET): Add to simulator
+ base type.
+
+ * sim-options.c (standard_options): Add --architecture=MACHINE and
+ --target=TARGET options.
+ (OPTION_ARCHITECTURE, OPTION_TARGET): Define.
+ (standard_option_handler): Handle architecture and target options.
+ (bfd.h): Include.
+
+ * sim-utils.c (sim_analyze_program): Pass STATE_TARGET to
+ bfd_openr.
+ (sim_analyze_program): Set prog_bfd architecture from
+ STATE_ARCHITECTURE if known.
+
+Wed Aug 27 18:13:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * configure: Regenerated to track ../common/aclocal.m4 changes.
+ * config.in: Ditto.
+
+Wed Aug 27 18:11:30 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * aclocal.m4 (enable-sim-warnings): Remove comment stating
+ that option does not apply to certain files.
+
+Wed Aug 27 15:13:04 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * sim-bits.h (LSBIT8, LSBIT16, LSBIT32, LSBIT64, LSBIT, MSBIT8,
+ MSBIT16, MSBIT32, MSBIT64, MSBIT): New macros - single bit as
+ offset from MSB/LSB.
+
+ * sim-endian.h (A1_8, A2_8, A4_8, A1_4, A2_4, A1_2): New macro,
+ access address of sub word quantity of a hosts 16, 32, 64 bit word
+ type.
+ (V1_2, V1_4, V2_4, V1_8, V2_8, V4_8): Ditto for values.
+ (U8_1, U8_2, U8_4, U4_1, U4_2, U2_1): Ditto for set of values.
+ (V2_H1, V2_L1, V4_H2, V4_L2, V8_L4, V8_H4): Given N byte argument,
+ return N*2 byte value with argument in Hi/Lo word. Renamed from
+ V1_H2, V1_L2, V2_H4, V2_L4, V4_H8, V4_L8.
+
+ * sim-alu.h (ALU32_HAD_OVERFLOW): Use 64 bit mask not 32bit.
+ (ALU16_HAD_CARRY, ALU32_HAD_CARRY, ALU16_HAD_OVERFLOW): Use MSBIT
+ so that bit offset is explicit.
+
+Wed Aug 27 11:55:35 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * sim-utils.c (sim_analyze_program): Add prog_name argument.
+ Update STATE_PROG_BFD when needed with a dup'd copy of the
+ program.
+
+ * sim-config.c (sim_config): Delete ABFD argument, use
+ STATE_PROG_BFD directly.
+
+Tue Aug 26 12:55:26 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * run.c (main): Pass the open ABFD to sim_create_inferior.
+
+ * nrun.c (main): Determine prog_bfd. Pass to sim_create_inferior
+ and sim_load.
+ (bfd.h): Include.
+
+ * sim-hload.c (sim_load): New file. Implement generic sim_load for
+ hardware only simulator targets.
+
+ * Make-common.in (sim-hload.o): Add rule.
+
+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