1 2005-01-07 Andrew Cagney <cagney@gnu.org>
3 * configure.ac: Rename configure.in, require autoconf 2.59.
4 * configure: Re-generate.
6 2004-12-08 Hans-Peter Nilsson <hp@axis.com>
8 * configure: Regenerate for ../common/aclocal.m4 update.
10 2004-06-26 Alexandre Oliva <aoliva@redhat.com>
12 2000-08-07 Graham Stott <grahams@cygnus.co.uk>
13 * am33-2.igen (fmadd, fmsub, fmnadd, fmnsub): Correct typo.
14 2000-05-29 Alexandre Oliva <aoliva@cygnus.com>
15 * interp.c (fpu_disabled_exception, fpu_unimp_exception,
16 fpu_check_signal_exception): Take additional state arguments.
17 Print exception type and call program_interrupt. Adjust callers.
18 (fpu_rsqrt, fpu_cmp, fpu_add, fpu_sub, fpu_mul, fpu_div,
19 fpu_fmadd, fpu_fmsub, fpu_fnmadd, fpu_fnmsub): Take additional
21 * mn10300_sim.h (fpu_disabled_exception, fpu_unimp_exception,
22 fpu_check_signal_exception): Adjust prototypes.
23 (fpu_rsqrt, fpu_cmp, fpu_add, fpu_sub, fpu_mul, fpu_div,
24 fpu_fmadd, fpu_fmsub, fpu_fnmadd, fpu_fnmsub): Likewise.
25 * am33-2.igen: Adjust calls.
26 2000-05-19 Alexandre Oliva <aoliva@cygnus.com>
27 * op_utils.c (cmp2fcc): Moved...
29 2000-05-18 Alexandre Oliva <aoliva@cygnus.com>
30 * am33-2.igen: Use `unsigned32', `signed32', `unsigned64' or
31 `signed64' where type width is relevant.
32 2000-05-15 Alexandre Oliva <aoliva@cygnus.com>
33 * mn10300_sim.h: Include sim-fpu.h.
34 (FD2FPU, FPU2FD): Enclose the FD argument in parentheses.
35 (fpu_check_signal_exception): Declare.
36 (struct fp_prec_t, fp_single_prec, fp_double_prec): Likewise.
37 (FP_SINGLE, FP_DOUBLE): Shorthands for fp_*_prec.
38 (fpu_rsqrt, fpu_cmp, fpu_add, fpu_sub, fpu_mul, fpu_div,
39 fpu_fmadd, fpu_fmsub, fpu_fnmadd, fpu_fnmsub): Declare.
40 * interp.c (fpu_disabled_exception): Document.
41 (fpu_unimp_exception): Likewise.
42 (fpu_check_signal_exception): Define.
43 (reg2val_32, round_32, val2reg_32, fp_single_prec): Likewise.
44 (reg2val_64, round_64, val2reg_64, fp_double_prec): Likewise.
45 (REG2VAL, ROUND, VAL2REG): Define shorthands.
46 (fpu_status_ok): Define.
47 (fpu_rsqrt, fpu_cmp, fpu_add, fpu_sub, fpu_mul, fpu_div,
48 fpu_fmadd, fpu_fmsub, fpu_fnmadd, fpu_fnmsub): Define.
49 * am33-2.igen (frsqrt, fcmp, fadd, fsub, fmul, fdiv,
50 fmadd, fmsub, fnmadd, fnmsub): Use new functions.
51 2000-04-27 Alexandre Oliva <aoliva@cygnus.com>
52 * interp.c (sim_create_inferior): Set PSW bit to enable FP insns
53 if architecture is AM33/2.0.
54 * am33.igen: Include am33-2.igen.
55 2000-04-23 Alexandre Oliva <aoliva@cygnus.com>
56 * mn10300.igen (movm, call, ret, retf): Check for am33_2 too.
57 * am33.igen (movm): Likewise.
58 2000-04-19 Alexandre Oliva <aoliva@cygnus.com>
59 * am33.igen: Added `*am33_2' to some instructions that were
61 2000-04-07 Alexandre Oliva <aoliva@cygnus.com>
62 * am33-2.igen: New file. All insns implemented, but FP flags are
63 only set for fcmp, exceptional conditions are not handled yet.
64 * Makefile.in (IGEN_INSN): Added am33-2.igen.
65 (tmp-igen): Added -M am33_2.
66 * mn10300.igen, am33.igen: Added `*am33_2' to all insns.
67 * gencode.c: Support FMT_D3.
68 * mn10300_sim.h (dword): New type.
69 (struct _state): Added fpregs.
70 (REG_FPCR, FPCR): New define. All assorted bitmaps.
71 (XS2FS, AS2FS, Xf2FD): New macros.
72 (FS2FPU, FD2FPU, FPU2FS, FPU2FD): Likewise.
73 (load_dword, store_dword): New functions or macros.
74 (u642dw, dw2u64): New functions.
75 (fpu_disabled_exception, fpu_unimp_exception): Declared.
76 * interp.c (fpu_disabled_exception): Defined; no actual
78 (fpu_unimp_exception): Likewise.
79 * op_utils.c (cmp2fcc): New function.
81 * interp.c, mn10300_sim.h, op_utils.c: Convert function prototypes
82 and definitions to ISO C.
84 * gencode.c, simops.c: Delete.
85 * Makefile.in: Remove non-COMMON dependencies and commands.
87 * configure.in: Use common simulator always. Don't subst sim_gen
90 * Makefile.in (WITHOUT_COMMON_OBJS, WITHOUT_COMMON_INTERP_DEP,
91 WITHOUT_COMMON_RUN_OBJS): Remove.
92 (WITH_COMMON_OBJS): Rename to MN10300_OBJS.
93 (WITH_COMMON_INTERP_DEP): Rename to MN10300_INTERP_DEP.
94 (WITH_COMMON_RUN_OBJS): Rename to SIM_RUN_OBJS.
95 (SIM_EXTRA_CFLAGS): Don't use @sim_gen@.
96 * interp.c: Remove non-common bits.
97 * mn10300_sim.h: Likewise.
99 2003-08-28 Andrew Cagney <cagney@redhat.com>
101 * dv-mn103ser.c (do_polling_event): Change type of "serial_reg" to
103 (read_status_reg): Cast "serial_reg" to "long".
104 * dv-mn103tim.c (do_counter_event): Change type of "timer_nr" to
106 (do_counter6_event, write_mode_reg, write_tm6md): Ditto.
108 2003-02-27 Andrew Cagney <cagney@redhat.com>
110 * interp.c (sim_open, sim_create_inferior, sim_open)
111 (sim_create_inferior): Rename _bfd to bfd.
113 2003-02-26 Andrew Cagney <cagney@redhat.com>
115 * am33.igen: Call sim_engine_abort instead of abort.
117 2003-02-26 David Carlton <carlton@math.stanford.edu>
119 * dv-mn103tim.c (read_special_timer6_reg): Add break after
120 empty default: label.
121 (write_special_timer6_reg): Ditto.
124 2002-11-28 Andrew Cagney <cagney@redhat.com>
126 * sim-main.h: Only include "idecode.h" once.
127 * Makefile.in (SIM_EXTRA_DEPS): Define.
129 2002-06-16 Andrew Cagney <ac131313@redhat.com>
131 * configure: Regenerated to track ../common/aclocal.m4 changes.
133 2002-06-09 Andrew Cagney <cagney@redhat.com>
135 * Makefile.in (INCLUDE): Update path to callback.h.
136 * mn10300_sim.h: Include "gdb/callback.h" and "gdb/remote-sim.h".
139 2001-05-06 Jim Blandy <jimb@redhat.com>
141 * mn10300.igen: Doc fixes.
143 2001-04-26 Alexandre Oliva <aoliva@redhat.com>
145 * Makefile.in (idecode.o, op_utils.o, semantics.o, simops.o):
146 Depend on targ-vals.h.
148 2001-04-15 J.T. Conklin <jtc@redback.com>
150 * Makefile.in (simops.o): Add simops.h to dependency list.
152 Wed Aug 9 02:24:53 2000 Graham Stott <grahams@cygnus.co.uk>
154 * am33.igen: Warning clean-up.
155 (movm): Initialize PC and mask.
156 (mov, movbu, movhu): Set srcreg2 from RI0.
157 (bsch): Initialize c.
158 (sat16_cmp): Actually do the comparison.
159 (mov_llt): Do not overwrite dstreg with uninitialized variable.
161 Tue May 23 21:39:23 2000 Andrew Cagney <cagney@b1.cygnus.com>
163 * configure: Regenerated to track ../common/aclocal.m4 changes.
165 2000-05-22 Alexandre Oliva <aoliva@cygnus.com>
167 * am33.igen: Fix leading comments of SP-relative offset insns that
168 referred to other registers. Make their offsets unsigned.
170 2000-05-18 Alexandre Oliva <aoliva@cygnus.com>
172 * mn10300_sim.h (genericAdd, genericSub, genericCmp, genericOr,
173 genericXor, genericBtst): Use `unsigned32'.
174 * op_utils.c: Likewise.
175 * mn10300.igen, am33.igen: Use `unsigned32', `signed32',
176 `unsigned64' or `signed64' where type width is relevant.
178 2000-04-25 Alexandre Oliva <aoliva@cygnus.com>
180 * am33.igen (inc4 Rn): Use genericAdd so as to modify flags.
182 2000-04-09 Alexandre Oliva <aoliva@cygnus.com>
184 * am33.igen: Make SP-relative offsets unsigned. Add `*am33' for
185 some instructions that were missing it.
187 2000-03-03 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
189 * Makefile.in (IGEN_INSN): Added am33.igen.
191 Thu Sep 2 18:15:53 1999 Andrew Cagney <cagney@b1.cygnus.com>
193 * configure: Regenerated to track ../common/aclocal.m4 changes.
195 Tue Jul 13 13:26:20 1999 Andrew Cagney <cagney@b1.cygnus.com>
197 * interp.c: Clarify error message reporting an unknown board.
199 1999-05-08 Felix Lee <flee@cygnus.com>
201 * configure: Regenerated to track ../common/aclocal.m4 changes.
203 1999-04-16 Frank Ch. Eigler <fche@cygnus.com>
205 * interp.c (program_interrupt): Detect undesired recursion using
206 static flag. Set NMIRC register's SYSEF flag during
207 --board=stdeval1 mode.
208 * dv-mn103-int.c (write_icr): Add backdoor address to allow CPU to
211 1999-04-02 Keith Seitz <keiths@cygnus.com>
213 * Makefile.in (SIM_EXTRA_CFLAGS): Define a POLL_QUIT_INTERVAL
214 for use in the simulator so that the poll_quit callback is
215 not called too often.
217 Tue Mar 9 21:26:41 1999 Andrew Cagney <cagney@b1.cygnus.com>
219 * dv-mn103int.c (mn103int_ioctl): Return something.
220 * dv-mn103tim.c (write_tm6md): GCC suggested parentheses around &&
223 Tue Feb 16 23:57:17 1999 Jeffrey A Law (law@cygnus.com)
225 * mn10300.igen (retf): Fix return address computation and store
226 the new pc value into nia.
228 1998-12-29 Frank Ch. Eigler <fche@cygnus.com>
230 * Makefile.in (WITH_COMMON_OBJS): Build also dv-sockser.o.
231 * interp.c (sim_open): Add stub mn103002 cache control memory regions.
232 Set OPERATING_ENVIRONMENT on "stdeval1" board.
233 (mn10300_core_signal): New function to intercept memory errors.
234 (program_interrupt): New function to dispatch to exception vector
235 (mn10300_exception_*): New functions to snapshot pre/post exception
237 * sim-main.h (SIM_CORE_SIGNAL): Define hook - call mn10300_core_signal.
238 (SIM_ENGINE_HALT_HOOK): Do nothing.
239 (SIM_CPU_EXCEPTION*): Define hooks to call mn10300_cpu_exception*().
240 (_sim_cpu): Add exc_* fields to store register value snapshots.
241 * dv-mn103ser.c (*): Support dv-sockser backend for UART I/O.
242 Various endianness and warning fixes.
243 * mn10300.igen (illegal): Call program_interrupt on error.
244 (break): Call program_interrupt on breakpoint
246 Several changes from <janczyn@cygnus.com> and <cagney@cygnus.com>
248 * dv-mn103int.c (mn103int_ioctl): New function for NMI
249 generation. (mn103int_finish): Install it as ioctl handler.
250 * dv-mn103tim.c: Support timer 6 specially. Endianness fixes.
252 Wed Oct 14 12:11:05 1998 Jeffrey A Law (law@cygnus.com)
254 * am33.igen: Allow autoincrement stores using the same register
255 for source and destination operands.
257 Mon Aug 31 10:19:55 1998 Jeffrey A Law (law@cygnus.com)
259 * am33.igen: Reverse HI/LO outputs of 4 operand "mul" and "mulu".
261 Fri Aug 28 14:40:49 1998 Joyce Janczyn <janczyn@cygnus.com>
263 * interp.c (sim_open): Check for invalid --board option, fix
264 indentation, allocate memory for mem control and DMA regs.
266 Wed Aug 26 09:29:38 1998 Joyce Janczyn <janczyn@cygnus.com>
268 * mn10300.igen (div,divu): Fix divide instructions so divide by 0
269 behaves like the hardware.
271 Mon Aug 24 11:50:09 1998 Joyce Janczyn <janczyn@cygnus.com>
273 * sim-main.h (SIM_HANDLES_LMA): Define SIM_HANDLES_LMA.
275 Wed Aug 12 12:36:07 1998 Jeffrey A Law (law@cygnus.com)
277 * am33.igen: Handle case where first DSP operation modifies a
278 register used in the second DSP operation correctly.
280 Tue Jul 28 10:10:25 1998 Jeffrey A Law (law@cygnus.com)
282 * am33.igen: Detect cases where two operands must not match for
283 DSP instructions too.
285 Mon Jul 27 12:04:17 1998 Jeffrey A Law (law@cygnus.com)
287 * am33.igen: Detect cases where two operands must not match in
288 non-DSP instructions.
290 Fri Jul 24 18:15:21 1998 Joyce Janczyn <janczyn@cygnus.com>
292 * op_utils.c (do_syscall): Rewrite to use common/syscall.c.
293 (syscall_read_mem, syscall_write_mem): New functions for syscall
295 * mn10300_sim.h: Add prototypes for syscall_read_mem and
297 * mn10300.igen: Change C++ style comments to C style comments.
298 Check for divide by zero in div and divu ops.
300 Fri Jul 24 12:49:28 1998 Jeffrey A Law (law@cygnus.com)
302 * am33.igen (translate_xreg): New function. Use it as needed.
304 Thu Jul 23 10:05:28 1998 Jeffrey A Law (law@cygnus.com)
306 * am33.igen: Add some missing instructions.
308 * am33.igen: Autoincrement loads/store fixes.
310 Tue Jul 21 09:48:14 1998 Jeffrey A Law (law@cygnus.com)
312 * am33.igen: Add mov_lCC DSP instructions.
314 * am33.igen: Add most am33 DSP instructions.
316 Thu Jul 9 10:06:55 1998 Jeffrey A Law (law@cygnus.com)
318 * mn10300.igen: Fix Z bit for addc and subc instructions.
319 Minor fixes in multiply/divide patterns.
321 * am33.igen: Add missing mul[u] imm32,Rn. Fix condition code
322 handling for many instructions. Fix sign extension for some
325 * am33.igen: Fix Z bit for remaining addc/subc instructions.
326 Do not sign extend immediate for mov imm,XRn.
327 More random mul, mac & div fixes.
328 Remove some unused variables.
329 Sign extend 24bit displacement in memory addresses.
331 * am33.igen: Fix Z bit for addc Rm,Rn and subc Rm,Rn. Various
332 fixes to 2 register multiply, divide and mac instructions. Set
333 Z,N correctly for sat16. Sign extend 24 bit immediate for add,
334 and sub instructions.
336 * am33.igen: Add remaining non-DSP instructions.
338 Wed Jul 8 16:29:12 1998 Jeffrey A Law (law@cygnus.com)
340 * am33.igen (translate_rreg): New function. Use it as appropriate.
342 * am33.igen: More am33 instructions. Fix "div".
344 Mon Jul 6 15:39:22 1998 Jeffrey A Law (law@cygnus.com)
346 * mn10300.igen: Add am33 support.
348 * Makefile.in: Use multi-sim to support both a mn10300 and am33
351 * am33.igen: Add many more am33 instructions.
353 Wed Jul 1 17:07:09 1998 Jeffrey A Law (law@cygnus.com)
355 * mn10300_sim.h (FETCH24): Define.
357 * mn10300_sim.h: Add defines for some registers found on the AM33.
358 * am33.igen: New file with some am33 support.
360 Tue Jun 30 11:23:20 1998 Jeffrey A Law (law@cygnus.com)
362 * mn10300_sim.h: Include bfd.h
363 (struct state): Add more room for processor specific registers.
366 Thu Jun 25 10:12:03 1998 Joyce Janczyn <janczyn@cygnus.com>
368 * dv-mn103tim.c: Include sim-assert.h
369 * dv-mn103ser.c (do_polling_event): Check for incoming data on
370 serial line and schedule next polling event.
371 (read_status_reg): schedule events to check for incoming data on
372 serial line and issue interrupt if necessary.
374 Fri Jun 19 16:47:27 1998 Joyce Janczyn <janczyn@cygnus.com>
376 * interp.c (sim_open): hook up serial 1 and 2 ports properly (typo).
378 Fri Jun 19 11:59:26 1998 Joyce Janczyn <janczyn@cygnus.com>
380 * interp.c (board): Rename am32 to stdeval1 as this is the name
381 consistently used to refer to the mn1030002 board.
383 Thu June 18 14:37:14 1998 Joyce Janczyn <janczyn@cygnus.com>
384 * interp.c (sim_open): Fix typo in address of EXTMD register
385 (0x34000280, not 0x3400280).
387 Wed Jun 17 18:00:18 1998 Jeffrey A Law (law@cygnus.com)
389 * simops.c (syscall): Handle change in opcode # for syscall.
390 * mn10300.igen (syscall): Likewise.
392 Tue June 16 09:36:21 1998 Joyce Janczyn <janczyn@cygnus.com>
393 * dv-mn103int.c (mn103int_finish): Regular interrupts (not NMI or
394 reset) are not enabled on reset.
396 Sun June 14 17:04:00 1998 Joyce Janczyn <janczyn@cygnus.com>
397 * dv-mn103iop.c (write_*_reg): Check for attempt to write r/o
399 * dv-mn103ser.c: Fill in methods for reading and writing to serial
401 * interp.c (sim_open): Make the serial device a polling device.
403 Fri June 12 16:24:00 1998 Joyce Janczyn <janczyn@cygnus.com>
404 * dv-mn103iop.c: New file for handling am32 io ports.
405 * configure.in: Add mn103iop to hw_device list.
406 * configure: Re-generate.
407 * interp.c (sim_open): Create io port device.
409 Wed June 10 14:34:00 1998 Joyce Janczyn <janczyn@cygnus.com>
410 * dv-mn103int.c (external_group): Use enumerated types to access
411 correct group addresses.
412 * dv-mn103tim.c (do_counter_event): Underflow of cascaded timer
413 triggers an interrupt on the higher-numbered timer's port.
415 Mon June 8 13:30:00 1998 Joyce Janczyn <janczyn@cygnus.com>
416 * interp.c: (mn10300_option_handler): New function parses arguments
418 * (board): Add --board option for specifying am32.
419 * (sim_open): Create new timer and serial devices and control
420 configuration of other am32 devices via board option.
421 * dv-mn103tim.c, dv-mn103ser.c: New files for timers and serial devices.
422 * dv-mn103cpu.c: Fix typos in opening comments.
423 * dv-mn103int.c: Adjust interrupt controller settings for am32 instead of am30.
424 * configure.in: Add mn103tim and mn103ser to hw_device list.
425 * configure: Re-generate.
427 Mon May 25 20:50:35 1998 Andrew Cagney <cagney@b1.cygnus.com>
429 * dv-mn103int.c, dv-mn103cpu.c: Rename *_callback to *_method.
431 * dv-mn103cpu.c, dv-mn103int.c: Include hw-main.h and
432 sim-main.h. Declare a struct hw_descriptor instead of struct
433 hw_device_descriptor.
435 Mon May 25 17:33:33 1998 Andrew Cagney <cagney@b1.cygnus.com>
437 * dv-mn103cpu.c (struct mn103cpu): Change type of pending_handler
440 Fri May 22 12:17:41 1998 Andrew Cagney <cagney@b1.cygnus.com>
442 * configure.in (SIM_AC_OPTION_HARDWARE): Add argument "yes".
444 Wed May 6 13:29:06 1998 Andrew Cagney <cagney@b1.cygnus.com>
446 * interp.c (sim_open): Create a polling PAL device.
448 Fri May 1 16:39:15 1998 Andrew Cagney <cagney@b1.cygnus.com>
450 * dv-mn103int.c (mn103int_port_event):
451 (mn103int_port_event):
452 (mn103int_io_read_buffer):
453 (mn103int_io_write_buffer):
455 * dv-mn103cpu.c (deliver_mn103cpu_interrupt): Drop CPU/CIA args.
456 (mn103cpu_port_event): Ditto.
457 (mn103cpu_io_read_buffer): Ditto.
458 (mn103cpu_io_write_buffer): Ditto.
460 Tue Apr 28 18:33:31 1998 Geoffrey Noer <noer@cygnus.com>
462 * configure: Regenerated to track ../common/aclocal.m4 changes.
464 Sun Apr 26 15:31:55 1998 Tom Tromey <tromey@creche>
466 * configure: Regenerated to track ../common/aclocal.m4 changes.
469 Sun Apr 26 15:19:55 1998 Tom Tromey <tromey@cygnus.com>
471 * acconfig.h: New file.
472 * configure.in: Reverted change of Apr 24; use sinclude again.
474 Fri Apr 24 14:16:40 1998 Tom Tromey <tromey@creche>
476 * configure: Regenerated to track ../common/aclocal.m4 changes.
479 Fri Apr 24 11:19:07 1998 Tom Tromey <tromey@cygnus.com>
481 * configure.in: Don't call sinclude.
483 Tue Apr 14 10:03:02 1998 Andrew Cagney <cagney@b1.cygnus.com>
485 * mn10300_sim.h: Declare all functions in op_utils.c using
488 * sim-main.c: New file. Include op_utils.c.
490 * mn10300.igen (mov, cmp): Use new igen operators `!' and `=' to
491 differentiate between MOV/CMP immediate/register instructions.
493 * configure.in (SIM_AC_OPTION_INLINE): Add and enable.
494 * configure: Regenerate.
496 Sat Apr 4 20:36:25 1998 Andrew Cagney <cagney@b1.cygnus.com>
498 * configure: Regenerated to track ../common/aclocal.m4 changes.
500 Fri Mar 27 16:15:52 1998 Andrew Cagney <cagney@b1.cygnus.com>
502 * interp.c (hw): Delete variable, moved to SIM_DESC.
503 (sim_open): Delete calls to hw_tree_create, hw_tree_finish.
504 Handled by sim-module.
505 (sim_open): Do not anotate tree with trace properties, handled by
507 (sim_open): Call sim_hw_parse instead of hw_tree_parse.
509 * configure: Regenerated to track ../common/aclocal.m4 changes.
511 Thu Mar 26 20:46:18 1998 Stu Grossman <grossman@bhuna.cygnus.co.uk>
513 * dv-mn103cpu.c (deliver_mn103cpu_interrupt): Save the entire PC
514 on the stack when delivering interrupts (not just the lower
516 * mn10300.igen (mov (Di,Am),Dn): Fix decode. Registers were
517 specified in the wrong order.
519 Fri Mar 27 00:56:40 1998 Andrew Cagney <cagney@b1.cygnus.com>
521 * dv-mn103cpu.c (deliver_mn103cpu_interrupt): Stop loss of
522 succeeding interrupts, clear pending_handler when the handler
525 Thu Mar 26 10:11:01 1998 Stu Grossman <grossman@bhuna.cygnus.co.uk>
527 * Makefile.in (tmp-igen): Prefix all usage of move-if-change
528 script with $(SHELL) to make NT native builds happy.
529 * configure: Regenerate because of change to ../common/aclocal.m4.
531 Thu Mar 26 11:22:31 1998 Andrew Cagney <cagney@b1.cygnus.com>
533 * configure.in: Make --enable-sim-common the default.
534 * configure: Re-generate.
536 * sim-main.h (CIA_GET, CIA_SET): Save/restore current instruction
537 address into Sate.regs[REG_PC] instead of common struct.
539 Wed Mar 25 17:42:00 1998 Joyce Janczyn <janczyn@cygnus.com>
541 * mn10300.igen (cmp imm8,An): Do not sign extend imm8 value.
543 Wed Mar 25 12:08:00 1998 Joyce Janczyn <janczyn@cygnus.com>
545 * simops.c (OP_F0FD): Initialise variable 'sp'.
547 Thu Mar 26 00:21:32 1998 Andrew Cagney <cagney@b1.cygnus.com>
549 * dv-mn103int.c (decode_group): A group register every 4 bytes not
551 (write_icr): Rewrite equation updating request field.
552 (read_iagr): Fix check that interrupt is still pending.
554 Wed Mar 25 16:14:50 1998 Andrew Cagney <cagney@b1.cygnus.com>
556 * interp.c (sim_open): Tidy up device creation.
558 * dv-mn103int.c (mn103int_port_event): Drive NMI with non-zero
560 (mn103int_io_read_buffer): Convert absolute address to register
562 (read_icr, write_icr): Convert block offset into group offset.
564 Wed Mar 25 15:08:49 1998 Andrew Cagney <cagney@b1.cygnus.com>
566 * interp.c (sim_open): Create second 1mb memory region at
568 (sim_open): Create a device tree.
570 (do_interrupt): Delete, needs to use dv-mn103cpu.c
572 * dv-mn103int.c, dv-mn103cpu.c: New files.
574 Wed Mar 25 08:47:38 1998 Andrew Cagney <cagney@b1.cygnus.com>
576 * mn10300_sim.h (EXTRACT_PSW_LM, INSERT_PSW_LM, PSW_IE, PSW_LM):
580 Wed Mar 25 12:35:29 1998 Andrew Cagney <cagney@b1.cygnus.com>
582 * configure: Regenerated to track ../common/aclocal.m4 changes.
584 Wed Mar 25 10:24:48 1998 Andrew Cagney <cagney@b1.cygnus.com>
586 * interp.c (sim-options.h): Include.
587 (sim_kind, myname): Declare when not using common framework.
589 * mn10300_sim.h (do_syscall, generic*): Provide prototypes for
590 functions found in op_utils.c
592 * mn10300.igen (add): Discard unused variables.
594 * configure, config.in: Re-generate with autoconf 2.12.1.
596 Tue Mar 24 15:27:00 1998 Joyce Janczyn <janczyn@cygnus.com>
598 Add support for --enable-sim-common option.
599 * Makefile.in (WITHOUT_COMMON_OBJS): Files included if
600 ! --enable-sim-common
601 (WITH_COMMON_OBJS): Files included if --enable-sim-common.
602 (MN10300_OBJS,MN10300_INTERP_DEP): New variables.
604 ({WITHOUT,WITH}_COMMON_RUN_OBJS,SIM_RUN_OBJS): New variables.
605 (SIM_EXTRA_CFLAGS): New variable.
606 (clean-extra): Clean up igen files.
607 (../igen/igen,clean-igen,tmp-igen): New rules.
608 * configure.in: Add support for common framework via
610 * configure: Regenerate.
611 * interp.c: #include sim-main if WITH_COMMON, not mn10300_sim.h.
612 (hash,dispatch,sim_size): Don't compile if ! WITH_COMMON.
613 (init_system,sim_write,compare_simops): Likewise.
614 (sim_set_profile,sim_set_profile_size): Likewise.
615 (sim_stop,sim_resume,sim_trace,sim_info): Likewise.
616 (sim_set_callbacks,sim_stop_reason,sim_read,sim_load): Likewise.
617 (enum interrupt_type): New enum.
618 (interrupt_names): New global.
619 (do_interrupt): New function.
620 (sim_open): Define differently if WITH_COMMON.
621 (sim_close,sim_create_inferior,sim_do_command): Likewise.
622 * mn10300_sim.h ({load,store}_{byte,half,word}): Define versions
624 * mn10300.igen: New file.
625 * mn10300.dc: New file.
626 * op_utils.c: New file.
627 * sim-main.h: New file.
629 Wed Mar 18 12:38:12 1998 Andrew Cagney <cagney@b1.cygnus.com>
631 * configure: Regenerated to track ../common/aclocal.m4 changes.
633 Fri Feb 27 18:36:04 1998 Jeffrey A Law (law@cygnus.com)
635 * simops.c (inc): Fix typo.
637 Wed Feb 25 01:59:29 1998 Jeffrey A Law (law@cygnus.com)
639 * simops.c (signed multiply instructions): Cast input operands to
640 signed32 before casting them to signed64 so that the sign bit
641 is propagated properly.
643 Mon Feb 23 20:23:19 1998 Mark Alexander <marka@cygnus.com>
645 * Makefile.in: Last change was bad. Define NL_TARGET
646 so that targ-vals.h will be used instead of syscall.h.
647 * simops.c: Use targ-vals.h instead of syscall.h.
648 (OP_F020): Disable unsupported system calls.
650 Mon Feb 23 09:44:38 1998 Mark Alexander <marka@cygnus.com>
652 * Makefile.in: Get header files from libgloss/mn10300/sys.
654 Sun Feb 22 16:02:24 1998 Jeffrey A Law (law@cygnus.com)
656 * simops.c: Include sim-types.h.
658 Wed Feb 18 13:07:08 1998 Jeffrey A Law (law@cygnus.com)
660 * simops.c (multiply instructions): Cast input operands to a
661 signed64/unsigned64 type as appropriate.
663 Tue Feb 17 12:47:16 1998 Andrew Cagney <cagney@b1.cygnus.com>
665 * interp.c (sim_store_register, sim_fetch_register): Pass in
666 length parameter. Return -1.
668 Sun Feb 1 16:47:51 1998 Andrew Cagney <cagney@b1.cygnus.com>
670 * configure: Regenerated to track ../common/aclocal.m4 changes.
672 Sat Jan 31 18:15:41 1998 Andrew Cagney <cagney@b1.cygnus.com>
674 * configure: Regenerated to track ../common/aclocal.m4 changes.
676 Mon Jan 19 22:26:29 1998 Doug Evans <devans@seba>
678 * configure: Regenerated to track ../common/aclocal.m4 changes.
680 Mon Dec 15 23:17:11 1997 Andrew Cagney <cagney@b1.cygnus.com>
682 * configure: Regenerated to track ../common/aclocal.m4 changes.
685 Thu Dec 4 09:21:05 1997 Doug Evans <devans@canuck.cygnus.com>
687 * configure: Regenerated to track ../common/aclocal.m4 changes.
689 Tue Nov 11 10:38:52 1997 Jeffrey A Law (law@cygnus.com)
691 * simops.c (call:16 call:32): Stack adjustment is determined solely
694 Wed Oct 22 14:43:00 1997 Andrew Cagney <cagney@b1.cygnus.com>
696 * interp.c (sim_load): Pass lma_p and sim_write args to
699 Tue Oct 21 10:12:03 1997 Jeffrey A Law (law@cygnus.com)
701 * simops.c: Correctly handle register restores for "ret" and "retf"
704 Fri Oct 3 09:28:00 1997 Andrew Cagney <cagney@b1.cygnus.com>
706 * configure: Regenerated to track ../common/aclocal.m4 changes.
708 Wed Sep 24 17:38:57 1997 Andrew Cagney <cagney@b1.cygnus.com>
710 * configure: Regenerated to track ../common/aclocal.m4 changes.
712 Tue Sep 23 11:04:38 1997 Andrew Cagney <cagney@b1.cygnus.com>
714 * configure: Regenerated to track ../common/aclocal.m4 changes.
716 Mon Sep 22 11:46:20 1997 Andrew Cagney <cagney@b1.cygnus.com>
718 * configure: Regenerated to track ../common/aclocal.m4 changes.
720 Fri Sep 19 17:45:25 1997 Andrew Cagney <cagney@b1.cygnus.com>
722 * configure: Regenerated to track ../common/aclocal.m4 changes.
724 Mon Sep 15 17:36:15 1997 Andrew Cagney <cagney@b1.cygnus.com>
726 * configure: Regenerated to track ../common/aclocal.m4 changes.
728 Thu Sep 4 17:21:23 1997 Doug Evans <dje@seba>
730 * configure: Regenerated to track ../common/aclocal.m4 changes.
732 Wed Aug 27 18:13:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
734 * configure: Regenerated to track ../common/aclocal.m4 changes.
737 Tue Aug 26 10:41:07 1997 Andrew Cagney <cagney@b1.cygnus.com>
739 * interp.c (sim_kill): Delete.
740 (sim_create_inferior): Add ABFD argument.
741 (sim_load): Move setting of PC from here.
742 (sim_create_inferior): To here.
744 Mon Aug 25 17:50:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
746 * configure: Regenerated to track ../common/aclocal.m4 changes.
749 Mon Aug 25 16:14:44 1997 Andrew Cagney <cagney@b1.cygnus.com>
751 * interp.c (sim_open): Add ABFD argument.
753 Tue Jun 24 13:46:20 1997 Jeffrey A Law (law@cygnus.com)
755 * interp.c (sim_resume): Clear State.exited.
756 (sim_stop_reason): If State.exited is nonzero, then indicate that
757 the simulator exited instead of stopped.
758 * mn10300_sim.h (struct _state): Add exited field.
759 * simops.c (syscall): Set State.exited for SYS_exit.
761 Wed Jun 11 22:07:56 1997 Jeffrey A Law (law@cygnus.com)
763 * simops.c: Fix thinko in last change.
765 Tue Jun 10 12:31:32 1997 Jeffrey A Law (law@cygnus.com)
767 * simops.c: "call" stores the callee saved registers into the
768 stack! Update the stack pointer properly when done with
771 * simops.c: Fix return address computation for "call" instructions.
773 Thu May 22 01:43:11 1997 Jeffrey A Law (law@cygnus.com)
775 * interp.c (sim_open): Fix typo.
777 Wed May 21 23:27:58 1997 Jeffrey A Law (law@cygnus.com)
779 * interp.c (sim_resume): Add missing case in big switch
780 statement (for extb instruction).
782 Tue May 20 17:51:30 1997 Jeffrey A Law (law@cygnus.com)
784 * interp.c: Replace all references to load_mem and store_mem
785 with references to load_byte, load_half, load_3_byte, load_word
786 and store_byte, store_half, store_3_byte, store_word.
787 (INLINE): Delete definition.
788 (load_mem_big): Likewise.
789 (max_mem): Make it global.
790 (dispatch): Make this function inline.
791 (load_mem, store_mem): Delete functions.
792 * mn10300_sim.h (INLINE): Define.
793 (RLW): Delete unused definition.
794 (load_mem, store_mem): Delete declarations.
795 (load_mem_big): New definition.
796 (load_byte, load_half, load_3_byte, load_word): New functions.
797 (store_byte, store_half, store_3_byte, store_word): New functions.
798 * simops.c: Replace all references to load_mem and store_mem
799 with references to load_byte, load_half, load_3_byte, load_word
800 and store_byte, store_half, store_3_byte, store_word.
802 Tue May 20 10:21:51 1997 Andrew Cagney <cagney@b1.cygnus.com>
804 * interp.c (sim_open): Add callback to arguments.
805 (sim_set_callbacks): Delete SIM_DESC argument.
807 Mon May 19 13:54:22 1997 Jeffrey A Law (law@cygnus.com)
809 * interp.c (dispatch): Make this an inline function.
811 * simops.c (syscall): Use callback->write regardless of
812 what file descriptor we're writing too.
814 Sun May 18 16:46:31 1997 Jeffrey A Law (law@cygnus.com)
816 * interp.c (load_mem_big): Remove function. It's now a macro
818 (compare_simops): New function.
819 (sim_open): Sort the Simops table before inserting entries
821 * mn10300_sim.h: Remove unused #defines.
822 (load_mem_big): Define.
824 Fri May 16 16:36:17 1997 Jeffrey A Law (law@cygnus.com)
826 * interp.c (load_mem): If we get a load from an out of range
828 (store_mem): Likewise for stores.
829 (max_mem): New variable.
831 Tue May 6 13:24:36 1997 Jeffrey A Law (law@cygnus.com)
833 * mn10300_sim.h: Fix ordering of bits in the PSW.
835 * interp.c: Improve hashing routine to avoid long list
836 traversals for common instructions. Add HASH_STAT support.
837 Rewrite opcode dispatch code using a big switch instead of
838 cascaded if/else statements. Avoid useless calls to load_mem.
840 Mon May 5 18:07:48 1997 Jeffrey A Law (law@cygnus.com)
842 * mn10300_sim.h (struct _state): Add space for mdrq register.
844 * simops.c: Don't abort for trap. Add support for the extended
845 instructions, "getx", "putx", "mulq", "mulqu", "sat16", "sat24",
848 Thu Apr 24 00:39:51 1997 Doug Evans <dje@canuck.cygnus.com>
850 * configure: Regenerated to track ../common/aclocal.m4 changes.
852 Fri Apr 18 14:04:04 1997 Andrew Cagney <cagney@b1.cygnus.com>
854 * interp.c (sim_stop): Add stub function.
856 Thu Apr 17 03:26:59 1997 Doug Evans <dje@canuck.cygnus.com>
858 * Makefile.in (SIM_OBJS): Add sim-load.o.
859 * interp.c (sim_kind, myname): New static locals.
860 (sim_open): Set sim_kind, myname. Ignore -E arg.
861 (sim_load): Return SIM_RC. New arg abfd. Call sim_load_file to
862 load file into simulator. Set start address from bfd.
863 (sim_create_inferior): Return SIM_RC. Delete arg start_address.
865 Wed Apr 16 19:30:44 1997 Andrew Cagney <cagney@b1.cygnus.com>
867 * simops.c (OP_F020): SYS_execv, SYS_time, SYS_times, SYS_utime
868 only include if implemented by host.
869 (OP_F020): Typecast arg passed to time function;
871 Mon Apr 7 23:57:49 1997 Jeffrey A Law (law@cygnus.com)
873 * simops.c (syscall): Handle new mn10300 calling conventions.
875 Mon Apr 7 15:45:02 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
877 * configure: Regenerated to track ../common/aclocal.m4 changes.
880 Fri Apr 4 20:02:37 1997 Ian Lance Taylor <ian@cygnus.com>
882 * Makefile.in: Change mn10300-opc.o to m10300-opc.o, to match
883 corresponding change in opcodes directory.
885 Wed Apr 2 15:06:28 1997 Doug Evans <dje@canuck.cygnus.com>
887 * interp.c (sim_open): New arg `kind'.
889 * configure: Regenerated to track ../common/aclocal.m4 changes.
891 Wed Apr 2 14:34:19 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
893 * configure: Regenerated to track ../common/aclocal.m4 changes.
895 Thu Mar 20 11:58:02 1997 Jeffrey A Law (law@cygnus.com)
897 * simops.c: Fix register extraction for a two "movbu" variants.
898 Somewhat simplify "sub" instructions.
899 Correctly sign extend operands for "mul". Put the correct
900 half of the result in MDR for "mul" and "mulu".
901 Implement remaining instructions.
902 Tweak opcode for "syscall".
904 Tue Mar 18 14:21:21 1997 Jeffrey A Law (law@cygnus.com)
906 * simops.c: Do syscall emulation in "syscall" instruction. Add
907 dummy "trap" instruction.
909 Wed Mar 19 01:14:00 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
911 * configure: Regenerated to track ../common/aclocal.m4 changes.
913 Mon Mar 17 15:10:07 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
915 * configure: Re-generate.
917 Fri Mar 14 10:34:11 1997 Michael Meissner <meissner@cygnus.com>
919 * configure: Regenerate to track ../common/aclocal.m4 changes.
921 Thu Mar 13 12:54:45 1997 Doug Evans <dje@canuck.cygnus.com>
923 * interp.c (sim_open): New SIM_DESC result. Argument is now
925 (other sim_*): New SIM_DESC argument.
927 Wed Mar 12 15:04:00 1997 Jeffrey A Law (law@cygnus.com)
929 * simops.c: Fix carry bit computation for "add" instructions.
931 * simops.c: Fix typos in bset insns. Fix arguments to store_mem
932 for bset imm8,(d8,an) and bclr imm8,(d8,an).
934 Wed Mar 5 15:00:10 1997 Jeffrey A Law (law@cygnus.com)
936 * simops.c: Fix register references when computing Z and N bits
939 Tue Feb 4 13:33:30 1997 Doug Evans <dje@canuck.cygnus.com>
941 * Makefile.in (@COMMON_MAKEFILE_FRAG): Use
942 COMMON_{PRE,POST}_CONFIG_FRAG instead.
943 * configure.in: sinclude ../common/aclocal.m4.
944 * configure: Regenerated.
946 Fri Jan 24 10:47:25 1997 Jeffrey A Law (law@cygnus.com)
948 * interp.c (init_system): Allocate 2^19 bytes of space for the
951 Thu Jan 23 11:46:23 1997 Stu Grossman (grossman@critters.cygnus.com)
953 * configure configure.in Makefile.in: Update to new configure
954 scheme which is more compatible with WinGDB builds.
955 * configure.in: Improve comment on how to run autoconf.
956 * configure: Re-run autoconf to get new ../common/aclocal.m4.
957 * Makefile.in: Use autoconf substitution to install common
960 Tue Jan 21 15:03:04 1997 Jeffrey A Law (law@cygnus.com)
962 * simops.c: Undo last change to "rol" and "ror", original code
965 Thu Jan 16 11:28:14 1997 Jeffrey A Law (law@cygnus.com)
967 * simops.c: Fix "rol" and "ror".
969 Wed Jan 15 06:45:58 1997 Jeffrey A Law (law@cygnus.com)
971 * simops.c: Fix typo in last change.
973 Mon Jan 13 13:22:35 1997 Jeffrey A Law (law@cygnus.com)
975 * simops.c: Use REG macros in few places not using them yet.
977 Mon Jan 6 16:21:19 1997 Jeffrey A Law (law@cygnus.com)
979 * mn10300_sim.h (struct _state): Fix number of registers!
981 Tue Dec 31 16:20:41 1996 Jeffrey A Law (law@cygnus.com)
983 * mn10300_sim.h (struct _state): Put all registers into a single
984 array to make gdb implementation easier.
985 (REG_*): Add definitions for all registers in the state array.
986 (SEXT32, SEXT40, SEXT44, SEXT60): Remove unused macros.
987 * simops.c: Related changes.
989 Wed Dec 18 10:10:45 1996 Jeffrey A Law (law@cygnus.com)
991 * interp.c (sim_resume): Handle 0xff as a single byte insn.
993 * simops.c: Fix overflow computation for "add" and "inc"
996 Mon Dec 16 10:03:52 1996 Jeffrey A Law (law@cygnus.com)
998 * simops.c: Handle "break" instruction.
1000 * simops.c: Fix restoring the PC for "ret" and "retf" instructions.
1002 Wed Dec 11 09:53:10 1996 Jeffrey A Law (law@cygnus.com)
1004 * gencode.c (write_opcodes): Also write out the format of the
1006 * mn10300_sim.h (simops): Add "format" field.
1007 * interp.c (sim_resume): Deal with endianness issues here.
1009 Tue Dec 10 15:05:37 1996 Jeffrey A Law (law@cygnus.com)
1011 * simops.c (REG0_4): Define.
1012 Use REG0_4 for indexed loads/stores.
1014 Sat Dec 7 09:50:28 1996 Jeffrey A Law (law@cygnus.com)
1016 * simops.c (REG0_16): Fix typo.
1018 Fri Dec 6 14:13:34 1996 Jeffrey A Law (law@cygnus.com)
1020 * simops.c: Call abort for any instruction that's not currently
1023 * simops.c: Define accessor macros to extract register
1024 values from instructions. Use them consistently.
1026 * interp.c: Delete unused global variable "OP".
1027 (sim_resume): Remove unused variable "opcode".
1028 * simops.c: Fix some uninitialized variable problems, add
1029 parens to fix various -Wall warnings.
1031 * gencode.c (write_header): Add "insn" and "extension" arguments
1032 to the OP_* declarations.
1033 (write_template): Similarly for function templates.
1034 * interp.c (insn, extension): Remove global variables. Instead
1035 pass them as arguments to the OP_* functions.
1036 * mn10300_sim.h: Remove decls for "insn" and "extension".
1037 * simops.c (OP_*): Accept "insn" and "extension" as arguments
1038 instead of using globals.
1040 Thu Dec 5 22:26:31 1996 Jeffrey A Law (law@cygnus.com)
1042 * simops.c: Fix typos in "mov am,(d16,an)" and "mov am,(d32,an)"
1044 * simops.c: Fix thinkos in last change to "inc dn".
1046 Wed Dec 4 10:57:53 1996 Jeffrey A Law (law@cygnus.com)
1048 * simops.c: "add imm,sp" does not effect the condition codes.
1049 "inc dn" does effect the condition codes.
1051 Tue Dec 3 17:37:45 1996 Jeffrey A Law (law@cygnus.com)
1053 * simops.c: Treat both operands as signed values for
1056 * simops.c: Fix simulation of division instructions.
1057 Fix typos/thinkos in several "cmp" and "sub" instructions.
1059 Mon Dec 2 12:31:40 1996 Jeffrey A Law (law@cygnus.com)
1061 * simops.c: Fix carry bit handling in "sub" and "cmp"
1064 * simops.c: Fix "mov imm8,an" and "mov imm16,dn".
1066 Sun Dec 1 16:05:42 1996 Jeffrey A Law (law@cygnus.com)
1068 * simops.c: Fix overflow computation for many instructions.
1070 * simops.c: Fix "mov dm, an", "movbu dm, (an)", and "movhu dm, (an)".
1072 * simops.c: Fix "mov am, dn".
1074 * simops.c: Fix more bugs in "add imm,an" and
1077 Wed Nov 27 09:20:42 1996 Jeffrey A Law (law@cygnus.com)
1079 * simops.c: Fix bugs in "movm" and "add imm,an".
1081 * simops.c: Don't lose the upper 24 bits of the return
1082 pointer in "call" and "calls" instructions. Rough cut
1083 at emulated system calls.
1085 * simops.c: Implement the remaining 5, 6 and 7 byte instructions.
1087 * simops.c: Implement remaining 4 byte instructions.
1089 * simops.c: Implement remaining 3 byte instructions.
1091 * simops.c: Implement remaining 2 byte instructions. Call
1092 abort for instructions we're not implementing now.
1094 Tue Nov 26 15:43:41 1996 Jeffrey A Law (law@cygnus.com)
1096 * simops.c: Implement lots of random instructions.
1098 * simops.c: Implement "movm" and "bCC" insns.
1100 * mn10300_sim.h (_state): Add another register (MDR).
1102 * simops.c: Implement "cmp", "calls", "rets", "jmp" and
1103 a few additional random insns.
1105 * mn10300_sim.h (PSW_*): Define for CC status tracking.
1106 (REG_D0, REG_A0, REG_SP): Define.
1107 * simops.c: Implement "add", "addc" and a few other random
1110 * gencode.c, interp.c: Snapshot current simulator code.
1112 Mon Nov 25 12:46:38 1996 Jeffrey A Law (law@cygnus.com)
1114 * Makefile.in, config.in, configure, configure.in: New files.
1115 * gencode.c, interp.c, mn10300_sim.h, simops.c: New files.