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

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

	* mem.c: Delete HAVE_SYS_SELECT_H.

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

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

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

	* configure.ac: Delete call to AC_CHECK_HEADERS_ONCE.
	* config.in, configure: Regenerate.

2021-06-02  John Baldwin  <jhb@FreeBSD.org>

	* m32c.opc: Include defs.h.
	* r8c.opc: Likewise.

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

	* gdb-if.c (open): Rename to ...
	(is_open): ... this.
	(sim_open, sim_close): Rename open to is_open.

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

	* int.c, misc.c, opc2c.c, reg.c, srcdest.c: Include defs.h.
	* gdb-if.c, load.c, main.c, mem.c, syscalls.c, trace.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>

	* gdb-if.c: Update include path.
	* syscalls.c: Likewise.

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

	* mem.c: Include errno.h.
	(mem_put_byte): Print a warning when the write call fails.
	(mem_put_blk): Declare local buf pointer and use it.
	(mem_get_byte): Return 0 when the read call fails.
	(mem_get_blk): Declare local buf pointer and use it.
	* trace.c (load_file_and_line): Declare ret.
	Assign fread to ret and use to index f->data.
	* configure.ac: Delete SIM_AC_OPTION_WARNINGS call.
	* configure: Regenerate.

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

	* m32c.opc: Add scope braces around a few segments.
	* r8c.opc: Likewise.

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

	* Makefile.in: Delete safe-fgets.
	* opc2c.c: Delete safe-fgets.h include.
	(main): Replace safe_fgets with getline.
	* safe-fgets.c, safe-fgets.h: Removed.

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

	* gdb-if.c: Include libiberty.h.
	(sim_do_command): Rewrite to use buildargv.

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

	* configure: Regenerate.

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

	* load.c (m32c_load): Use BFD_VMA_FMT and drop casts.

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

	* m32c.opc: Include ansidecl.h.
	(AU): Delete.
	* opc2c.c (dump_lines): Change AU to ATTRIBUTE_UNUSED.
	* r8c.opc: Include ansidecl.h.
	(AU): Delete.

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>

	* Makefile.in (LIBS): Remove

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.ac: Change AC_CHECK_HEADERS to AC_CHECK_HEADERS_ONCE.
	* configure: Regenerate.

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

	* Makefile.in (NL_TARGET): Define.
	* syscalls.c: Change syscall.h include to targ-vals.h.
	(m32c_syscall): Add TARGET_ prefix to all SYS_ constants.
	* syscall.h: Removed.

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

	* configure: Regenerate.

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

	* Makefile.in: Set ASAN_OPTIONS when running opc2c.

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

	* opc2c.c (main): Remove vlist variable.

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

	* aclocal.m4, configure: Regenerate.

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

	* Makefile.in (opc2c.o, safe-fgets.o): Call COMPILE_FOR_BUILD.
	(opc2c): Call LINK_FOR_BUILD.

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

	* Makefile.in (opc2c): Delete $(BUILD_LIBS).

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>

	* gdb-if.c (sim_memory_map): Define.

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.

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

	* srcdest.c: Include libiberty.h.
	(decode_sd23): Use ARRAY_SIZE.

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

	* sim-if.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>

	* config.in, configure: Regenerate.

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

	* config.in, configure: Regenerate.

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

	* Makefile.in (sample.x, sample.mot, sample2.x, sample2.o, gloss.o):
	Delete targets.
	* blinky.S: Moved to ../testsuite/sim/m32c/.
	* gloss.S, sample.ld, sample.S, sample2.c: Likewise.

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

	* Makefile.in: Delete redundant dependency info.

