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>

	* 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>

	* Makefile.in (NL_TARGET): Delete.

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-18  Mike Frysinger  <vapier@gentoo.org>

	* Makefile.in (NL_TARGET): Define.
	* interp.c: Include targ-vals.h.
	(sim_engine_run): Change numeric literals to SYS_ constants.

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-08  Luis Machado  <luis.machado@linaro.org>

	* Makefile.in (moxie-gdb.dtb): Add maintainer mode dependency.
	(install-dtb): Install prebuilt dtb file.
	* moxie-gdb.dtb: New prebuilt file.

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>

	* interp.c (sim_open): Delete call to STATE_WATCHPOINTS.

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

	* configure: Regenerate.

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

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

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

	* interp.c (sim_open): Delete STATE_WATCHPOINTS (sd)->sizeof_pc.

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.

2019-12-14  Anthony Green  <green@moxielogic.com>

	* interp.c (sim_engine_run): Make use of sim_io_* functions for
	read/write/open system calls.  Implement the unlink system call.

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

	* configure: Regenerate.

2017-09-03  Anthony Green  <green@moxielogic.com>

	* interp.c (sim_engine_run): Always pass scpu into
	sim_engine_halt.  Process events within inner loop.

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.
	* Makefile.in (SIM_CFLAGS): Rename to ...
	(SIM_EXTRA_CFLAGS): ... this.

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.ac (SIM_AC_OPTION_ENDIAN): Change BIG_ENDIAN to BIG.
	* configure: Regenerate.

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

	* wrapper.c (sim_store_register): Rename to ...
	(moxie_reg_store): ... this.
	(sim_fetch_register): Rename to ...
	(moxie_reg_fetch): ... this.
	(sim_open): Call CPU_REG_FETCH/CPU_REG_STORE.

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 and sim-stop.o.

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

	* interp.c (sim_close): Delete.

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

	PR sim/18273
	* interp.c (load_dtb): Close open file in error path.

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

	* configure: Regenerate.

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

	* configure: Regenerate.

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

	* configure: Regenerate.

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

	* interp.c (tracefile, tracing): Delete.
	(MOXIE_TRACE_INSN): Call TRACE_INSN directly.

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

	* interp.c (TRACE): Rename to ...
	(MOXIE_TRACE_INSN): ... this.
	(sim_engine_run): Change TRACE to MOXIE_TRACE_INSN.

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 (wbat, wsat, wlat, rsat, rbat, rlat, sim_engine_run):
	Change CIA_GET to CPU_PC_GET.
	* sim-main.h (CIA_GET, CIA_SET): Delete.

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

	* interp.c (moxie_pc_get, moxie_pc_set): New functions.
	(sim_open): Declare new local var i.  Call CPU_PC_FETCH &
	CPU_PC_STORE for all cpus.
	* sim-main.h (SIM_CPU): New typedef.

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 and sim-hrw.o.

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

	* Makefile.in (SIM_OBJS): Add sim-resume.o.
	* interp.c (moxie_regset): Delete exception.
	(sim_resume): Rename to ...
	(sim_engine_run): ... this.  Delete insts variable and references
	to cpu.asregs.exception, and change most to sim_engine_halt.  Move
	trailing insts and PC_REGNO updates into the loop.
	(load_dtb): Delete open warning.  Change printf to sim_io_eprintf.

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

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

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

	* config.in, configure: Regenerate.

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

	* interp.c (moxie_extract_unsigned_integer): Mark static.  Update
	prototype.  Change printf %d to %zu.
	(moxie_store_unsigned_integer): Mark static.  Update prototype.
	(wbat, wsat, wlat, rsat, rbat, rlat): Move INLINE after static.
	(convert_target_flags): Mark static.
	(sim_resume): Update prototype.  Move val decl above local code.
	(sim_store_register, sim_fetch_register, sim_open, sim_close,
	sim_create_inferior): Update prototype.

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

	* configure: Regenerate.
	* configure.ac: Call SIM_AC_OPTION_WARNINGS.
	* interp.c: Delete gdb/callback.h include.  Add sim-options.h include.
	(callback, myname, sim_kind): Delete.
	(tracefile, tracine, TRACE): Move code together and add a TODO.
	(struct moxie_regset): Add a TODO.
	(cpu): Likewise.
	(callback, issue_messages, sim_size, sim_write, sim_read, sim_trace,
	sim_stop_reason, sim_stop, sim_info, sim_load, sim_set_callbacks):
	Delete.
	(set_initial_gprs): Change prototype to (void).
	(free_state): New function.
	(sim_open): Call sim_cpu_alloc_all, sim_parse_args, and
	sim_analyze_program.  Move set_initial_gprs to the end.  Set
	STATE_WATCHPOINTS pc data.  Delete callback, myname, and
	issue_messages.  Call free_state on error.
	(sim_create_inferior): Delete references to issue_messages and
	set_initial_gprs.
	* Makefile.in (SIM_RUN_OBJS, SIM_EXTRA_CFLAGS): Delete.
	(SIM_OBJS): Change to $(SIM_NEW_COMMON_OBJS).
	* sim-main.h (struct sim_state): Change cpu to a pointer array.
	(STATE_CPU): Drop the &.

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

	* Makefile.in (SIM_OBJS): Add sim-command.o.
	* interp.c (sim_do_command): Delete.

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.
	(all): Drop interp.o dependency.
	(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 string.h and unistd.h.
	* sysdep.h: Delete.

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

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

2014-12-27  Anthony Green  <green@moxielogic.com>

	* interp.c (EXTRACT_OFFSET): Define.
	(sim_resume): ldo/sto instructions now use 16 bit offset instead
	of 32.  Also swap mul.x/umul.x opcodes (reversed by mistake).

2014-12-25  Anthony Green  <green@moxielogic.com>

	* interp.c (sim_resume): Whitespace changes to align with GDB
	coding standard.

2014-12-24  Anthony Green  <green@moxielogic.com>

	* interp.c (sim_resume): Add mul.x and umul.x instructions.

2014-12-12  Anthony Green  <green@moxielogic.com>

	* interp.c (sim_resume): Add zex instructions.

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

	* configure: Regenerate.

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

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

2014-04-02  Anthony Green  <green@moxielogic.com>

	* interp.c (sim_resume): Add new sign-extend instructions.

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-26  Tom Tromey  <tromey@redhat.com>

	* Makefile.in (dtbdir): Don't use gdb's version.in.

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

	* aclocal.m4, configure: Regenerate.

2013-01-17  Anthony Green  <green@moxielogic.com>

	* interp.c (sim_open): Remove from debug output.

2012-09-07  Anthony Green  <green@moxielogic.com>

	* interp.c (sim_resume): Branches are now relative to the
	  address of the instruction following the branch.

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

	* interp.c: Include config.h first.  Also include fcntl.h directly.

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

	* config.in, configure: Regenerate.

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-02-27  Jan Kratochvil  <jan.kratochvil@redhat.com>

	* interp.c (sim_create_inferior): Fix crashes on zero PROG_BFD or ARGV.

2010-02-03  Anthony Green  <green@moxielogic.com>

	* interp.c (sim_resume): nop is 0x0f, and 0x00 is an illegal
	instruction.

2010-01-13  Anthony Green  <green@moxielogic.com>

	* interp.c (sim_open): Add period to end of sentence in comment.

2010-01-13  Anthony Green  <green@moxielogic.com>

	* interp.c (sim_open): Initialize the SIM_DESC object properly
	with sim_config() and sim_post_argv_init().

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

	* configure: Regenerate.

2009-09-10  Anthony Green  <green@moxielogic.com>

	* Makefile.in (install-dtb): New target.
	(moxie-gdb.dtb): New target.
	(SIM_CFLAGS): Define DTB macro on command line.
	(SIM_OBJS): Use common infrastructire.
	(dtbdir): Define install location for dtb file.

	* sim-main.h: New file.
	* moxie-gdb.dts: New file.
	* configure.ac: Check for dtc.  Install dtb file.  Remove some old
	cruft.
	* configure: Regenerate.
	* interp.c: Many changes to use common memory infrastructure.
	(load_dtb): New function.
	(sim_create_inferior): Call it.

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

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

	* configure: Regenerate.

2009-07-31  Anthony Green  <green@moxielogic.com>

	* interp.c: Increase simulated memory to 16MB.
	(sim_resume): Tweak swi system calls to support new ABI (up to 5
	args in regs).  Also simluate proper exception processing for
	Linux system calls.

2009-07-30  Anthony Green  <green@moxielogic.com>

	* interp.c (sim_resume): Add system call software interrupt support.

2009-06-11  Anthony Green  <green@moxielogic.com>

	* interp.c (INST2OFFSET): Define.
	(sim_resume): Support new PC relative branch instructions.

2009-05-09  Anthony Green  <green@moxielogic.com>

	* interp.c (sim_resume): Add missing breaks in switch.

2008-10-03  Anthony Green  <green@moxielogic.com>

	* interp.c (sim_resume): Add support for ldo.b, sto.b, ldo.s, sto.s.

2008-09-10  Anthony Green  <green@moxielogic.com>

	* interp.c (NUM_SPRO_SREGS): New.
	(struct moxie_regset): Add sregs.
	(set_initial_gprs): Initialize sregs.
	(sim_resume): Add gsr and ssr support.

2008-09-04  Anthony Green  <green@moxielogic.com>

	* interp.c (sim_resume): Add inc and dec instructions.

2008-09-04  Anthony Green  <green@moxielogic.com>

	* interp.c (struct moxie_regset): Use an unsigned long long to keep
	track of instruction trace counts.
	* interp.c (sim_resume): Ditto.
	(sim_info): Ditto.

2008-08-22  Anthony Green  <green@moxielogic.com>

	* interp.c (sim_resume): Remove debugging code.

2008-08-20  Anthony Green  <green@moxielogic.com>

	* interp.c (TRACE): Add new tracing infrastructure.
	(sim_resume): Use it.
	(reg_names): Add new registers.
	(NUM_MOXIE_REGS): New registers.
	(PC_REGNO): New registers.
	(sim_resume): New instruction encodings.

2008-08-16  Anthony Green  <green@moxielogic.com>

	* interp.c (sim_resume): Add SYS_read, and fix SYS_open and SYS_write.
	(convert_target_flags): New function.

2008-08-08  Anthony Green  <green@moxielogic.com>

	* interp.c (sim_resume): Add SYS_open and SYS_write system call support.

2008-08-04  Anthony Green  <green@moxielogic.com>

	* Makefile.in (SIM_EXTRA_LIBS): Add -lz.

2008-08-04  Anthony Green  <green@moxielogic.com>

	* interp.c (sim_create_inferior): Set argc & argv in the target.

2008-04-12  Anthony Green  <green@moxielogic.com>

	* interp.c (sim_resume): Add brk.

2008-04-10  Anthony Green  <green@moxielogic.com>

	* interp.c (sim_resume): Add static chain pointer to call frame.

2008-03-24  Anthony Green  <green@moxielogic.com>

	* interp.c (sim_resume): Add missing breaks.
	(sim_resume): Fix neg implementation.

2008-03-23  Anthony Green  <green@moxielogic.com>

	* interp.c (sim_load): Don't require a .bss section.

2008-03-21  Anthony Green  <green@moxielogic.com>

	* interp.c (sim_resume): Add swi, and, lshr, ashl, sub.l, neg, or,
	not, ashr, xor.

2008-03-20  Anthony Green  <green@moxielogic.com>

	* interp.c (struct moxie_regset): Add condition code, cc.
	(CC_GT, CC_LT, CC_EQ, CC_GTU, CC_LTU): Define.
	(sim_resume): Add jmpa, jsr, cmp, beq, bne, blt, bgt, bltu, bgtu,
	bge, ble, bgeu, and bleu.
	(rbat, rsat, wbat, wsat): New functions.
	(sim_resume): Add ld.b, lda.b, ldi.b, ld.s, lda.s, ldi.s, st.b,
	sta.b, st.s, sta.s, jmp.

2008-03-19  Anthony Green  <green@moxielogic.com>

	* interp.c (sim_resume): Add ld.l, st.l, lda.l, sta.l.
	jsra should set $fp == $sp.
	Fix jsra and ret semantics.

2008-03-18  Anthony Green  <green@moxielogic.com>

	* interp.c (sim_resume): Add push, pop and add.l.

2008-03-16  Anthony Green  <green@moxielogic.com>

	* interp.c (EXTRACT_WORD): Define.
	(rlat): Use EXTRACT_WORD.
	(sim_resume): Add jsra and ret.

2008-02-22  Anthony Green  <green@moxielogic.com>

	* interp.c (reg_names): Define.
	(sim_resume): Use reg_names.

2008-02-21  Anthony Green  <green@moxielogic.com>

	* config.in, configure, configure.ac, interp.c, Makefile.in,
	sysdep.h: Created.
