2021-06-22  Mike Frysinger  <vapier@gentoo.org>

	* configure.ac: Removed.
	* aclocal.m4: Removed.
	* configure: Removed.

2021-06-21  Mike Frysinger  <vapier@gentoo.org>

	* aclocal.m4: Regenerate.
	* configure: Regenerate.

2021-06-21  Mike Frysinger  <vapier@gentoo.org>

	* configure: Regenerate.

2021-06-20  Mike Frysinger  <vapier@gentoo.org>

	* configure.ac (SIM_AC_COMMON): Delete.
	* aclocal.m4, configure: Regenerate.

2021-06-20  Mike Frysinger  <vapier@gentoo.org>

	* aclocal.m4: Regenerate.
	* configure: Regenerate.

2021-06-19  Mike Frysinger  <vapier@gentoo.org>

	* aclocal.m4: Regenerate.
	* configure: Regenerate.

2021-06-19  Mike Frysinger  <vapier@gentoo.org>

	* configure: Regenerate.

2021-06-18  Mike Frysinger  <vapier@gentoo.org>

	* aclocal.m4, configure: Regenerate.

2021-06-18  Mike Frysinger  <vapier@gentoo.org>

	* configure: Regenerate.

2021-06-18  Mike Frysinger  <vapier@gentoo.org>

	* interp.c: Include sim-signal.h.

2021-06-17  Mike Frysinger  <vapier@gentoo.org>

	* configure.ac: Delete SIM_AC_OPTION_ENDIAN call.
	* aclocal.m4, configure: Regenerate.

2021-06-16  Mike Frysinger  <vapier@gentoo.org>

	* configure: Regenerate.

2021-06-16  Mike Frysinger  <vapier@gentoo.org>

	* configure: Regenerate.
	* config.in: Removed.

2021-06-15  Mike Frysinger  <vapier@gentoo.org>

	* config.in, configure: Regenerate.

2021-06-12  Mike Frysinger  <vapier@gentoo.org>

	* configure.ac: Delete call to SIM_AC_OPTION_ALIGNMENT.

2021-06-12  Mike Frysinger  <vapier@gentoo.org>

	* aclocal.m4, config.in, configure: Regenerate.

2021-06-12  Mike Frysinger  <vapier@gentoo.org>

	* config.in, configure: Regenerate.

2021-05-17  Mike Frysinger  <vapier@gentoo.org>

	* sim-main.h (SIM_HAVE_COMMON_SIM_STATE): Delete.

2021-05-17  Mike Frysinger  <vapier@gentoo.org>

	* sim-main.h (SIM_HAVE_COMMON_SIM_STATE): Define.
	(struct sim_state): Delete.

2021-05-16  Mike Frysinger  <vapier@gentoo.org>

	* interp.c: Replace config.h include with defs.h.

2021-05-16  Mike Frysinger  <vapier@gentoo.org>

	* config.in, configure: Regenerate.

2021-05-14  Mike Frysinger  <vapier@gentoo.org>

	* interp.c: Update include path.

2021-05-04  Mike Frysinger  <vapier@gentoo.org>

	* configure.ac: Delete SIM_AC_OPTION_WARNINGS call.
	* interp.c (sim_create_inferior): Add const to avp.
	* configure: Regenerate.

2021-05-04  Mike Frysinger  <vapier@gentoo.org>

	* interp.c: Delete sys/times.h include.

2021-05-04  Mike Frysinger  <vapier@gentoo.org>

	* configure: Regenerate.

2021-05-01  Mike Frysinger  <vapier@gentoo.org>

	* config.in, configure: Regenerate.

2021-04-26  Mike Frysinger  <vapier@gentoo.org>

	* aclocal.m4, config.in, configure: Regenerate.

2021-04-22  Tom Tromey  <tom@tromey.com>

	* configure, config.in: Rebuild.

2021-04-22  Tom Tromey  <tom@tromey.com>

	* configure: Rebuild.

2021-04-21  Mike Frysinger  <vapier@gentoo.org>

	* aclocal.m4: Regenerate.

