+Mon Dec 30 17:36:06 1996 Ian Lance Taylor <ian@cygnus.com>
+
+ * interp.c (store_word, load_word): New static functions.
+ (mips16_entry): New static function.
+ (SignalException): Look for mips16 entry and exit instructions.
+ (simulate): Use the correct index when setting fpr_state after
+ doing a pending move.
+
+Sun Dec 29 09:37:18 1996 Mark Alexander <marka@cygnus.com>
+
+ * interp.c: Fix byte-swapping code throughout to work on
+ both little- and big-endian hosts.
+
+Sun Dec 29 09:18:32 1996 Mark Alexander <marka@cygnus.com>
+
+ * support.h: Make definitions of SIGTRAP and SIGQUIT consistent
+ with gdb/config/i386/xm-windows.h.
+
+Fri Dec 27 22:48:51 1996 Mark Alexander <marka@cygnus.com>
+
+ * gencode.c (build_instruction): Work around MSVC++ code gen bug
+ that messes up arithmetic shifts.
+
+Fri Dec 20 11:04:05 1996 Stu Grossman (grossman@critters.cygnus.com)
+
+ * support.h: Use _WIN32 instead of __WIN32__. Also add defs for
+ SIGTRAP and SIGQUIT for _WIN32.
+
+Thu Dec 19 14:07:27 1996 Ian Lance Taylor <ian@cygnus.com>
+
+ * gencode.c (build_instruction) [MUL]: Cast operands to word64, to
+ force a 64 bit multiplication.
+ (build_instruction) [OR]: In mips16 mode, don't do anything if the
+ destination register is 0, since that is the default mips16 nop
+ instruction.
+
+Mon Dec 16 14:59:38 1996 Ian Lance Taylor <ian@cygnus.com>
+
+ * gencode.c (MIPS16_DECODE): SWRASP is I8, not RI.
+ (build_endian_shift): Don't check proc64.
+ (build_instruction): Always set memval to uword64. Cast op2 to
+ uword64 when shifting it left in memory instructions. Always use
+ the same code for stores--don't special case proc64.
+
+ * gencode.c (build_mips16_operands): Fix base PC value for PC
+ relative operands.
+ (build_instruction): Call JALDELAYSLOT rather than DELAYSLOT for a
+ jal instruction.
+ * interp.c (simJALDELAYSLOT): Define.
+ (JALDELAYSLOT): Define.
+ (INDELAYSLOT, INJALDELAYSLOT): Define.
+ (simulate): Clear simJALDELAYSLOT when simDELAYSLOT is cleared.
+
+Tue Dec 24 22:11:20 1996 Angela Marie Thomas (angela@cygnus.com)
+
+ * interp.c (sim_open): add flush_cache as a PMON routine
+ (sim_monitor): handle flush_cache by ignoring it
+
+Wed Dec 11 13:53:51 1996 Jim Wilson <wilson@cygnus.com>
+
+ * gencode.c (build_instruction): Use !ByteSwapMem instead of
+ BigEndianMem.
+ * interp.c (CONFIG, config_EP_{mask,shift,D,DxxDxx, config_BE): Delete.
+ (BigEndianMem): Rename to ByteSwapMem and change sense.
+ (BigEndianCPU, sim_write, LoadMemory, StoreMemory): Change
+ BigEndianMem references to !ByteSwapMem.
+ (set_endianness): New function, with prototype.
+ (sim_open): Call set_endianness.
+ (sim_info): Use simBE instead of BigEndianMem.
+ (xfer_direct_word, xfer_direct_long, swap_direct_word,
+ swap_direct_long, xfer_big_word, xfer_big_long, xfer_little_word,
+ xfer_little_long, swap_word, swap_long): Delete unnecessary MSC_VER
+ ifdefs, keeping the prototype declaration.
+ (swap_word): Rewrite correctly.
+ (ColdReset): Delete references to CONFIG. Delete endianness related
+ code; moved to set_endianness.
+
+Tue Dec 10 11:32:04 1996 Jim Wilson <wilson@cygnus.com>
+
+ * gencode.c (build_instruction, case JUMP): Truncate PC to 32 bits.
+ * interp.c (CHECKHILO): Define away.
+ (simSIGINT): New macro.
+ (membank_size): Increase from 1MB to 2MB.
+ (control_c): New function.
+ (sim_resume): Rename parameter signal to signal_number. Add local
+ variable prev. Call signal before and after simulate.
+ (sim_stop_reason): Add simSIGINT support.
+ (sim_warning, sim_error, dotrace, SignalException): Define as stdarg
+ functions always.
+ (sim_warning): Delete call to SignalException. Do call printf_filtered
+ if logfh is NULL.
+ (AddressTranslation): Add #ifdef DEBUG around debugging message and
+ a call to sim_warning.
+
+Wed Nov 27 11:53:50 1996 Ian Lance Taylor <ian@cygnus.com>
+
+ * gencode.c (process_instructions): If ! proc64, skip DOUBLEWORD
+ 16 bit instructions.
+
+Tue Nov 26 11:53:12 1996 Ian Lance Taylor <ian@cygnus.com>
+
+ Add support for mips16 (16 bit MIPS implementation):
+ * gencode.c (inst_type): Add mips16 instruction encoding types.
+ (GETDATASIZEINSN): Define.
+ (MIPS_DECODE): Add REG flag to dsllv, dsrav, and dsrlv. Add
+ jalx. Add LEFT flag to mfhi and mflo. Add RIGHT flag to mthi and
+ mtlo.
+ (MIPS16_DECODE): New table, for mips16 instructions.
+ (bitmap_val): New static function.
+ (struct mips16_op): Define.
+ (mips16_op_table): New table, for mips16 operands.
+ (build_mips16_operands): New static function.
+ (process_instructions): If PC is odd, decode a mips16
+ instruction. Break out instruction handling into new
+ build_instruction function.
+ (build_instruction): New static function, broken out of
+ process_instructions. Check modifiers rather than flags for SHIFT
+ bit count and m[ft]{hi,lo} direction.
+ (usage): Pass program name to fprintf.
+ (main): Remove unused variable this_option_optind. Change
+ ``*loptarg++'' to ``loptarg++''.
+ (my_strtoul): Parenthesize && within ||.
+ * interp.c (LoadMemory): Accept a halfword pAddr if vAddr is odd.
+ (simulate): If PC is odd, fetch a 16 bit instruction, and
+ increment PC by 2 rather than 4.
+ * configure.in: Add case for mips16*-*-*.
+ * configure: Rebuild.
+
+Fri Nov 22 08:49:36 1996 Mark Alexander <marka@cygnus.com>
+
+ * interp.c: Allow -t to enable tracing in standalone simulator.
+ Fix garbage output in trace file and error messages.
+
+Wed Nov 20 01:54:37 1996 Doug Evans <dje@canuck.cygnus.com>
+
+ * Makefile.in: Delete stuff moved to ../common/Make-common.in.
+ (SIM_{OBJS,EXTRA_CFLAGS,EXTRA_CLEAN}): Define.
+ * configure.in: Simplify using macros in ../common/aclocal.m4.
+ * configure: Regenerated.
+ * tconfig.in: New file.
+
+Tue Nov 12 13:34:00 1996 Dawn Perchik <dawn@cygnus.com>
+
+ * interp.c: Fix bugs in 64-bit port.
+ Use ansi function declarations for msvc compiler.
+ Initialize and test file pointer in trace code.
+ Prevent duplicate definition of LAST_EMED_REGNUM.
+
+Tue Oct 15 11:07:06 1996 Mark Alexander <marka@cygnus.com>
+
+ * interp.c (xfer_big_long): Prevent unwanted sign extension.
+
+Thu Sep 26 17:35:00 1996 James G. Smith <jsmith@cygnus.co.uk>
+
+ * interp.c (SignalException): Check for explicit terminating
+ breakpoint value.
+ * gencode.c: Pass instruction value through SignalException()
+ calls for Trap, Breakpoint and Syscall.
+
+Thu Sep 26 11:35:17 1996 James G. Smith <jsmith@cygnus.co.uk>
+
+ * interp.c (SquareRoot): Add HAVE_SQRT check to ensure sqrt() is
+ only used on those hosts that provide it.
+ * configure.in: Add sqrt() to list of functions to be checked for.
+ * config.in: Re-generated.
+ * configure: Re-generated.
+
+Fri Sep 20 15:47:12 1996 Ian Lance Taylor <ian@cygnus.com>
+
+ * gencode.c (process_instructions): Call build_endian_shift when
+ expanding STORE RIGHT, to fix swr.
+ * support.h (SIGNEXTEND): If the sign bit is not set, explicitly
+ clear the high bits.
+ * interp.c (Convert): Fix fmt_single to fmt_long to not truncate.
+ Fix float to int conversions to produce signed values.
+
+Thu Sep 19 15:34:17 1996 Ian Lance Taylor <ian@cygnus.com>
+
+ * gencode.c (MIPS_DECODE): Set UNSIGNED for multu instruction.
+ (process_instructions): Correct handling of nor instruction.
+ Correct shift count for 32 bit shift instructions. Correct sign
+ extension for arithmetic shifts to not shift the number of bits in
+ the type. Fix 64 bit multiply high word calculation. Fix 32 bit
+ unsigned multiply. Fix ldxc1 and friends to use coprocessor 1.
+ Fix madd.
+ * interp.c (CHECKHILO): Don't set HIACCESS, LOACCESS, or HLPC.
+ It's OK to have a mult follow a mult. What's not OK is to have a
+ mult follow an mfhi.
+ (Convert): Comment out incorrect rounding code.
+
+Mon Sep 16 11:38:16 1996 James G. Smith <jsmith@cygnus.co.uk>
+
+ * interp.c (sim_monitor): Improved monitor printf
+ simulation. Tidied up simulator warnings, and added "--log" option
+ for directing warning message output.
+ * gencode.c: Use sim_warning() rather than WARNING macro.
+
+Thu Aug 22 15:03:12 1996 Ian Lance Taylor <ian@cygnus.com>
+
+ * Makefile.in (gencode): Depend upon gencode.o, getopt.o, and
+ getopt1.o, rather than on gencode.c. Link objects together.
+ Don't link against -liberty.
+ (gencode.o, getopt.o, getopt1.o): New targets.
+ * gencode.c: Include <ctype.h> and "ansidecl.h".
+ (AND): Undefine after including "ansidecl.h".
+ (ULONG_MAX): Define if not defined.
+ (OP_*): Don't define macros; now defined in opcode/mips.h.
+ (main): Call my_strtoul rather than strtoul.
+ (my_strtoul): New static function.
+
+Wed Jul 17 18:12:38 1996 Stu Grossman (grossman@critters.cygnus.com)
+
+ * gencode.c (process_instructions): Generate word64 and uword64
+ instead of `long long' and `unsigned long long' data types.
+ * interp.c: #include sysdep.h to get signals, and define default
+ for SIGBUS.
+ * (Convert): Work around for Visual-C++ compiler bug with type
+ conversion.
+ * support.h: Make things compile under Visual-C++ by using
+ __int64 instead of `long long'. Change many refs to long long
+ into word64/uword64 typedefs.
+
+Wed Jun 26 12:24:55 1996 Jason Molenda (crash@godzilla.cygnus.co.jp)
+
+ * Makefile.in (bindir, libdir, datadir, mandir, infodir, includedir,
+ INSTALL_PROGRAM, INSTALL_DATA): Use autoconf-set values.
+ (docdir): Removed.
+ * configure.in (AC_PREREQ): autoconf 2.5 or higher.
+ (AC_PROG_INSTALL): Added.
+ (AC_PROG_CC): Moved to before configure.host call.
+ * configure: Rebuilt.
+
+Wed Jun 5 08:28:13 1996 James G. Smith <jsmith@cygnus.co.uk>
+
+ * configure.in: Define @SIMCONF@ depending on mips target.
+ * configure: Rebuild.
+ * Makefile.in (run): Add @SIMCONF@ to control simulator
+ construction.
+ * gencode.c: Change LOADDRMASK to 64bit memory model only.
+ * interp.c: Remove some debugging, provide more detailed error
+ messages, update memory accesses to use LOADDRMASK.
+
+Mon Jun 3 11:55:03 1996 Ian Lance Taylor <ian@cygnus.com>
+
+ * configure.in: Add calls to AC_CONFIG_HEADER, AC_CHECK_HEADERS,
+ AC_CHECK_LIB, and AC_CHECK_FUNCS. Change AC_OUTPUT to set
+ stamp-h.
+ * configure: Rebuild.
+ * config.in: New file, generated by autoheader.
+ * interp.c: Include "config.h". Include <stdlib.h>, <string.h>,
+ and <strings.h> if they exist. Replace #ifdef sun with #ifdef
+ HAVE_ANINT and HAVE_AINT, as appropriate.
+ * Makefile.in (run): Use @LIBS@ rather than -lm.
+ (interp.o): Depend upon config.h.
+ (Makefile): Just rebuild Makefile.
+ (clean): Remove stamp-h.
+ (mostlyclean): Make the same as clean, not as distclean.
+ (config.h, stamp-h): New targets.
+
+Fri May 10 00:41:17 1996 James G. Smith <jsmith@cygnus.co.uk>
+
+ * interp.c (ColdReset): Fix boolean test. Make all simulator
+ globals static.
+
+Wed May 8 15:12:58 1996 James G. Smith <jsmith@cygnus.co.uk>
+
+ * interp.c (xfer_direct_word, xfer_direct_long,
+ swap_direct_word, swap_direct_long, xfer_big_word,
+ xfer_big_long, xfer_little_word, xfer_little_long,
+ swap_word,swap_long): Added.
+ * interp.c (ColdReset): Provide function indirection to
+ host<->simulated_target transfer routines.
+ * interp.c (sim_store_register, sim_fetch_register): Updated to
+ make use of indirected transfer routines.
+
+Fri Apr 19 15:48:24 1996 James G. Smith <jsmith@cygnus.co.uk>
+
+ * gencode.c (process_instructions): Ensure FP ABS instruction
+ recognised.
+ * interp.c (AbsoluteValue): Add routine. Also provide simple PMON
+ system call support.
+
+Wed Apr 10 09:51:38 1996 James G. Smith <jsmith@cygnus.co.uk>
+
+ * interp.c (sim_do_command): Complain if callback structure not
+ initialised.
+
+Thu Mar 28 13:50:51 1996 James G. Smith <jsmith@cygnus.co.uk>
+
+ * interp.c (Convert): Provide round-to-nearest and round-to-zero
+ support for Sun hosts.
+ * Makefile.in (gencode): Ensure the host compiler and libraries
+ used for cross-hosted build.
+
+Wed Mar 27 14:42:12 1996 James G. Smith <jsmith@cygnus.co.uk>
+
+ * interp.c, gencode.c: Some more (TODO) tidying.
+
+Thu Mar 7 11:19:33 1996 James G. Smith <jsmith@cygnus.co.uk>
+
+ * gencode.c, interp.c: Replaced explicit long long references with
+ WORD64HI, WORD64LO, SET64HI and SET64LO macro calls.
+ * support.h (SET64LO, SET64HI): Macros added.
+
+Wed Feb 21 12:16:21 1996 Ian Lance Taylor <ian@cygnus.com>
+
+ * configure: Regenerate with autoconf 2.7.
+
+Tue Jan 30 08:48:18 1996 Fred Fish <fnf@cygnus.com>
+
+ * interp.c (LoadMemory): Enclose text following #endif in /* */.
+ * support.h: Remove superfluous "1" from #if.
+ * support.h (CHECKSIM): Remove stray 'a' at end of line.
+
+Mon Dec 4 11:44:40 1995 Jamie Smith <jsmith@cygnus.com>
+
+ * interp.c (StoreFPR): Control UndefinedResult() call on
+ WARN_RESULT manifest.
+
Fri Dec 1 16:37:19 1995 James G. Smith <jsmith@cygnus.co.uk>
* gencode.c: Tidied instruction decoding, and added FP instruction