2015-08-05  Nick Clifton  <nickc@redhat.com>

	* gdb-if.c (sim_info): Stub function to allow GDB to be built
	with this simulator.

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

	* configure: Regenerate.

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

	* configure.ac: Call SIM_AC_OPTION_WARNINGS.
	* configure: Regenerate.
	* cpu.h (decode_opcode, decode_r8c, decode_m32c,
	trace_register_changes): Convert old style prototypes.
	(m32c_dump_all_registers): New prototype.
	* gdb-if.c: Include stdlib.h.
	(sim_info): Delete.
	(siggnal, handle_step): Mark static.
	(sim_resume): Move rc decl to top of scope.
	* load.c: Include load.h.
	(decode_opcode); Convert old style prototype.
	(m32c_load): Move base decl to top of scope.
	* load.h (m32c_set_mach): Change mach type to unsigned long.
	* m32c.opc (getbyte, decode_m32c): Convert old style prototypes.
	(prefix): Convert old style prototype and mark static.
	* mem.c (mem_ptr, mem_usage_stats, e, mem_get_pc, stdin_ready,
	m32c_sim_restore_console, update_timer_a): Convert old style
	prototypes.
	(mem_put_byte): Mark static.
	* mem.h (mem_get_pc, m32c_sim_restore_console): Convert old style
	prototypes.
	* r8c.opc (getbyte, IMM, decode_r8c): Convert old style prototypes.
	* reg.c (stack_heap_stats, trace_register_changes,
	m32c_dump_all_registers): Convert old style prototypes.
	(put_reg): Move b decl to top of scope.
	* sample2.c (start): Convert old style prototype.
	* srcdest.c (disp8, disp16, disp24, disp20): Convert old style
	prototypes.
	(decode_srcdest4, decode_jumpdest): Move sd init below decls.
	* timer_a.h (update_timer_a): Convert old style prototype.
	* trace.c: Include trace.h.
	(load_file_and_line): Move file decl to top of scope.
	(sim_disasm_one): Convert old style prototype.

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

	* config.in, configure: Regenerate.

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

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

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>

	* gdb-if.c (sim_do_command): Add const to cmd.  Move args
	to top and add const.  Call strdup on cmd and free at end.

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

	* gdb-if.c (sim_load): Add const to prog.

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-24  Pedro Alves  <palves@redhat.com>

	PR gdb/7205

	Replace TARGET_SIGNAL_ with GDB_SIGNAL_ throughout.

2012-05-18  Nick Clifton  <nickc@redhat.com>

	PR 14072
	* gdb-if.c: Include config.h before system header files.
	* load.c: Likewise.
	* syscalls.c: Likewise.
	* trace.c: Likewise.

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

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

2012-01-02  Joel Brobecker  <brobecker@adacore.com>

	* blinky.S, gloss.S, sample.S: Reformat copyright header.

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.

2011-07-11  Mike Frysinger  <vapier@gentoo.org>

	* configure.ac: Rename from configure.in.

2011-07-11  Mike Frysinger  <vapier@gentoo.org>

	* configure.in: Add "dnl" before copyright notice.

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

	* gdb-if.c (sim_complete_command): New stub function.

2011-01-11  Andrew Burgess <aburgess@broadcom.com>

	* gdb-if.c (sim_store_register): Update return value to
	match new API.

2010-12-04  Masaki Muranaka  <monaka@monami-software.com>

	* Makefile.in: Use CC_FOR_BUILD to build opc2c.

2010-05-26  Ozkan Sezer  <sezeroz@gmail.com>

	* main.c (setup_tcp_console): Check error return from socket() call
	by its equality to -1 not by it being negative.

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

	* gdb-if.c (sim_write): Add const to buf arg.
	* mem.h (mem_put_blk): Add const to bufptr arg.
	* mem.c (mem_put_blk): Likewise, and add const to cast.

2010-01-20  DJ Delorie  <dj@redhat.com>

	* m32c.opc (MATH_OP): When doing subtraction, also set carry if
	the result is zero.

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.

2009-08-14  DJ Delorie  <dj@redhat.com>

	* configure.in: Check for sys/select.h, termios.h, sys/socket.h,
	netinet/in.h, and netinet/tcp.h.
	* configure: Regenerate.
	* config.in: Add those headers.
	* main.c: Check for them.
	(setup_tcp_console): Disable if no networking.
	(main): Note missing networking or termios.
	* mem.c: Check for those headers.
	(stdin_ready): Disable if no termios.
	(m32c_sim_restore_console): Disable if no termios.
	(mem_get_byte): Disable console input if no termios.

2009-05-08  Kevin Buettner  <kevinb@redhat.com>

	* gdb-if.c (m32c_signal_to_host): Rename to
	m32c_signal_to_target.  Change signal return values from SIGILL,
	SIGTRAP, SIGSEGV, etc. to TARGET_SIGNAL_ILL, TARGET_SIGNAL_TRAP,
	TARGET_SIGNAL_SEGV, etc.  Fix all callers.

2009-01-06  Joel Sherrill <joel.sherrill@oarcorp.com>

	* r8c.opc, m32c.opc: Add parentheses to remove warnings.