2021-04-21  Simon Marchi  <simon.marchi@polymtl.ca>

	* configure: Regenerate.

2021-04-18  Mike Frysinger  <vapier@gentoo.org>

	* configure: Regenerate.

2021-04-12  Mike Frysinger  <vapier@gentoo.org>

	* interp.c (sim_open): Delete 3rd arg to sim_cpu_alloc_all.

2021-04-02  Mike Frysinger  <vapier@gentoo.org>

	* aclocal.m4, configure: Regenerate.

2021-02-28  Mike Frysinger  <vapier@gentoo.org>

	* configure: Regenerate.

2021-02-21  Mike Frysinger  <vapier@gentoo.org>

	* configure.ac (AC_CONFIG_MACRO_DIRS): Replace common with m4.
	* aclocal.m4, configure: Regenerate.

2021-02-13  Mike Frysinger  <vapier@gentoo.org>

	* configure.ac: Replace sinclude with AC_CONFIG_MACRO_DIRS.
	* aclocal.m4, configure: Regenerate.

2021-02-06  Mike Frysinger  <vapier@gentoo.org>

	* configure: Regenerate.

2021-01-11  Mike Frysinger  <vapier@gentoo.org>

	* config.in, configure: Regenerate.

2021-01-09  Mike Frysinger  <vapier@gentoo.org>

	* configure: Regenerate.

2021-01-09  Mike Frysinger  <vapier@gentoo.org>

	* configure.ac (SIM_AC_OPTION_WARNINGS): Pass "no".
	* configure: Regenerate.

2021-01-08  Mike Frysinger  <vapier@gentoo.org>

	* configure: Regenerate.

2021-01-04  Mike Frysinger  <vapier@gentoo.org>

	* configure: Regenerate.

2017-09-06  John Baldwin  <jhb@FreeBSD.org>

	* configure: Regenerate.

2016-01-10  Mike Frysinger  <vapier@gentoo.org>

	* config.in, configure: Regenerate.

2016-01-10  Mike Frysinger  <vapier@gentoo.org>

	* configure: Regenerate.

2016-01-10  Mike Frysinger  <vapier@gentoo.org>

	* configure.ac (SIM_AC_OPTION_ENVIRONMENT): Delete call.
	* configure: Regenerate.

2016-01-10  Mike Frysinger  <vapier@gentoo.org>

	* configure: Regenerate.

2016-01-10  Mike Frysinger  <vapier@gentoo.org>

	* configure: Regenerate.

2016-01-10  Mike Frysinger  <vapier@gentoo.org>

	* configure.ac (SIM_AC_OPTION_INLINE): Delete call.
	* configure: Regenerate.

2016-01-10  Mike Frysinger  <vapier@gentoo.org>

	* configure: Regenerate.

2016-01-10  Mike Frysinger  <vapier@gentoo.org>

	* configure: Regenerate.

2016-01-09  Mike Frysinger  <vapier@gentoo.org>

	* config.in, configure: Regenerate.

2016-01-06  Mike Frysinger  <vapier@gentoo.org>

	* interp.c (sim_open): Mark argv const.
	(sim_create_inferior): Mark argv and env const.

2016-01-04  Mike Frysinger  <vapier@gentoo.org>

	* configure: Regenerate.

2016-01-03  Mike Frysinger  <vapier@gentoo.org>

	* interp.c (sim_open): Update sim_parse_args comment.

2016-01-03  Mike Frysinger  <vapier@gentoo.org>

	* configure.ac (SIM_AC_OPTION_HOSTENDIAN): Delete.
	* configure: Regenerate.

2016-01-02  Mike Frysinger  <vapier@gentoo.org>

	* configure: Regenerate.

2015-12-27  Mike Frysinger  <vapier@gentoo.org>

	* Makefile.in (SIM_OBJS): Delete sim-hload.o.

2015-12-26  Mike Frysinger  <vapier@gentoo.org>

	* config.in, configure: Regenerate.

