1 2000-03-03 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
3 * Makefile.in (IGEN_INSN): Added am33.igen.
5 Thu Sep 2 18:15:53 1999 Andrew Cagney <cagney@b1.cygnus.com>
7 * configure: Regenerated to track ../common/aclocal.m4 changes.
9 Tue Jul 13 13:26:20 1999 Andrew Cagney <cagney@b1.cygnus.com>
11 * interp.c: Clarify error message reporting an unknown board.
13 1999-05-08 Felix Lee <flee@cygnus.com>
15 * configure: Regenerated to track ../common/aclocal.m4 changes.
17 1999-04-16 Frank Ch. Eigler <fche@cygnus.com>
19 * interp.c (program_interrupt): Detect undesired recursion using
20 static flag. Set NMIRC register's SYSEF flag during
21 --board=stdeval1 mode.
22 * dv-mn103-int.c (write_icr): Add backdoor address to allow CPU to
25 1999-04-02 Keith Seitz <keiths@cygnus.com>
27 * Makefile.in (SIM_EXTRA_CFLAGS): Define a POLL_QUIT_INTERVAL
28 for use in the simulator so that the poll_quit callback is
31 Tue Mar 9 21:26:41 1999 Andrew Cagney <cagney@b1.cygnus.com>
33 * dv-mn103int.c (mn103int_ioctl): Return something.
34 * dv-mn103tim.c (write_tm6md): GCC suggested parentheses around &&
37 Tue Feb 16 23:57:17 1999 Jeffrey A Law (law@cygnus.com)
39 * mn10300.igen (retf): Fix return address computation and store
40 the new pc value into nia.
42 1998-12-29 Frank Ch. Eigler <fche@cygnus.com>
44 * Makefile.in (WITH_COMMON_OBJS): Build also dv-sockser.o.
45 * interp.c (sim_open): Add stub mn103002 cache control memory regions.
46 Set OPERATING_ENVIRONMENT on "stdeval1" board.
47 (mn10300_core_signal): New function to intercept memory errors.
48 (program_interrupt): New function to dispatch to exception vector
49 (mn10300_exception_*): New functions to snapshot pre/post exception
51 * sim-main.h (SIM_CORE_SIGNAL): Define hook - call mn10300_core_signal.
52 (SIM_ENGINE_HALT_HOOK): Do nothing.
53 (SIM_CPU_EXCEPTION*): Define hooks to call mn10300_cpu_exception*().
54 (_sim_cpu): Add exc_* fields to store register value snapshots.
55 * dv-mn103ser.c (*): Support dv-sockser backend for UART I/O.
56 Various endianness and warning fixes.
57 * mn10300.igen (illegal): Call program_interrupt on error.
58 (break): Call program_interrupt on breakpoint
60 Several changes from <janczyn@cygnus.com> and <cagney@cygnus.com>
62 * dv-mn103int.c (mn103int_ioctl): New function for NMI
63 generation. (mn103int_finish): Install it as ioctl handler.
64 * dv-mn103tim.c: Support timer 6 specially. Endianness fixes.
66 Wed Oct 14 12:11:05 1998 Jeffrey A Law (law@cygnus.com)
68 * am33.igen: Allow autoincrement stores using the same register
69 for source and destination operands.
71 Mon Aug 31 10:19:55 1998 Jeffrey A Law (law@cygnus.com)
73 * am33.igen: Reverse HI/LO outputs of 4 operand "mul" and "mulu".
75 Fri Aug 28 14:40:49 1998 Joyce Janczyn <janczyn@cygnus.com>
77 * interp.c (sim_open): Check for invalid --board option, fix
78 indentation, allocate memory for mem control and DMA regs.
80 Wed Aug 26 09:29:38 1998 Joyce Janczyn <janczyn@cygnus.com>
82 * mn10300.igen (div,divu): Fix divide instructions so divide by 0
83 behaves like the hardware.
85 Mon Aug 24 11:50:09 1998 Joyce Janczyn <janczyn@cygnus.com>
87 * sim-main.h (SIM_HANDLES_LMA): Define SIM_HANDLES_LMA.
89 Wed Aug 12 12:36:07 1998 Jeffrey A Law (law@cygnus.com)
91 * am33.igen: Handle case where first DSP operation modifies a
92 register used in the second DSP operation correctly.
94 Tue Jul 28 10:10:25 1998 Jeffrey A Law (law@cygnus.com)
96 * am33.igen: Detect cases where two operands must not match for
99 Mon Jul 27 12:04:17 1998 Jeffrey A Law (law@cygnus.com)
101 * am33.igen: Detect cases where two operands must not match in
102 non-DSP instructions.
104 Fri Jul 24 18:15:21 1998 Joyce Janczyn <janczyn@cygnus.com>
106 * op_utils.c (do_syscall): Rewrite to use common/syscall.c.
107 (syscall_read_mem, syscall_write_mem): New functions for syscall
109 * mn10300_sim.h: Add prototypes for syscall_read_mem and
111 * mn10300.igen: Change C++ style comments to C style comments.
112 Check for divide by zero in div and divu ops.
114 Fri Jul 24 12:49:28 1998 Jeffrey A Law (law@cygnus.com)
116 * am33.igen (translate_xreg): New function. Use it as needed.
118 Thu Jul 23 10:05:28 1998 Jeffrey A Law (law@cygnus.com)
120 * am33.igen: Add some missing instructions.
122 * am33.igen: Autoincrement loads/store fixes.
124 Tue Jul 21 09:48:14 1998 Jeffrey A Law (law@cygnus.com)
126 * am33.igen: Add mov_lCC DSP instructions.
128 * am33.igen: Add most am33 DSP instructions.
130 Thu Jul 9 10:06:55 1998 Jeffrey A Law (law@cygnus.com)
132 * mn10300.igen: Fix Z bit for addc and subc instructions.
133 Minor fixes in multiply/divide patterns.
135 * am33.igen: Add missing mul[u] imm32,Rn. Fix condition code
136 handling for many instructions. Fix sign extension for some
139 * am33.igen: Fix Z bit for remaining addc/subc instructions.
140 Do not sign extend immediate for mov imm,XRn.
141 More random mul, mac & div fixes.
142 Remove some unused variables.
143 Sign extend 24bit displacement in memory addresses.
145 * am33.igen: Fix Z bit for addc Rm,Rn and subc Rm,Rn. Various
146 fixes to 2 register multiply, divide and mac instructions. Set
147 Z,N correctly for sat16. Sign extend 24 bit immediate for add,
148 and sub instructions.
150 * am33.igen: Add remaining non-DSP instructions.
152 Wed Jul 8 16:29:12 1998 Jeffrey A Law (law@cygnus.com)
154 * am33.igen (translate_rreg): New function. Use it as appropriate.
156 * am33.igen: More am33 instructions. Fix "div".
158 Mon Jul 6 15:39:22 1998 Jeffrey A Law (law@cygnus.com)
160 * mn10300.igen: Add am33 support.
162 * Makefile.in: Use multi-sim to support both a mn10300 and am33
165 * am33.igen: Add many more am33 instructions.
167 Wed Jul 1 17:07:09 1998 Jeffrey A Law (law@cygnus.com)
169 * mn10300_sim.h (FETCH24): Define.
171 * mn10300_sim.h: Add defines for some registers found on the AM33.
172 * am33.igen: New file with some am33 support.
174 Tue Jun 30 11:23:20 1998 Jeffrey A Law (law@cygnus.com)
176 * mn10300_sim.h: Include bfd.h
177 (struct state): Add more room for processor specific registers.
180 Thu Jun 25 10:12:03 1998 Joyce Janczyn <janczyn@cygnus.com>
182 * dv-mn103tim.c: Include sim-assert.h
183 * dv-mn103ser.c (do_polling_event): Check for incoming data on
184 serial line and schedule next polling event.
185 (read_status_reg): schedule events to check for incoming data on
186 serial line and issue interrupt if necessary.
188 Fri Jun 19 16:47:27 1998 Joyce Janczyn <janczyn@cygnus.com>
190 * interp.c (sim_open): hook up serial 1 and 2 ports properly (typo).
192 Fri Jun 19 11:59:26 1998 Joyce Janczyn <janczyn@cygnus.com>
194 * interp.c (board): Rename am32 to stdeval1 as this is the name
195 consistently used to refer to the mn1030002 board.
197 Thu June 18 14:37:14 1998 Joyce Janczyn <janczyn@cygnus.com>
198 * interp.c (sim_open): Fix typo in address of EXTMD register
199 (0x34000280, not 0x3400280).
201 Wed Jun 17 18:00:18 1998 Jeffrey A Law (law@cygnus.com)
203 * simops.c (syscall): Handle change in opcode # for syscall.
204 * mn10300.igen (syscall): Likewise.
206 Tue June 16 09:36:21 1998 Joyce Janczyn <janczyn@cygnus.com>
207 * dv-mn103int.c (mn103int_finish): Regular interrupts (not NMI or
208 reset) are not enabled on reset.
210 Sun June 14 17:04:00 1998 Joyce Janczyn <janczyn@cygnus.com>
211 * dv-mn103iop.c (write_*_reg): Check for attempt to write r/o
213 * dv-mn103ser.c: Fill in methods for reading and writing to serial
215 * interp.c (sim_open): Make the serial device a polling device.
217 Fri June 12 16:24:00 1998 Joyce Janczyn <janczyn@cygnus.com>
218 * dv-mn103iop.c: New file for handling am32 io ports.
219 * configure.in: Add mn103iop to hw_device list.
220 * configure: Re-generate.
221 * interp.c (sim_open): Create io port device.
223 Wed June 10 14:34:00 1998 Joyce Janczyn <janczyn@cygnus.com>
224 * dv-mn103int.c (external_group): Use enumerated types to access
225 correct group addresses.
226 * dv-mn103tim.c (do_counter_event): Underflow of cascaded timer
227 triggers an interrupt on the higher-numbered timer's port.
229 Mon June 8 13:30:00 1998 Joyce Janczyn <janczyn@cygnus.com>
230 * interp.c: (mn10300_option_handler): New function parses arguments
232 * (board): Add --board option for specifying am32.
233 * (sim_open): Create new timer and serial devices and control
234 configuration of other am32 devices via board option.
235 * dv-mn103tim.c, dv-mn103ser.c: New files for timers and serial devices.
236 * dv-mn103cpu.c: Fix typos in opening comments.
237 * dv-mn103int.c: Adjust interrupt controller settings for am32 instead of am30.
238 * configure.in: Add mn103tim and mn103ser to hw_device list.
239 * configure: Re-generate.
241 Mon May 25 20:50:35 1998 Andrew Cagney <cagney@b1.cygnus.com>
243 * dv-mn103int.c, dv-mn103cpu.c: Rename *_callback to *_method.
245 * dv-mn103cpu.c, dv-mn103int.c: Include hw-main.h and
246 sim-main.h. Declare a struct hw_descriptor instead of struct
247 hw_device_descriptor.
249 Mon May 25 17:33:33 1998 Andrew Cagney <cagney@b1.cygnus.com>
251 * dv-mn103cpu.c (struct mn103cpu): Change type of pending_handler
254 Fri May 22 12:17:41 1998 Andrew Cagney <cagney@b1.cygnus.com>
256 * configure.in (SIM_AC_OPTION_HARDWARE): Add argument "yes".
258 Wed May 6 13:29:06 1998 Andrew Cagney <cagney@b1.cygnus.com>
260 * interp.c (sim_open): Create a polling PAL device.
262 Fri May 1 16:39:15 1998 Andrew Cagney <cagney@b1.cygnus.com>
264 * dv-mn103int.c (mn103int_port_event):
265 (mn103int_port_event):
266 (mn103int_io_read_buffer):
267 (mn103int_io_write_buffer):
269 * dv-mn103cpu.c (deliver_mn103cpu_interrupt): Drop CPU/CIA args.
270 (mn103cpu_port_event): Ditto.
271 (mn103cpu_io_read_buffer): Ditto.
272 (mn103cpu_io_write_buffer): Ditto.
274 Tue Apr 28 18:33:31 1998 Geoffrey Noer <noer@cygnus.com>
276 * configure: Regenerated to track ../common/aclocal.m4 changes.
278 Sun Apr 26 15:31:55 1998 Tom Tromey <tromey@creche>
280 * configure: Regenerated to track ../common/aclocal.m4 changes.
283 Sun Apr 26 15:19:55 1998 Tom Tromey <tromey@cygnus.com>
285 * acconfig.h: New file.
286 * configure.in: Reverted change of Apr 24; use sinclude again.
288 Fri Apr 24 14:16:40 1998 Tom Tromey <tromey@creche>
290 * configure: Regenerated to track ../common/aclocal.m4 changes.
293 Fri Apr 24 11:19:07 1998 Tom Tromey <tromey@cygnus.com>
295 * configure.in: Don't call sinclude.
297 Tue Apr 14 10:03:02 1998 Andrew Cagney <cagney@b1.cygnus.com>
299 * mn10300_sim.h: Declare all functions in op_utils.c using
302 * sim-main.c: New file. Include op_utils.c.
304 * mn10300.igen (mov, cmp): Use new igen operators `!' and `=' to
305 differentiate between MOV/CMP immediate/register instructions.
307 * configure.in (SIM_AC_OPTION_INLINE): Add and enable.
308 * configure: Regenerate.
310 Sat Apr 4 20:36:25 1998 Andrew Cagney <cagney@b1.cygnus.com>
312 * configure: Regenerated to track ../common/aclocal.m4 changes.
314 Fri Mar 27 16:15:52 1998 Andrew Cagney <cagney@b1.cygnus.com>
316 * interp.c (hw): Delete variable, moved to SIM_DESC.
317 (sim_open): Delete calls to hw_tree_create, hw_tree_finish.
318 Handled by sim-module.
319 (sim_open): Do not anotate tree with trace properties, handled by
321 (sim_open): Call sim_hw_parse instead of hw_tree_parse.
323 * configure: Regenerated to track ../common/aclocal.m4 changes.
325 Thu Mar 26 20:46:18 1998 Stu Grossman <grossman@bhuna.cygnus.co.uk>
327 * dv-mn103cpu.c (deliver_mn103cpu_interrupt): Save the entire PC
328 on the stack when delivering interrupts (not just the lower
330 * mn10300.igen (mov (Di,Am),Dn): Fix decode. Registers were
331 specified in the wrong order.
333 Fri Mar 27 00:56:40 1998 Andrew Cagney <cagney@b1.cygnus.com>
335 * dv-mn103cpu.c (deliver_mn103cpu_interrupt): Stop loss of
336 succeeding interrupts, clear pending_handler when the handler
339 Thu Mar 26 10:11:01 1998 Stu Grossman <grossman@bhuna.cygnus.co.uk>
341 * Makefile.in (tmp-igen): Prefix all usage of move-if-change
342 script with $(SHELL) to make NT native builds happy.
343 * configure: Regenerate because of change to ../common/aclocal.m4.
345 Thu Mar 26 11:22:31 1998 Andrew Cagney <cagney@b1.cygnus.com>
347 * configure.in: Make --enable-sim-common the default.
348 * configure: Re-generate.
350 * sim-main.h (CIA_GET, CIA_SET): Save/restore current instruction
351 address into Sate.regs[REG_PC] instead of common struct.
353 Wed Mar 25 17:42:00 1998 Joyce Janczyn <janczyn@cygnus.com>
355 * mn10300.igen (cmp imm8,An): Do not sign extend imm8 value.
357 Wed Mar 25 12:08:00 1998 Joyce Janczyn <janczyn@cygnus.com>
359 * simops.c (OP_F0FD): Initialise variable 'sp'.
361 Thu Mar 26 00:21:32 1998 Andrew Cagney <cagney@b1.cygnus.com>
363 * dv-mn103int.c (decode_group): A group register every 4 bytes not
365 (write_icr): Rewrite equation updating request field.
366 (read_iagr): Fix check that interrupt is still pending.
368 Wed Mar 25 16:14:50 1998 Andrew Cagney <cagney@b1.cygnus.com>
370 * interp.c (sim_open): Tidy up device creation.
372 * dv-mn103int.c (mn103int_port_event): Drive NMI with non-zero
374 (mn103int_io_read_buffer): Convert absolute address to register
376 (read_icr, write_icr): Convert block offset into group offset.
378 Wed Mar 25 15:08:49 1998 Andrew Cagney <cagney@b1.cygnus.com>
380 * interp.c (sim_open): Create second 1mb memory region at
382 (sim_open): Create a device tree.
384 (do_interrupt): Delete, needs to use dv-mn103cpu.c
386 * dv-mn103int.c, dv-mn103cpu.c: New files.
388 Wed Mar 25 08:47:38 1998 Andrew Cagney <cagney@b1.cygnus.com>
390 * mn10300_sim.h (EXTRACT_PSW_LM, INSERT_PSW_LM, PSW_IE, PSW_LM):
394 Wed Mar 25 12:35:29 1998 Andrew Cagney <cagney@b1.cygnus.com>
396 * configure: Regenerated to track ../common/aclocal.m4 changes.
398 Wed Mar 25 10:24:48 1998 Andrew Cagney <cagney@b1.cygnus.com>
400 * interp.c (sim-options.h): Include.
401 (sim_kind, myname): Declare when not using common framework.
403 * mn10300_sim.h (do_syscall, generic*): Provide prototypes for
404 functions found in op_utils.c
406 * mn10300.igen (add): Discard unused variables.
408 * configure, config.in: Re-generate with autoconf 2.12.1.
410 Tue Mar 24 15:27:00 1998 Joyce Janczyn <janczyn@cygnus.com>
412 Add support for --enable-sim-common option.
413 * Makefile.in (WITHOUT_COMMON_OBJS): Files included if
414 ! --enable-sim-common
415 (WITH_COMMON_OBJS): Files included if --enable-sim-common.
416 (MN10300_OBJS,MN10300_INTERP_DEP): New variables.
418 ({WITHOUT,WITH}_COMMON_RUN_OBJS,SIM_RUN_OBJS): New variables.
419 (SIM_EXTRA_CFLAGS): New variable.
420 (clean-extra): Clean up igen files.
421 (../igen/igen,clean-igen,tmp-igen): New rules.
422 * configure.in: Add support for common framework via
424 * configure: Regenerate.
425 * interp.c: #include sim-main if WITH_COMMON, not mn10300_sim.h.
426 (hash,dispatch,sim_size): Don't compile if ! WITH_COMMON.
427 (init_system,sim_write,compare_simops): Likewise.
428 (sim_set_profile,sim_set_profile_size): Likewise.
429 (sim_stop,sim_resume,sim_trace,sim_info): Likewise.
430 (sim_set_callbacks,sim_stop_reason,sim_read,sim_load): Likewise.
431 (enum interrupt_type): New enum.
432 (interrupt_names): New global.
433 (do_interrupt): New function.
434 (sim_open): Define differently if WITH_COMMON.
435 (sim_close,sim_create_inferior,sim_do_command): Likewise.
436 * mn10300_sim.h ({load,store}_{byte,half,word}): Define versions
438 * mn10300.igen: New file.
439 * mn10300.dc: New file.
440 * op_utils.c: New file.
441 * sim-main.h: New file.
443 Wed Mar 18 12:38:12 1998 Andrew Cagney <cagney@b1.cygnus.com>
445 * configure: Regenerated to track ../common/aclocal.m4 changes.
447 Fri Feb 27 18:36:04 1998 Jeffrey A Law (law@cygnus.com)
449 * simops.c (inc): Fix typo.
451 Wed Feb 25 01:59:29 1998 Jeffrey A Law (law@cygnus.com)
453 * simops.c (signed multiply instructions): Cast input operands to
454 signed32 before casting them to signed64 so that the sign bit
455 is propagated properly.
457 Mon Feb 23 20:23:19 1998 Mark Alexander <marka@cygnus.com>
459 * Makefile.in: Last change was bad. Define NL_TARGET
460 so that targ-vals.h will be used instead of syscall.h.
461 * simops.c: Use targ-vals.h instead of syscall.h.
462 (OP_F020): Disable unsupported system calls.
464 Mon Feb 23 09:44:38 1998 Mark Alexander <marka@cygnus.com>
466 * Makefile.in: Get header files from libgloss/mn10300/sys.
468 Sun Feb 22 16:02:24 1998 Jeffrey A Law (law@cygnus.com)
470 * simops.c: Include sim-types.h.
472 Wed Feb 18 13:07:08 1998 Jeffrey A Law (law@cygnus.com)
474 * simops.c (multiply instructions): Cast input operands to a
475 signed64/unsigned64 type as appropriate.
477 Tue Feb 17 12:47:16 1998 Andrew Cagney <cagney@b1.cygnus.com>
479 * interp.c (sim_store_register, sim_fetch_register): Pass in
480 length parameter. Return -1.
482 Sun Feb 1 16:47:51 1998 Andrew Cagney <cagney@b1.cygnus.com>
484 * configure: Regenerated to track ../common/aclocal.m4 changes.
486 Sat Jan 31 18:15:41 1998 Andrew Cagney <cagney@b1.cygnus.com>
488 * configure: Regenerated to track ../common/aclocal.m4 changes.
490 Mon Jan 19 22:26:29 1998 Doug Evans <devans@seba>
492 * configure: Regenerated to track ../common/aclocal.m4 changes.
494 Mon Dec 15 23:17:11 1997 Andrew Cagney <cagney@b1.cygnus.com>
496 * configure: Regenerated to track ../common/aclocal.m4 changes.
499 Thu Dec 4 09:21:05 1997 Doug Evans <devans@canuck.cygnus.com>
501 * configure: Regenerated to track ../common/aclocal.m4 changes.
503 Tue Nov 11 10:38:52 1997 Jeffrey A Law (law@cygnus.com)
505 * simops.c (call:16 call:32): Stack adjustment is determined solely
508 Wed Oct 22 14:43:00 1997 Andrew Cagney <cagney@b1.cygnus.com>
510 * interp.c (sim_load): Pass lma_p and sim_write args to
513 Tue Oct 21 10:12:03 1997 Jeffrey A Law (law@cygnus.com)
515 * simops.c: Correctly handle register restores for "ret" and "retf"
518 Fri Oct 3 09:28:00 1997 Andrew Cagney <cagney@b1.cygnus.com>
520 * configure: Regenerated to track ../common/aclocal.m4 changes.
522 Wed Sep 24 17:38:57 1997 Andrew Cagney <cagney@b1.cygnus.com>
524 * configure: Regenerated to track ../common/aclocal.m4 changes.
526 Tue Sep 23 11:04:38 1997 Andrew Cagney <cagney@b1.cygnus.com>
528 * configure: Regenerated to track ../common/aclocal.m4 changes.
530 Mon Sep 22 11:46:20 1997 Andrew Cagney <cagney@b1.cygnus.com>
532 * configure: Regenerated to track ../common/aclocal.m4 changes.
534 Fri Sep 19 17:45:25 1997 Andrew Cagney <cagney@b1.cygnus.com>
536 * configure: Regenerated to track ../common/aclocal.m4 changes.
538 Mon Sep 15 17:36:15 1997 Andrew Cagney <cagney@b1.cygnus.com>
540 * configure: Regenerated to track ../common/aclocal.m4 changes.
542 Thu Sep 4 17:21:23 1997 Doug Evans <dje@seba>
544 * configure: Regenerated to track ../common/aclocal.m4 changes.
546 Wed Aug 27 18:13:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
548 * configure: Regenerated to track ../common/aclocal.m4 changes.
551 Tue Aug 26 10:41:07 1997 Andrew Cagney <cagney@b1.cygnus.com>
553 * interp.c (sim_kill): Delete.
554 (sim_create_inferior): Add ABFD argument.
555 (sim_load): Move setting of PC from here.
556 (sim_create_inferior): To here.
558 Mon Aug 25 17:50:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
560 * configure: Regenerated to track ../common/aclocal.m4 changes.
563 Mon Aug 25 16:14:44 1997 Andrew Cagney <cagney@b1.cygnus.com>
565 * interp.c (sim_open): Add ABFD argument.
567 Tue Jun 24 13:46:20 1997 Jeffrey A Law (law@cygnus.com)
569 * interp.c (sim_resume): Clear State.exited.
570 (sim_stop_reason): If State.exited is nonzero, then indicate that
571 the simulator exited instead of stopped.
572 * mn10300_sim.h (struct _state): Add exited field.
573 * simops.c (syscall): Set State.exited for SYS_exit.
575 Wed Jun 11 22:07:56 1997 Jeffrey A Law (law@cygnus.com)
577 * simops.c: Fix thinko in last change.
579 Tue Jun 10 12:31:32 1997 Jeffrey A Law (law@cygnus.com)
581 * simops.c: "call" stores the callee saved registers into the
582 stack! Update the stack pointer properly when done with
585 * simops.c: Fix return address computation for "call" instructions.
587 Thu May 22 01:43:11 1997 Jeffrey A Law (law@cygnus.com)
589 * interp.c (sim_open): Fix typo.
591 Wed May 21 23:27:58 1997 Jeffrey A Law (law@cygnus.com)
593 * interp.c (sim_resume): Add missing case in big switch
594 statement (for extb instruction).
596 Tue May 20 17:51:30 1997 Jeffrey A Law (law@cygnus.com)
598 * interp.c: Replace all references to load_mem and store_mem
599 with references to load_byte, load_half, load_3_byte, load_word
600 and store_byte, store_half, store_3_byte, store_word.
601 (INLINE): Delete definition.
602 (load_mem_big): Likewise.
603 (max_mem): Make it global.
604 (dispatch): Make this function inline.
605 (load_mem, store_mem): Delete functions.
606 * mn10300_sim.h (INLINE): Define.
607 (RLW): Delete unused definition.
608 (load_mem, store_mem): Delete declarations.
609 (load_mem_big): New definition.
610 (load_byte, load_half, load_3_byte, load_word): New functions.
611 (store_byte, store_half, store_3_byte, store_word): New functions.
612 * simops.c: Replace all references to load_mem and store_mem
613 with references to load_byte, load_half, load_3_byte, load_word
614 and store_byte, store_half, store_3_byte, store_word.
616 Tue May 20 10:21:51 1997 Andrew Cagney <cagney@b1.cygnus.com>
618 * interp.c (sim_open): Add callback to arguments.
619 (sim_set_callbacks): Delete SIM_DESC argument.
621 Mon May 19 13:54:22 1997 Jeffrey A Law (law@cygnus.com)
623 * interp.c (dispatch): Make this an inline function.
625 * simops.c (syscall): Use callback->write regardless of
626 what file descriptor we're writing too.
628 Sun May 18 16:46:31 1997 Jeffrey A Law (law@cygnus.com)
630 * interp.c (load_mem_big): Remove function. It's now a macro
632 (compare_simops): New function.
633 (sim_open): Sort the Simops table before inserting entries
635 * mn10300_sim.h: Remove unused #defines.
636 (load_mem_big): Define.
638 Fri May 16 16:36:17 1997 Jeffrey A Law (law@cygnus.com)
640 * interp.c (load_mem): If we get a load from an out of range
642 (store_mem): Likewise for stores.
643 (max_mem): New variable.
645 Tue May 6 13:24:36 1997 Jeffrey A Law (law@cygnus.com)
647 * mn10300_sim.h: Fix ordering of bits in the PSW.
649 * interp.c: Improve hashing routine to avoid long list
650 traversals for common instructions. Add HASH_STAT support.
651 Rewrite opcode dispatch code using a big switch instead of
652 cascaded if/else statements. Avoid useless calls to load_mem.
654 Mon May 5 18:07:48 1997 Jeffrey A Law (law@cygnus.com)
656 * mn10300_sim.h (struct _state): Add space for mdrq register.
658 * simops.c: Don't abort for trap. Add support for the extended
659 instructions, "getx", "putx", "mulq", "mulqu", "sat16", "sat24",
662 Thu Apr 24 00:39:51 1997 Doug Evans <dje@canuck.cygnus.com>
664 * configure: Regenerated to track ../common/aclocal.m4 changes.
666 Fri Apr 18 14:04:04 1997 Andrew Cagney <cagney@b1.cygnus.com>
668 * interp.c (sim_stop): Add stub function.
670 Thu Apr 17 03:26:59 1997 Doug Evans <dje@canuck.cygnus.com>
672 * Makefile.in (SIM_OBJS): Add sim-load.o.
673 * interp.c (sim_kind, myname): New static locals.
674 (sim_open): Set sim_kind, myname. Ignore -E arg.
675 (sim_load): Return SIM_RC. New arg abfd. Call sim_load_file to
676 load file into simulator. Set start address from bfd.
677 (sim_create_inferior): Return SIM_RC. Delete arg start_address.
679 Wed Apr 16 19:30:44 1997 Andrew Cagney <cagney@b1.cygnus.com>
681 * simops.c (OP_F020): SYS_execv, SYS_time, SYS_times, SYS_utime
682 only include if implemented by host.
683 (OP_F020): Typecast arg passed to time function;
685 Mon Apr 7 23:57:49 1997 Jeffrey A Law (law@cygnus.com)
687 * simops.c (syscall): Handle new mn10300 calling conventions.
689 Mon Apr 7 15:45:02 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
691 * configure: Regenerated to track ../common/aclocal.m4 changes.
694 Fri Apr 4 20:02:37 1997 Ian Lance Taylor <ian@cygnus.com>
696 * Makefile.in: Change mn10300-opc.o to m10300-opc.o, to match
697 corresponding change in opcodes directory.
699 Wed Apr 2 15:06:28 1997 Doug Evans <dje@canuck.cygnus.com>
701 * interp.c (sim_open): New arg `kind'.
703 * configure: Regenerated to track ../common/aclocal.m4 changes.
705 Wed Apr 2 14:34:19 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
707 * configure: Regenerated to track ../common/aclocal.m4 changes.
709 Thu Mar 20 11:58:02 1997 Jeffrey A Law (law@cygnus.com)
711 * simops.c: Fix register extraction for a two "movbu" variants.
712 Somewhat simplify "sub" instructions.
713 Correctly sign extend operands for "mul". Put the correct
714 half of the result in MDR for "mul" and "mulu".
715 Implement remaining instructions.
716 Tweak opcode for "syscall".
718 Tue Mar 18 14:21:21 1997 Jeffrey A Law (law@cygnus.com)
720 * simops.c: Do syscall emulation in "syscall" instruction. Add
721 dummy "trap" instruction.
723 Wed Mar 19 01:14:00 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
725 * configure: Regenerated to track ../common/aclocal.m4 changes.
727 Mon Mar 17 15:10:07 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
729 * configure: Re-generate.
731 Fri Mar 14 10:34:11 1997 Michael Meissner <meissner@cygnus.com>
733 * configure: Regenerate to track ../common/aclocal.m4 changes.
735 Thu Mar 13 12:54:45 1997 Doug Evans <dje@canuck.cygnus.com>
737 * interp.c (sim_open): New SIM_DESC result. Argument is now
739 (other sim_*): New SIM_DESC argument.
741 Wed Mar 12 15:04:00 1997 Jeffrey A Law (law@cygnus.com)
743 * simops.c: Fix carry bit computation for "add" instructions.
745 * simops.c: Fix typos in bset insns. Fix arguments to store_mem
746 for bset imm8,(d8,an) and bclr imm8,(d8,an).
748 Wed Mar 5 15:00:10 1997 Jeffrey A Law (law@cygnus.com)
750 * simops.c: Fix register references when computing Z and N bits
753 Tue Feb 4 13:33:30 1997 Doug Evans <dje@canuck.cygnus.com>
755 * Makefile.in (@COMMON_MAKEFILE_FRAG): Use
756 COMMON_{PRE,POST}_CONFIG_FRAG instead.
757 * configure.in: sinclude ../common/aclocal.m4.
758 * configure: Regenerated.
760 Fri Jan 24 10:47:25 1997 Jeffrey A Law (law@cygnus.com)
762 * interp.c (init_system): Allocate 2^19 bytes of space for the
765 Thu Jan 23 11:46:23 1997 Stu Grossman (grossman@critters.cygnus.com)
767 * configure configure.in Makefile.in: Update to new configure
768 scheme which is more compatible with WinGDB builds.
769 * configure.in: Improve comment on how to run autoconf.
770 * configure: Re-run autoconf to get new ../common/aclocal.m4.
771 * Makefile.in: Use autoconf substitution to install common
774 Tue Jan 21 15:03:04 1997 Jeffrey A Law (law@cygnus.com)
776 * simops.c: Undo last change to "rol" and "ror", original code
779 Thu Jan 16 11:28:14 1997 Jeffrey A Law (law@cygnus.com)
781 * simops.c: Fix "rol" and "ror".
783 Wed Jan 15 06:45:58 1997 Jeffrey A Law (law@cygnus.com)
785 * simops.c: Fix typo in last change.
787 Mon Jan 13 13:22:35 1997 Jeffrey A Law (law@cygnus.com)
789 * simops.c: Use REG macros in few places not using them yet.
791 Mon Jan 6 16:21:19 1997 Jeffrey A Law (law@cygnus.com)
793 * mn10300_sim.h (struct _state): Fix number of registers!
795 Tue Dec 31 16:20:41 1996 Jeffrey A Law (law@cygnus.com)
797 * mn10300_sim.h (struct _state): Put all registers into a single
798 array to make gdb implementation easier.
799 (REG_*): Add definitions for all registers in the state array.
800 (SEXT32, SEXT40, SEXT44, SEXT60): Remove unused macros.
801 * simops.c: Related changes.
803 Wed Dec 18 10:10:45 1996 Jeffrey A Law (law@cygnus.com)
805 * interp.c (sim_resume): Handle 0xff as a single byte insn.
807 * simops.c: Fix overflow computation for "add" and "inc"
810 Mon Dec 16 10:03:52 1996 Jeffrey A Law (law@cygnus.com)
812 * simops.c: Handle "break" instruction.
814 * simops.c: Fix restoring the PC for "ret" and "retf" instructions.
816 Wed Dec 11 09:53:10 1996 Jeffrey A Law (law@cygnus.com)
818 * gencode.c (write_opcodes): Also write out the format of the
820 * mn10300_sim.h (simops): Add "format" field.
821 * interp.c (sim_resume): Deal with endianness issues here.
823 Tue Dec 10 15:05:37 1996 Jeffrey A Law (law@cygnus.com)
825 * simops.c (REG0_4): Define.
826 Use REG0_4 for indexed loads/stores.
828 Sat Dec 7 09:50:28 1996 Jeffrey A Law (law@cygnus.com)
830 * simops.c (REG0_16): Fix typo.
832 Fri Dec 6 14:13:34 1996 Jeffrey A Law (law@cygnus.com)
834 * simops.c: Call abort for any instruction that's not currently
837 * simops.c: Define accessor macros to extract register
838 values from instructions. Use them consistently.
840 * interp.c: Delete unused global variable "OP".
841 (sim_resume): Remove unused variable "opcode".
842 * simops.c: Fix some uninitialized variable problems, add
843 parens to fix various -Wall warnings.
845 * gencode.c (write_header): Add "insn" and "extension" arguments
846 to the OP_* declarations.
847 (write_template): Similarly for function templates.
848 * interp.c (insn, extension): Remove global variables. Instead
849 pass them as arguments to the OP_* functions.
850 * mn10300_sim.h: Remove decls for "insn" and "extension".
851 * simops.c (OP_*): Accept "insn" and "extension" as arguments
852 instead of using globals.
854 Thu Dec 5 22:26:31 1996 Jeffrey A Law (law@cygnus.com)
856 * simops.c: Fix typos in "mov am,(d16,an)" and "mov am,(d32,an)"
858 * simops.c: Fix thinkos in last change to "inc dn".
860 Wed Dec 4 10:57:53 1996 Jeffrey A Law (law@cygnus.com)
862 * simops.c: "add imm,sp" does not effect the condition codes.
863 "inc dn" does effect the condition codes.
865 Tue Dec 3 17:37:45 1996 Jeffrey A Law (law@cygnus.com)
867 * simops.c: Treat both operands as signed values for
870 * simops.c: Fix simulation of division instructions.
871 Fix typos/thinkos in several "cmp" and "sub" instructions.
873 Mon Dec 2 12:31:40 1996 Jeffrey A Law (law@cygnus.com)
875 * simops.c: Fix carry bit handling in "sub" and "cmp"
878 * simops.c: Fix "mov imm8,an" and "mov imm16,dn".
880 Sun Dec 1 16:05:42 1996 Jeffrey A Law (law@cygnus.com)
882 * simops.c: Fix overflow computation for many instructions.
884 * simops.c: Fix "mov dm, an", "movbu dm, (an)", and "movhu dm, (an)".
886 * simops.c: Fix "mov am, dn".
888 * simops.c: Fix more bugs in "add imm,an" and
891 Wed Nov 27 09:20:42 1996 Jeffrey A Law (law@cygnus.com)
893 * simops.c: Fix bugs in "movm" and "add imm,an".
895 * simops.c: Don't lose the upper 24 bits of the return
896 pointer in "call" and "calls" instructions. Rough cut
897 at emulated system calls.
899 * simops.c: Implement the remaining 5, 6 and 7 byte instructions.
901 * simops.c: Implement remaining 4 byte instructions.
903 * simops.c: Implement remaining 3 byte instructions.
905 * simops.c: Implement remaining 2 byte instructions. Call
906 abort for instructions we're not implementing now.
908 Tue Nov 26 15:43:41 1996 Jeffrey A Law (law@cygnus.com)
910 * simops.c: Implement lots of random instructions.
912 * simops.c: Implement "movm" and "bCC" insns.
914 * mn10300_sim.h (_state): Add another register (MDR).
916 * simops.c: Implement "cmp", "calls", "rets", "jmp" and
917 a few additional random insns.
919 * mn10300_sim.h (PSW_*): Define for CC status tracking.
920 (REG_D0, REG_A0, REG_SP): Define.
921 * simops.c: Implement "add", "addc" and a few other random
924 * gencode.c, interp.c: Snapshot current simulator code.
926 Mon Nov 25 12:46:38 1996 Jeffrey A Law (law@cygnus.com)
928 * Makefile.in, config.in, configure, configure.in: New files.
929 * gencode.c, interp.c, mn10300_sim.h, simops.c: New files.