2008-10-01  DJ Delorie  <dj@redhat.com>

	* int.c (trigger_peripheral_interrupt): Clear interrupt pending
	bit when peripheral interrupts are serviced.

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

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

2008-06-16  DJ Delorie  <dj@redhat.com>

	* m32c.opc (BRK, GDBBRK): Remove debug logic.
	* main.c (main): Add option to set raw console.
	* mem.h (m32c_use_raw_console): Declare.
	* mem.c (m32c_sim_restore_console): Only restore console if it's
	been previously set.
	(m32c_use_raw_console): Define.
	(mem_get_byte): Set raw console if m32c_use_raw_console is set.

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

	* configure: Regenerate.

2008-06-06  DJ Delorie  <dj@redhat.com>

	* Makefile.in: Add Timer A support.
	* cpu.h (m32c_opcode_pc): New.
	(in_gdb): New.
	* gdb-if.c (sim_open): Add Timer A support.  Support unbuffered
	console.
	* int.c (trigger_interrupt): Manage the U flag properly.
	(trigger_based_interrupt): Likewise.
	(trigger_fixed_interrupt): New.
	(trigger_peripheral_interrupt): New.
	* int.h (trigger_peripheral_interrupt): New.
	* m32c.opc: Use m32c_opcode_pc throughout, as needed.
	(decode_m32c): Detect jump-to-zero with traceback.
	(BRK): Try to do the right thing, keeping track of whether we're
	in gdb or not, and if the user has provided a handler or not.
	(GBRK): Alternate break opcode for gdb, in case the user's app
	needs to use BRK for itself.
	(BRK2): Implement.
	* main.c: Add Timer A support.  Support TCP-based console.
	(setup_tcp_console): New.
	(main): Add Timer A support.  Support TCP-based console.
	* mem.h (m32c_sim_restore_console): New.
	* mem.c: Add Timer A support.  Support TCP-based console.
	(mem_ptr): Enhance NULL pointer detection.
	(stdin_ready): New.
	(m32c_sim_restore_console): New.
	(mem_get_byte): Check for console input ready.
	(update_timer_a): New.
	* r8c.opc (SSTR): Use r0l, not r0h.
	(REIT): Fix return frame logic.
	* reg.c (print_flags): New.
	(trace_register_changes): Use it.
	(m32c_dump_all_registers): New.
	* timer_a.h: New.

	* load.c: Fix indentation.
	* trace.c: Fix indentation.
	* trace.h: Fix indentation.

2006-06-26  DJ Delorie  <dj@redhat.com>

	* r8c.opc (decode_r8c): Don't bother reading the destination
	before moving a constant into it.  Fix borrow comparison for SUB.

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.

2006-03-13  DJ Delorie  <dj@redhat.com>

	* mem.c (mem_put_byte): Hook simulated UART to stdout.
	(mem_put_hi): Hook in simulated trace port.
	(mem_get_byte): Hook in simulated uart control port.
	* opc2c: Be more picky about matching special comments.
	* r8c.opc (shift_op): Limit shift counts to -16..16.
	(BMcnd): Map conditional codes.
	* reg.c (condition_true): Mask condition code to 4 bits.
	* syscalls.c: Include local syscall.h.
	* syscall.h: New, copied from libgloss.

2005-10-06  Jim Blandy  <jimb@redhat.com>

	Simulator for Renesas M32C and M16C, by DJ Delorie <dj@redhat.com>,
	with further work from Jim Blandy <jimb@redhat.com> and
	Kevin Buettner <kevinb@redhat.com>.

	* ChangeLog: New.
	* Makefile.in: New.
	* blinky.S: New.
	* config.in: New.
	* configure: New.
	* configure.in: New.
	* cpu.h: New.
	* gdb-if.c: New.
	* gloss.S: New.
	* int.c: New.
	* int.h: New.
	* load.c: New.
	* load.h: New.
	* m32c.opc: New.
	* main.c: New.
	* mem.c: New.
	* mem.h: New.
	* misc.c: New.
	* misc.h: New.
	* opc2c.c: New.
	* r8c.opc: New.
	* reg.c: New.
	* safe-fgets.c: New.
	* safe-fgets.h: New.
	* sample.S: New.
	* sample.ld: New.
	* sample2.c: New.
	* srcdest.c: New.
	* syscalls.c: New.
	* syscalls.h: New.
	* trace.c: New.
	* trace.h: New.