2015-11-15  Mike Frysinger  <vapier@gentoo.org>

	* Makefile.in (SIM_OBJS): Delete sim-reason.o, sim-reg.o, and
	sim-stop.o.

2015-11-15  Mike Frysinger  <vapier@gentoo.org>

	* interp.c (mcore_regset, LAST_VALID_CREG, NUM_MCORE_REGS: Move
	to sim-main.h.
	(cpu): Delete.
	(gr, cr): Change from asregs to cpu.
	(sr, vbr, esr, fsr, epc, fpc, ss0, ss1, ss2, ss3, ss4, gcr, gsr):
	Change from asregs to cr.
	(C_ON, C_VALUE, C_OFF, SET_C, CLR_C, NEW_C, SR_AF): Change from
	cpu.sr to sr.
	(set_active_regs): Define.
	(set_initial_gprs): Rename scpu to cpu.  Change cpu.sr to sr and
	cpu.gr to gr.  Replace for loop with memset.  Replace SR_AF with
	set_active_regs.
	(handle_trap1): Add cpu arg.
	(process_stub): Likewise.  Change cpu.gr to gr.
	(util): Rename scpu to cpu.  Change cpu.gr to gr.
	(rbat, rhat, rlat, wbat, what, wlat, ILLEGAL, sim_engine_run,
	mcore_reg_store, mcore_reg_fetch, sim_create_inferior): Rename scpu
	to cpu.
	(step_once): Likewise.  Replace SR_AF with set_active_regs.  Adjust
	cpu.asregs to cpu.
	(mcore_pc_get, mcore_pc_set): Adjust cpu->pc to cpu->regs.pc.
	* sim-main.h (mcore_regset, LAST_VALID_CREG, NUM_MCORE_REGS: Move
	from interp.c.
	(_sim_cpu): Add regs, asints, active_gregs, ticks, stalls, cycles,
	and insts members.

2015-11-15  Mike Frysinger  <vapier@gentoo.org>

	* Makefile.in (SIM_OBJS): Add sim-reg.o.
	* interp.c (sim_store_register): Rename to ...
	(mcore_reg_store): ... this.  Change SIM_DESC to SIM_CPU.
	(sim_fetch_register): Rename to ...
	(mcore_reg_fetch): ... this.  Change SIM_DESC to SIM_CPU.
	(sim_open): Call CPU_REG_FETCH and CPU_REG_STORE.

2015-11-15  Mike Frysinger  <vapier@gentoo.org>

	* Makefile.in (SIM_OBJS): Add sim-reason.o and sim-resume.o.
	* interp.c (struct mcore_regset): Delete exception.
	(util): Add SIM_DESC and SIM_CPU args.  Call sim_engine_halt instead
	of setting cpu.asregs.exception.
	(ILLEGAL): Define.
	(sim_resume): Rename to ...
	(step_once): ... this.  Delete cpu.asregs.exception initialization.
	Delete do/while statements while keeping the body.  Replace SIGTRAP
	usage with sim_engine_halt(SIM_SIGTRAP).  Replace SIGILL usage with
	ILLEGAL.  Pass sd and cpu down to util.
	(sim_engine_run): Define.
	(sim_stop_reason): Delete.

2015-11-14  Mike Frysinger  <vapier@gentoo.org>

	* interp.c (sim_close): Delete.

2015-06-23  Mike Frysinger  <vapier@gentoo.org>

	* configure: Regenerate.

2015-06-17  Mike Frysinger  <vapier@gentoo.org>

	* interp.c (handle_trap1): Replace call to cb_syscall with
	sim_syscall.

2015-06-17  Mike Frysinger  <vapier@gentoo.org>

	* interp.c: Include sim-syscall.h.
	(syscall_read_mem, syscall_write_mem): Delete.
	(m32r_trap): Change syscall_read_mem/syscall_write_mem
	to sim_syscall_read_mem/sim_syscall_write_mem.

2015-06-12  Mike Frysinger  <vapier@gentoo.org>

	* configure: Regenerate.

2015-06-12  Mike Frysinger  <vapier@gentoo.org>

	* configure: Regenerate.

2015-04-21  Mike Frysinger  <vapier@gentoo.org>

	* interp.c (sim_resume): Change %x to %lx for all cpu registers.

2015-04-21  Mike Frysinger  <vapier@gentoo.org>

	* interp.c (mcore_regset): Delete msize & memory.
	(issue_messages, mem, wbat, what, wlat, rbat, what, wlat,
	sim_memory_size, MEM_SIZE_FLOOR, sim_size, init_pointers): Delete.
	(DEFAULT_MEMORY_SIZE): Define.
	(set_initial_gprs): Delete memsize handling and call to init_pointers.
	Change cpu.asregs.msize to DEFAULT_MEMORY_SIZE.
	(syscall_read_mem): Change memcpy to sim_core_read_buffer.
	(syscall_write_mem): Change memcpy to sim_core_write_buffer.
	(process_stub): Change issue_messages to STATE_VERBOSE_P.
	(util): Turn printf into a stub.  Change issue_messages to
	STATE_VERBOSE_P.
	(rbat, rhat, rlat, wbat, what, wlat): Define to sim core funcs.
	(sim_resume): Change issue_messages to STATE_VERBOSE_P.
	Delete cpu.asregs.msize range checks.
	(sim_write, sim_read): Delete.
	(sim_store_register, sim_fetch_register): Delete call to
	init_pointers.
	(sim_open): Delete osize, call to sim_size, and issue_messages.  Call
	sim_do_commandf to setup memory.
	(sim_create_inferior): Delete issue_messages handling.  Change
	cpu.asregs.msize to DEFAULT_MEMORY_SIZE.  Change strcpy to
	sim_core_write_buffer.

2015-04-21  Mike Frysinger  <vapier@gentoo.org>

	* interp.c (WATCHFUNCTIONS): Undef it.
	(sim_resume): Move WLhash behind WATCHFUNCTIONS.
	(sim_do_command): Delete.

2015-04-21  Mike Frysinger  <vapier@gentoo.org>

	* Makefile.in (NL_TARGET): Define.
	* interp.c (NUM_ELEM, opened, log_open, log_close, is_opened): Delete.
	(syscall_read_mem, syscall_write_mem): New functions.
	(handle_trap1): Delete entire body.  Replace with call to cb_syscall.

2015-04-18  Mike Frysinger  <vapier@gentoo.org>

	* sim-main.h (SIM_CPU): Delete.

2015-04-18  Mike Frysinger  <vapier@gentoo.org>

	* sim-main.h (sim_cia): Delete.

2015-04-17  Mike Frysinger  <vapier@gentoo.org>

	* interp.c (set_initial_gprs): Change CIA_SET to CPU_PC_SET.
	(sim_resume): Change CIA_GET to CPU_PC_GET and CIA_SET to
	CPU_PC_SET.
	(sim_create_inferior): Change CIA_SET to CPU_PC_SET.
	* sim-main.h (CIA_GET, CIA_SET): Delete.

2015-04-16  Mike Frysinger  <vapier@gentoo.org>

	* interp.c (mcore_pc_get, mcore_pc_set): New functions.
	(sim_open): Call CPU_PC_FETCH & CPU_PC_STORE for all cpus.

2015-04-15  Mike Frysinger  <vapier@gentoo.org>

	* Makefile.in (SIM_OBJS): Delete sim-cpu.o.
	* sim-main.h (STATE_CPU): Delete.

2015-04-13  Mike Frysinger  <vapier@gentoo.org>

	* configure: Regenerate.

2015-04-06  Mike Frysinger  <vapier@gentoo.org>

	* Makefile.in (SIM_OBJS): Delete sim-engine.o.

2015-03-31  Mike Frysinger  <vapier@gentoo.org>

	* config.in, configure: Regenerate.

2015-03-29  Mike Frysinger  <vapier@gentoo.org>

	* interp.c (struct aout, LONG, SHORT): Delete.

2015-03-29  Mike Frysinger  <vapier@gentoo.org>

	* Makefile.in (SIM_RUN_OBJS, SIM_EXTRA_CFLAGS, SIM_EXTRA_LIBS): Delete.
	(SIM_OBJS): Change to $(SIM_NEW_COMMON_OBJS).
	* interp.c: Include sim-main.h, sim-base.h, and sim-options.h.
	(word, uword): Move to sim-main.h.
	(callback, sim_kind, myname): Delete.
	(struct mcore_regset): Move pc to sim_cpu.
	(memcycles, sim_size): Mark static.
	(set_initial_gprs): Take a sim_cpu arg.  Set pc via CIA_SET.
	(handle_trap1): Take a SIM_DESC arg.  Get callback from it.
	(process_stub): Take a SIM_DESC arg.  Pass it to handle_trap1
	(util): Take a SIM_DESC arg.  Pass it to process_stub.
	(sim_resume): Get/set pc via CIA_GET/CIA_SET.  Pass sd to handle_trap1
	and util.
	(sim_trace, sim_stop, sim_load, sim_set_callbacks): Delete.
	(sim_info): Get callback from SIM_DESC.
	(free_state): New cleanup function.
	(sim_open): Rewrite to use new common logic.
	(sim_create_inferior): Get sim_cpu from sd.  Pass to set_initial_gprs
	and set pc via CIA_SET.
	* sim-main.h: New file.

2015-03-29  Mike Frysinger  <vapier@gentoo.org>

	* configure.ac: Call SIM_AC_OPTION_ENDIAN, SIM_AC_OPTION_ALIGNMENT,
	SIM_AC_OPTION_HOSTENDIAN, SIM_AC_OPTION_ENVIRONMENT, and
	SIM_AC_OPTION_INLINE.
	* config.in, configure: Regenerate.

2015-03-29  Mike Frysinger  <vapier@gentoo.org>

	* interp.c (heap_ptr, int_sbrk): Delete.
	(handle_trap1): Change case 69 (sbrk) to always return -1.
	(sim_load): Delete bss checks and heap_ptr setup.

2015-03-16  Mike Frysinger  <vapier@gentoo.org>

	* interp.c: Strip trailing whitespace.

2015-03-16  Mike Frysinger  <vapier@gentoo.org>

	* configure.ac: Call SIM_AC_OPTION_WARNINGS.
	* confingure: Regenerate.
	* interp.c (mcore_extract_unsigned_integer): Make static and update
	prototype.  Fix up printf string.
	(mcore_store_unsigned_integer): Make static and update prototype.
	(int_sbrk): Likewise.
	(wbat, wlat, what, rbat, rlat, rhat): Delete INLINE and update
	prototype.
	(SEXTB, SEXTW, IOMEM): Delete.
	(sim_size): Update prototype.  Fix up printf string.
	(init_pointers): Update prototype.
	(set_initial_gprs): Update prototype.  Fix up printf string.
	(log_open, log_close, is_opened, handle_trap1, process_stub, util,
	iu_carry): Update prototype.
	(sim_resume): Update prototype.  Change addr to a word.
	(sim_write, sim_read, sim_store_register, sim_fetch_register,
	sim_trace, sim_stop_reason, sim_stop, sim_info, sim_open,
	sim_close, sim_load, sim_create_inferior, sim_do_command,
	sim_set_callbacks): Update prototype.

2015-03-16  Mike Frysinger  <vapier@gentoo.org>

	* config.in, configure: Regenerate.

2015-03-14  Mike Frysinger  <vapier@gentoo.org>

	* Makefile.in (SIM_EXTRA_CLEAN): Delete.
	(interp.o, mcore-clean): Delete rules.

2015-03-14  Mike Frysinger  <vapier@gentoo.org>

	* Makefile.in (SIM_EXTRA_CFLAGS): Set to
	-DSIM_USE_DEPRECATED_RUN_FRONTEND.
	(SIM_RUN_OBJS): Set to run.o.

2015-03-14  Mike Frysinger  <vapier@gentoo.org>

	* configure.ac (AC_CHECK_HEADERS): Delete.
	* aclocal.m4, configure: Regenerate.

2015-02-20  Mike Frysinger  <vapier@gentoo.org>

	* interp.c: Delete sysdep.h and netinet/in.h includes.
	Include stdlib.h and string.h.
	* sysdep.h: Delete.

2015-02-19  Mike Frysinger  <vapier@gentoo.org>

	* interp.c (sim_kill): Delete unused func.

2015-02-11  Chen Gang <gang.chen.5i5j@gmail.com>

	* interp.c: Include "unistd.h".

2015-02-02  Chen Gang  <gang.chen.5i5j@gmail.com>

	* interp.c (sim_do_command): Call freeargv() before return.

2014-08-19  Alan Modra  <amodra@gmail.com>

	* configure: Regenerate.

2014-08-15  Roland McGrath  <mcgrathr@google.com>

	* configure: Regenerate.
	* config.in: Regenerate.

2014-03-10  Mike Frysinger  <vapier@gentoo.org>

	* interp.c (sim_do_command): Add const to cmd.

2014-03-05  Mike Frysinger  <vapier@gentoo.org>

	* interp.c (sim_load): Add const to prog.

2014-02-17  Mike Frysinger  <vapier@gentoo.org>

	PR gdb/16450
	* interp.c (interrupt): Delete.
	(sim_resume): Delete signal(SIGINT) handling.

2013-09-23  Alan Modra  <amodra@gmail.com>

	* configure: Regenerate.

2013-06-03  Mike Frysinger  <vapier@gentoo.org>

	* aclocal.m4, configure: Regenerate.

2012-06-15  Joel Brobecker  <brobecker@adacore.com>

	* config.in, configure: Regenerate.

2012-05-20  Hans-Peter Nilsson  <hp@axis.com>

	PR 14072
	* interp.c: Include config.h before system header files.

2012-03-24  Mike Frysinger  <vapier@gentoo.org>

	* aclocal.m4, config.in, configure: Regenerate.

2011-12-03  Mike Frysinger  <vapier@gentoo.org>

	* aclocal.m4: New file.
	* configure: Regenerate.

2011-10-17  Mike Frysinger  <vapier@gentoo.org>

	* configure.ac: Change include to common/acinclude.m4.

2011-10-17  Mike Frysinger  <vapier@gentoo.org>

	* configure.ac: Change AC_PREREQ to 2.64.  Delete AC_CONFIG_HEADER
	call.  Replace common.m4 include with SIM_AC_COMMON.
	* configure: Regenerate.

2010-04-14  Mike Frysinger  <vapier@gentoo.org>

	* interp.c (sim_write): Add const to buffer arg.

2010-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>

	* configure: Regenerate.

2009-08-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>

	* config.in: Regenerate.
	* configure: Likewise.

	* configure: Regenerate.

2008-07-11  Hans-Peter Nilsson  <hp@axis.com>

	* configure: Regenerate to track ../common/common.m4 changes.
	* config.in: Ditto.

2008-06-06  Vladimir Prus  <vladimir@codesourcery.com>
	    Daniel Jacobowitz  <dan@codesourcery.com>
	    Joseph Myers  <joseph@codesourcery.com>

	* configure: Regenerate.

2006-12-21  Hans-Peter Nilsson  <hp@axis.com>

	* config.in: Regenerate.

2006-06-13  Richard Earnshaw  <rearnsha@arm.com>

	* configure: Regenerated.

2006-06-05  Daniel Jacobowitz  <dan@codesourcery.com>

	* configure: Regenerated.

2006-05-31  Daniel Jacobowitz  <dan@codesourcery.com>

	* configure: Regenerated.

2005-03-23  Mark Kettenis  <kettenis@gnu.org>

	* configure: Regenerate.

2005-01-14  Andrew Cagney  <cagney@gnu.org>

	* configure.ac: Sinclude aclocal.m4 before common.m4.  Add
	explicit call to AC_CONFIG_HEADER.
	* configure: Regenerate.

2005-01-12  Andrew Cagney  <cagney@gnu.org>

	* configure.ac: Update to use ../common/common.m4.
	* configure: Re-generate.

2005-01-11  Andrew Cagney  <cagney@localhost.localdomain>

	* configure: Regenerated to track ../common/aclocal.m4 changes.

2005-01-07  Andrew Cagney  <cagney@gnu.org>

	* configure.ac: Rename configure.in, require autoconf 2.59.
	* configure: Re-generate.

2004-12-08  Hans-Peter Nilsson  <hp@axis.com>

	* configure: Regenerate for ../common/aclocal.m4 update.

2003-10-11  Alan Modra  <amodra@bigpond.net.au>

	* interp.c (sim_load): Don't refer directly to _cooked_size and vma;
	Use bfd_section_size and bfd_get_section_vma.

2003-02-27  Andrew Cagney  <cagney@redhat.com>

	* interp.c (sim_open, sim_create_inferior): Rename _bfd to bfd.

2002-06-16  Andrew Cagney  <ac131313@redhat.com>

	* configure: Regenerated to track ../common/aclocal.m4 changes.

2002-06-08  Andrew Cagney  <cagney@redhat.com>

	* interp.c: Include "gdb/callback.h" and "gdb/remote-sim.h".

Tue May 23 21:39:23 2000  Andrew Cagney  <cagney@b1.cygnus.com>

	* configure: Regenerated to track ../common/aclocal.m4 changes.

2000-02-14  Nick Clifton  <nickc@cygnus.com>

	* interp.c (handle_trap1): Fix handling of fclose system call.
	Patch submitted by <drew.sarkisian@motorola.com>.

2000-02-10  Nick Clifton  <nickc@cygnus.com>

	* interp.c (target_big_endian): New variable.
	(mcore_extract_unsigned_integer, mcore_store_unsigned_integer,
	wlat, rlat, sim_resume, sim_load): Add supprot for little
	endian targets.

2000-01-13  Nick Clifton  <nickc@cygnus.com>

	* interp.c (sim_resume): Do not rely upon host semantics of shift
	operators to implement M*Core semantics.

Thu Sep  2 18:15:53 1999  Andrew Cagney  <cagney@b1.cygnus.com>

	* configure: Regenerated to track ../common/aclocal.m4 changes.

1999-06-23  Nick Clifton  <nickc@cygnus.com>

	* sysdep.h: Do not define prototypes for memcpy and strchr if they
	are macros.

1999-05-21  Nick Clifton  <nickc@cygnus.com>

	* interp.c (sim_resume): Add more tracing output.

1999-05-17  Keith Seitz  <keiths@cygnus.com>

	* interp.c (NUM_MCORE_REGS): Increase by one to allow access to PC.
	(sim_resume): Correct off by one instruction error when a breakpoint
	is hit.

1999-05-08  Felix Lee  <flee@cygnus.com>

	* configure: Regenerated to track ../common/aclocal.m4 changes.

1999-05-10  Nick Clifton  <nickc@cygnus.com>

	* interp.c (sim_resume): Record PC in case it is needed for error
	messages and the original has been corrupted.

1999-05-07  Nick Clifton  <nickc@cygnus.com>

	* interp.c (sim_resume): Fix typo 'oze' -> 'doze'.
	(util): Handle 0x50FF stubs properly.


1999-04-29  Nick Clifton  <nickc@cygnus.com>

	* interp.c (set_initial_gprs): Only display memory range if
	verbose option has been set.

1999-04-22  Nick Clifton  <nickc@cygnus.com>

	* interp.c: Add tracing and verbose options.
	Fixed trap and syscall emulations.

1999-04-08  Nick Clifton  <nickc@cygnus.com>

	* interp.c: New file: Simulator for MCore.
	* sysdep.h: New file: Systems definitions for MCore simulator.
	* configure.in: New file: Configure script for MCore simulator.
	* configure: New file: Genreated.
	* config,in: New file: Config support.
	* Makefile.in: New file: Meta makefile for MCore simulator.
