]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blob - sim/mn10300/ChangeLog
import gdb-1999-09-08 snapshot
[thirdparty/binutils-gdb.git] / sim / mn10300 / ChangeLog
1 Thu Sep 2 18:15:53 1999 Andrew Cagney <cagney@b1.cygnus.com>
2
3 * configure: Regenerated to track ../common/aclocal.m4 changes.
4
5 Tue Jul 13 13:26:20 1999 Andrew Cagney <cagney@b1.cygnus.com>
6
7 * interp.c: Clarify error message reporting an unknown board.
8
9 1999-05-08 Felix Lee <flee@cygnus.com>
10
11 * configure: Regenerated to track ../common/aclocal.m4 changes.
12
13 1999-04-16 Frank Ch. Eigler <fche@cygnus.com>
14
15 * interp.c (program_interrupt): Detect undesired recursion using
16 static flag. Set NMIRC register's SYSEF flag during
17 --board=stdeval1 mode.
18 * dv-mn103-int.c (write_icr): Add backdoor address to allow CPU to
19 set SYSEF flag.
20
21 1999-04-02 Keith Seitz <keiths@cygnus.com>
22
23 * Makefile.in (SIM_EXTRA_CFLAGS): Define a POLL_QUIT_INTERVAL
24 for use in the simulator so that the poll_quit callback is
25 not called too often.
26
27 Tue Mar 9 21:26:41 1999 Andrew Cagney <cagney@b1.cygnus.com>
28
29 * dv-mn103int.c (mn103int_ioctl): Return something.
30 * dv-mn103tim.c (write_tm6md): GCC suggested parentheses around &&
31 within ||.
32
33 Tue Feb 16 23:57:17 1999 Jeffrey A Law (law@cygnus.com)
34
35 * mn10300.igen (retf): Fix return address computation and store
36 the new pc value into nia.
37
38 1998-12-29 Frank Ch. Eigler <fche@cygnus.com>
39
40 * Makefile.in (WITH_COMMON_OBJS): Build also dv-sockser.o.
41 * interp.c (sim_open): Add stub mn103002 cache control memory regions.
42 Set OPERATING_ENVIRONMENT on "stdeval1" board.
43 (mn10300_core_signal): New function to intercept memory errors.
44 (program_interrupt): New function to dispatch to exception vector
45 (mn10300_exception_*): New functions to snapshot pre/post exception
46 state.
47 * sim-main.h (SIM_CORE_SIGNAL): Define hook - call mn10300_core_signal.
48 (SIM_ENGINE_HALT_HOOK): Do nothing.
49 (SIM_CPU_EXCEPTION*): Define hooks to call mn10300_cpu_exception*().
50 (_sim_cpu): Add exc_* fields to store register value snapshots.
51 * dv-mn103ser.c (*): Support dv-sockser backend for UART I/O.
52 Various endianness and warning fixes.
53 * mn10300.igen (illegal): Call program_interrupt on error.
54 (break): Call program_interrupt on breakpoint
55
56 Several changes from <janczyn@cygnus.com> and <cagney@cygnus.com>
57 merged in:
58 * dv-mn103int.c (mn103int_ioctl): New function for NMI
59 generation. (mn103int_finish): Install it as ioctl handler.
60 * dv-mn103tim.c: Support timer 6 specially. Endianness fixes.
61
62 Fri Aug 28 14:40:49 1998 Joyce Janczyn <janczyn@cygnus.com>
63
64 * interp.c (sim_open): Check for invalid --board option, fix
65 indentation, allocate memory for mem control and DMA regs.
66
67 Wed Aug 26 09:29:38 1998 Joyce Janczyn <janczyn@cygnus.com>
68
69 * mn10300.igen (div,divu): Fix divide instructions so divide by 0
70 behaves like the hardware.
71
72 Mon Aug 24 11:50:09 1998 Joyce Janczyn <janczyn@cygnus.com>
73
74 * sim-main.h (SIM_HANDLES_LMA): Define SIM_HANDLES_LMA.
75
76 Fri Jul 24 18:15:21 1998 Joyce Janczyn <janczyn@cygnus.com>
77
78 * op_utils.c (do_syscall): Rewrite to use common/syscall.c.
79 (syscall_read_mem, syscall_write_mem): New functions for syscall
80 callbacks.
81 * mn10300_sim.h: Add prototypes for syscall_read_mem and
82 syscall_write_mem.
83 * mn10300.igen: Change C++ style comments to C style comments.
84 Check for divide by zero in div and divu ops.
85
86 Thu Jul 9 10:06:55 1998 Jeffrey A Law (law@cygnus.com)
87
88 * mn10300.igen: Fix Z bit for addc and subc instructions.
89 Minor fixes in multiply/divide patterns.
90
91
92 Wed Jul 1 17:07:09 1998 Jeffrey A Law (law@cygnus.com)
93
94 * mn10300_sim.h (FETCH24): Define.
95
96
97 Tue Jun 30 11:23:20 1998 Jeffrey A Law (law@cygnus.com)
98
99 * mn10300_sim.h: Include bfd.h
100 (struct state): Add more room for processor specific registers.
101
102 Thu Jun 25 10:12:03 1998 Joyce Janczyn <janczyn@cygnus.com>
103
104 * dv-mn103tim.c: Include sim-assert.h
105 * dv-mn103ser.c (do_polling_event): Check for incoming data on
106 serial line and schedule next polling event.
107 (read_status_reg): schedule events to check for incoming data on
108 serial line and issue interrupt if necessary.
109
110 Fri Jun 19 16:47:27 1998 Joyce Janczyn <janczyn@cygnus.com>
111
112 * interp.c (sim_open): hook up serial 1 and 2 ports properly (typo).
113
114 Fri Jun 19 11:59:26 1998 Joyce Janczyn <janczyn@cygnus.com>
115
116 * interp.c (board): Rename am32 to stdeval1 as this is the name
117 consistently used to refer to the mn1030002 board.
118
119 Thu June 18 14:37:14 1998 Joyce Janczyn <janczyn@cygnus.com>
120 * interp.c (sim_open): Fix typo in address of EXTMD register
121 (0x34000280, not 0x3400280).
122
123 Wed Jun 17 18:00:18 1998 Jeffrey A Law (law@cygnus.com)
124
125 * simops.c (syscall): Handle change in opcode # for syscall.
126 * mn10300.igen (syscall): Likewise.
127
128 Tue June 16 09:36:21 1998 Joyce Janczyn <janczyn@cygnus.com>
129 * dv-mn103int.c (mn103int_finish): Regular interrupts (not NMI or
130 reset) are not enabled on reset.
131
132 Sun June 14 17:04:00 1998 Joyce Janczyn <janczyn@cygnus.com>
133 * dv-mn103iop.c (write_*_reg): Check for attempt to write r/o
134 register bits.
135 * dv-mn103ser.c: Fill in methods for reading and writing to serial
136 device registers.
137 * interp.c (sim_open): Make the serial device a polling device.
138
139 Fri June 12 16:24:00 1998 Joyce Janczyn <janczyn@cygnus.com>
140 * dv-mn103iop.c: New file for handling am32 io ports.
141 * configure.in: Add mn103iop to hw_device list.
142 * configure: Re-generate.
143 * interp.c (sim_open): Create io port device.
144
145 Wed June 10 14:34:00 1998 Joyce Janczyn <janczyn@cygnus.com>
146 * dv-mn103int.c (external_group): Use enumerated types to access
147 correct group addresses.
148 * dv-mn103tim.c (do_counter_event): Underflow of cascaded timer
149 triggers an interrupt on the higher-numbered timer's port.
150
151 Mon June 8 13:30:00 1998 Joyce Janczyn <janczyn@cygnus.com>
152 * interp.c: (mn10300_option_handler): New function parses arguments
153 using sim-options.
154 * (board): Add --board option for specifying am32.
155 * (sim_open): Create new timer and serial devices and control
156 configuration of other am32 devices via board option.
157 * dv-mn103tim.c, dv-mn103ser.c: New files for timers and serial devices.
158 * dv-mn103cpu.c: Fix typos in opening comments.
159 * dv-mn103int.c: Adjust interrupt controller settings for am32 instead of am30.
160 * configure.in: Add mn103tim and mn103ser to hw_device list.
161 * configure: Re-generate.
162
163 Mon May 25 20:50:35 1998 Andrew Cagney <cagney@b1.cygnus.com>
164
165 * dv-mn103int.c, dv-mn103cpu.c: Rename *_callback to *_method.
166
167 * dv-mn103cpu.c, dv-mn103int.c: Include hw-main.h and
168 sim-main.h. Declare a struct hw_descriptor instead of struct
169 hw_device_descriptor.
170
171 Mon May 25 17:33:33 1998 Andrew Cagney <cagney@b1.cygnus.com>
172
173 * dv-mn103cpu.c (struct mn103cpu): Change type of pending_handler
174 to struct hw_event.
175
176 Fri May 22 12:17:41 1998 Andrew Cagney <cagney@b1.cygnus.com>
177
178 * configure.in (SIM_AC_OPTION_HARDWARE): Add argument "yes".
179
180 Wed May 6 13:29:06 1998 Andrew Cagney <cagney@b1.cygnus.com>
181
182 * interp.c (sim_open): Create a polling PAL device.
183
184 Fri May 1 16:39:15 1998 Andrew Cagney <cagney@b1.cygnus.com>
185
186 * dv-mn103int.c (mn103int_port_event):
187 (mn103int_port_event):
188 (mn103int_io_read_buffer):
189 (mn103int_io_write_buffer):
190
191 * dv-mn103cpu.c (deliver_mn103cpu_interrupt): Drop CPU/CIA args.
192 (mn103cpu_port_event): Ditto.
193 (mn103cpu_io_read_buffer): Ditto.
194 (mn103cpu_io_write_buffer): Ditto.
195
196 Tue Apr 28 18:33:31 1998 Geoffrey Noer <noer@cygnus.com>
197
198 * configure: Regenerated to track ../common/aclocal.m4 changes.
199
200 Sun Apr 26 15:31:55 1998 Tom Tromey <tromey@creche>
201
202 * configure: Regenerated to track ../common/aclocal.m4 changes.
203 * config.in: Ditto.
204
205 Sun Apr 26 15:19:55 1998 Tom Tromey <tromey@cygnus.com>
206
207 * acconfig.h: New file.
208 * configure.in: Reverted change of Apr 24; use sinclude again.
209
210 Fri Apr 24 14:16:40 1998 Tom Tromey <tromey@creche>
211
212 * configure: Regenerated to track ../common/aclocal.m4 changes.
213 * config.in: Ditto.
214
215 Fri Apr 24 11:19:07 1998 Tom Tromey <tromey@cygnus.com>
216
217 * configure.in: Don't call sinclude.
218
219 Tue Apr 14 10:03:02 1998 Andrew Cagney <cagney@b1.cygnus.com>
220
221 * mn10300_sim.h: Declare all functions in op_utils.c using
222 INLINE_SIM_MAIN.
223 * op_utils.c: Ditto.
224 * sim-main.c: New file. Include op_utils.c.
225
226 * mn10300.igen (mov, cmp): Use new igen operators `!' and `=' to
227 differentiate between MOV/CMP immediate/register instructions.
228
229 * configure.in (SIM_AC_OPTION_INLINE): Add and enable.
230 * configure: Regenerate.
231
232 Sat Apr 4 20:36:25 1998 Andrew Cagney <cagney@b1.cygnus.com>
233
234 * configure: Regenerated to track ../common/aclocal.m4 changes.
235
236 Fri Mar 27 16:15:52 1998 Andrew Cagney <cagney@b1.cygnus.com>
237
238 * interp.c (hw): Delete variable, moved to SIM_DESC.
239 (sim_open): Delete calls to hw_tree_create, hw_tree_finish.
240 Handled by sim-module.
241 (sim_open): Do not anotate tree with trace properties, handled by
242 sim-hw.c
243 (sim_open): Call sim_hw_parse instead of hw_tree_parse.
244
245 * configure: Regenerated to track ../common/aclocal.m4 changes.
246
247 Thu Mar 26 20:46:18 1998 Stu Grossman <grossman@bhuna.cygnus.co.uk>
248
249 * dv-mn103cpu.c (deliver_mn103cpu_interrupt): Save the entire PC
250 on the stack when delivering interrupts (not just the lower
251 half)...
252 * mn10300.igen (mov (Di,Am),Dn): Fix decode. Registers were
253 specified in the wrong order.
254
255 Fri Mar 27 00:56:40 1998 Andrew Cagney <cagney@b1.cygnus.com>
256
257 * dv-mn103cpu.c (deliver_mn103cpu_interrupt): Stop loss of
258 succeeding interrupts, clear pending_handler when the handler
259 isn't re-scheduled.
260
261 Thu Mar 26 10:11:01 1998 Stu Grossman <grossman@bhuna.cygnus.co.uk>
262
263 * Makefile.in (tmp-igen): Prefix all usage of move-if-change
264 script with $(SHELL) to make NT native builds happy.
265 * configure: Regenerate because of change to ../common/aclocal.m4.
266
267 Thu Mar 26 11:22:31 1998 Andrew Cagney <cagney@b1.cygnus.com>
268
269 * configure.in: Make --enable-sim-common the default.
270 * configure: Re-generate.
271
272 * sim-main.h (CIA_GET, CIA_SET): Save/restore current instruction
273 address into Sate.regs[REG_PC] instead of common struct.
274
275 Wed Mar 25 17:42:00 1998 Joyce Janczyn <janczyn@cygnus.com>
276
277 * mn10300.igen (cmp imm8,An): Do not sign extend imm8 value.
278
279 Wed Mar 25 12:08:00 1998 Joyce Janczyn <janczyn@cygnus.com>
280
281 * simops.c (OP_F0FD): Initialise variable 'sp'.
282
283 Thu Mar 26 00:21:32 1998 Andrew Cagney <cagney@b1.cygnus.com>
284
285 * dv-mn103int.c (decode_group): A group register every 4 bytes not
286 8.
287 (write_icr): Rewrite equation updating request field.
288 (read_iagr): Fix check that interrupt is still pending.
289
290 Wed Mar 25 16:14:50 1998 Andrew Cagney <cagney@b1.cygnus.com>
291
292 * interp.c (sim_open): Tidy up device creation.
293
294 * dv-mn103int.c (mn103int_port_event): Drive NMI with non-zero
295 value.
296 (mn103int_io_read_buffer): Convert absolute address to register
297 block offsets.
298 (read_icr, write_icr): Convert block offset into group offset.
299
300 Wed Mar 25 15:08:49 1998 Andrew Cagney <cagney@b1.cygnus.com>
301
302 * interp.c (sim_open): Create second 1mb memory region at
303 0x40000000.
304 (sim_open): Create a device tree.
305 (sim-hw.h): Include.
306 (do_interrupt): Delete, needs to use dv-mn103cpu.c
307
308 * dv-mn103int.c, dv-mn103cpu.c: New files.
309
310 Wed Mar 25 08:47:38 1998 Andrew Cagney <cagney@b1.cygnus.com>
311
312 * mn10300_sim.h (EXTRACT_PSW_LM, INSERT_PSW_LM, PSW_IE, PSW_LM):
313 Define.
314 (SP): Define.
315
316 Wed Mar 25 12:35:29 1998 Andrew Cagney <cagney@b1.cygnus.com>
317
318 * configure: Regenerated to track ../common/aclocal.m4 changes.
319
320 Wed Mar 25 10:24:48 1998 Andrew Cagney <cagney@b1.cygnus.com>
321
322 * interp.c (sim-options.h): Include.
323 (sim_kind, myname): Declare when not using common framework.
324
325 * mn10300_sim.h (do_syscall, generic*): Provide prototypes for
326 functions found in op_utils.c
327
328 * mn10300.igen (add): Discard unused variables.
329
330 * configure, config.in: Re-generate with autoconf 2.12.1.
331
332 Tue Mar 24 15:27:00 1998 Joyce Janczyn <janczyn@cygnus.com>
333
334 Add support for --enable-sim-common option.
335 * Makefile.in (WITHOUT_COMMON_OBJS): Files included if
336 ! --enable-sim-common
337 (WITH_COMMON_OBJS): Files included if --enable-sim-common.
338 (MN10300_OBJS,MN10300_INTERP_DEP): New variables.
339 (SIM_OBJS): Rewrite.
340 ({WITHOUT,WITH}_COMMON_RUN_OBJS,SIM_RUN_OBJS): New variables.
341 (SIM_EXTRA_CFLAGS): New variable.
342 (clean-extra): Clean up igen files.
343 (../igen/igen,clean-igen,tmp-igen): New rules.
344 * configure.in: Add support for common framework via
345 --enable-sim-common.
346 * configure: Regenerate.
347 * interp.c: #include sim-main if WITH_COMMON, not mn10300_sim.h.
348 (hash,dispatch,sim_size): Don't compile if ! WITH_COMMON.
349 (init_system,sim_write,compare_simops): Likewise.
350 (sim_set_profile,sim_set_profile_size): Likewise.
351 (sim_stop,sim_resume,sim_trace,sim_info): Likewise.
352 (sim_set_callbacks,sim_stop_reason,sim_read,sim_load): Likewise.
353 (enum interrupt_type): New enum.
354 (interrupt_names): New global.
355 (do_interrupt): New function.
356 (sim_open): Define differently if WITH_COMMON.
357 (sim_close,sim_create_inferior,sim_do_command): Likewise.
358 * mn10300_sim.h ({load,store}_{byte,half,word}): Define versions
359 for WITH_COMMON.
360 * mn10300.igen: New file.
361 * mn10300.dc: New file.
362 * op_utils.c: New file.
363 * sim-main.h: New file.
364
365 Wed Mar 18 12:38:12 1998 Andrew Cagney <cagney@b1.cygnus.com>
366
367 * configure: Regenerated to track ../common/aclocal.m4 changes.
368
369 Fri Feb 27 18:36:04 1998 Jeffrey A Law (law@cygnus.com)
370
371 * simops.c (inc): Fix typo.
372
373 Wed Feb 25 01:59:29 1998 Jeffrey A Law (law@cygnus.com)
374
375 * simops.c (signed multiply instructions): Cast input operands to
376 signed32 before casting them to signed64 so that the sign bit
377 is propagated properly.
378
379 Mon Feb 23 20:23:19 1998 Mark Alexander <marka@cygnus.com>
380
381 * Makefile.in: Last change was bad. Define NL_TARGET
382 so that targ-vals.h will be used instead of syscall.h.
383 * simops.c: Use targ-vals.h instead of syscall.h.
384 (OP_F020): Disable unsupported system calls.
385
386 Mon Feb 23 09:44:38 1998 Mark Alexander <marka@cygnus.com>
387
388 * Makefile.in: Get header files from libgloss/mn10300/sys.
389
390 Sun Feb 22 16:02:24 1998 Jeffrey A Law (law@cygnus.com)
391
392 * simops.c: Include sim-types.h.
393
394 Wed Feb 18 13:07:08 1998 Jeffrey A Law (law@cygnus.com)
395
396 * simops.c (multiply instructions): Cast input operands to a
397 signed64/unsigned64 type as appropriate.
398
399 Tue Feb 17 12:47:16 1998 Andrew Cagney <cagney@b1.cygnus.com>
400
401 * interp.c (sim_store_register, sim_fetch_register): Pass in
402 length parameter. Return -1.
403
404 Sun Feb 1 16:47:51 1998 Andrew Cagney <cagney@b1.cygnus.com>
405
406 * configure: Regenerated to track ../common/aclocal.m4 changes.
407
408 Sat Jan 31 18:15:41 1998 Andrew Cagney <cagney@b1.cygnus.com>
409
410 * configure: Regenerated to track ../common/aclocal.m4 changes.
411
412 Mon Jan 19 22:26:29 1998 Doug Evans <devans@seba>
413
414 * configure: Regenerated to track ../common/aclocal.m4 changes.
415
416 Mon Dec 15 23:17:11 1997 Andrew Cagney <cagney@b1.cygnus.com>
417
418 * configure: Regenerated to track ../common/aclocal.m4 changes.
419 * config.in: Ditto.
420
421 Thu Dec 4 09:21:05 1997 Doug Evans <devans@canuck.cygnus.com>
422
423 * configure: Regenerated to track ../common/aclocal.m4 changes.
424
425 Tue Nov 11 10:38:52 1997 Jeffrey A Law (law@cygnus.com)
426
427 * simops.c (call:16 call:32): Stack adjustment is determined solely
428 by the imm8 field.
429
430 Wed Oct 22 14:43:00 1997 Andrew Cagney <cagney@b1.cygnus.com>
431
432 * interp.c (sim_load): Pass lma_p and sim_write args to
433 sim_load_file.
434
435 Tue Oct 21 10:12:03 1997 Jeffrey A Law (law@cygnus.com)
436
437 * simops.c: Correctly handle register restores for "ret" and "retf"
438 instructions.
439
440 Fri Oct 3 09:28:00 1997 Andrew Cagney <cagney@b1.cygnus.com>
441
442 * configure: Regenerated to track ../common/aclocal.m4 changes.
443
444 Wed Sep 24 17:38:57 1997 Andrew Cagney <cagney@b1.cygnus.com>
445
446 * configure: Regenerated to track ../common/aclocal.m4 changes.
447
448 Tue Sep 23 11:04:38 1997 Andrew Cagney <cagney@b1.cygnus.com>
449
450 * configure: Regenerated to track ../common/aclocal.m4 changes.
451
452 Mon Sep 22 11:46:20 1997 Andrew Cagney <cagney@b1.cygnus.com>
453
454 * configure: Regenerated to track ../common/aclocal.m4 changes.
455
456 Fri Sep 19 17:45:25 1997 Andrew Cagney <cagney@b1.cygnus.com>
457
458 * configure: Regenerated to track ../common/aclocal.m4 changes.
459
460 Mon Sep 15 17:36:15 1997 Andrew Cagney <cagney@b1.cygnus.com>
461
462 * configure: Regenerated to track ../common/aclocal.m4 changes.
463
464 Thu Sep 4 17:21:23 1997 Doug Evans <dje@seba>
465
466 * configure: Regenerated to track ../common/aclocal.m4 changes.
467
468 Wed Aug 27 18:13:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
469
470 * configure: Regenerated to track ../common/aclocal.m4 changes.
471 * config.in: Ditto.
472
473 Tue Aug 26 10:41:07 1997 Andrew Cagney <cagney@b1.cygnus.com>
474
475 * interp.c (sim_kill): Delete.
476 (sim_create_inferior): Add ABFD argument.
477 (sim_load): Move setting of PC from here.
478 (sim_create_inferior): To here.
479
480 Mon Aug 25 17:50:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
481
482 * configure: Regenerated to track ../common/aclocal.m4 changes.
483 * config.in: Ditto.
484
485 Mon Aug 25 16:14:44 1997 Andrew Cagney <cagney@b1.cygnus.com>
486
487 * interp.c (sim_open): Add ABFD argument.
488
489 Tue Jun 24 13:46:20 1997 Jeffrey A Law (law@cygnus.com)
490
491 * interp.c (sim_resume): Clear State.exited.
492 (sim_stop_reason): If State.exited is nonzero, then indicate that
493 the simulator exited instead of stopped.
494 * mn10300_sim.h (struct _state): Add exited field.
495 * simops.c (syscall): Set State.exited for SYS_exit.
496
497 Wed Jun 11 22:07:56 1997 Jeffrey A Law (law@cygnus.com)
498
499 * simops.c: Fix thinko in last change.
500
501 Tue Jun 10 12:31:32 1997 Jeffrey A Law (law@cygnus.com)
502
503 * simops.c: "call" stores the callee saved registers into the
504 stack! Update the stack pointer properly when done with
505 register saves.
506
507 * simops.c: Fix return address computation for "call" instructions.
508
509 Thu May 22 01:43:11 1997 Jeffrey A Law (law@cygnus.com)
510
511 * interp.c (sim_open): Fix typo.
512
513 Wed May 21 23:27:58 1997 Jeffrey A Law (law@cygnus.com)
514
515 * interp.c (sim_resume): Add missing case in big switch
516 statement (for extb instruction).
517
518 Tue May 20 17:51:30 1997 Jeffrey A Law (law@cygnus.com)
519
520 * interp.c: Replace all references to load_mem and store_mem
521 with references to load_byte, load_half, load_3_byte, load_word
522 and store_byte, store_half, store_3_byte, store_word.
523 (INLINE): Delete definition.
524 (load_mem_big): Likewise.
525 (max_mem): Make it global.
526 (dispatch): Make this function inline.
527 (load_mem, store_mem): Delete functions.
528 * mn10300_sim.h (INLINE): Define.
529 (RLW): Delete unused definition.
530 (load_mem, store_mem): Delete declarations.
531 (load_mem_big): New definition.
532 (load_byte, load_half, load_3_byte, load_word): New functions.
533 (store_byte, store_half, store_3_byte, store_word): New functions.
534 * simops.c: Replace all references to load_mem and store_mem
535 with references to load_byte, load_half, load_3_byte, load_word
536 and store_byte, store_half, store_3_byte, store_word.
537
538 Tue May 20 10:21:51 1997 Andrew Cagney <cagney@b1.cygnus.com>
539
540 * interp.c (sim_open): Add callback to arguments.
541 (sim_set_callbacks): Delete SIM_DESC argument.
542
543 Mon May 19 13:54:22 1997 Jeffrey A Law (law@cygnus.com)
544
545 * interp.c (dispatch): Make this an inline function.
546
547 * simops.c (syscall): Use callback->write regardless of
548 what file descriptor we're writing too.
549
550 Sun May 18 16:46:31 1997 Jeffrey A Law (law@cygnus.com)
551
552 * interp.c (load_mem_big): Remove function. It's now a macro
553 defined elsewhere.
554 (compare_simops): New function.
555 (sim_open): Sort the Simops table before inserting entries
556 into the hash table.
557 * mn10300_sim.h: Remove unused #defines.
558 (load_mem_big): Define.
559
560 Fri May 16 16:36:17 1997 Jeffrey A Law (law@cygnus.com)
561
562 * interp.c (load_mem): If we get a load from an out of range
563 address, abort.
564 (store_mem): Likewise for stores.
565 (max_mem): New variable.
566
567 Tue May 6 13:24:36 1997 Jeffrey A Law (law@cygnus.com)
568
569 * mn10300_sim.h: Fix ordering of bits in the PSW.
570
571 * interp.c: Improve hashing routine to avoid long list
572 traversals for common instructions. Add HASH_STAT support.
573 Rewrite opcode dispatch code using a big switch instead of
574 cascaded if/else statements. Avoid useless calls to load_mem.
575
576 Mon May 5 18:07:48 1997 Jeffrey A Law (law@cygnus.com)
577
578 * mn10300_sim.h (struct _state): Add space for mdrq register.
579 (REG_MDRQ): Define.
580 * simops.c: Don't abort for trap. Add support for the extended
581 instructions, "getx", "putx", "mulq", "mulqu", "sat16", "sat24",
582 and "bsch".
583
584 Thu Apr 24 00:39:51 1997 Doug Evans <dje@canuck.cygnus.com>
585
586 * configure: Regenerated to track ../common/aclocal.m4 changes.
587
588 Fri Apr 18 14:04:04 1997 Andrew Cagney <cagney@b1.cygnus.com>
589
590 * interp.c (sim_stop): Add stub function.
591
592 Thu Apr 17 03:26:59 1997 Doug Evans <dje@canuck.cygnus.com>
593
594 * Makefile.in (SIM_OBJS): Add sim-load.o.
595 * interp.c (sim_kind, myname): New static locals.
596 (sim_open): Set sim_kind, myname. Ignore -E arg.
597 (sim_load): Return SIM_RC. New arg abfd. Call sim_load_file to
598 load file into simulator. Set start address from bfd.
599 (sim_create_inferior): Return SIM_RC. Delete arg start_address.
600
601 Wed Apr 16 19:30:44 1997 Andrew Cagney <cagney@b1.cygnus.com>
602
603 * simops.c (OP_F020): SYS_execv, SYS_time, SYS_times, SYS_utime
604 only include if implemented by host.
605 (OP_F020): Typecast arg passed to time function;
606
607 Mon Apr 7 23:57:49 1997 Jeffrey A Law (law@cygnus.com)
608
609 * simops.c (syscall): Handle new mn10300 calling conventions.
610
611 Mon Apr 7 15:45:02 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
612
613 * configure: Regenerated to track ../common/aclocal.m4 changes.
614 * config.in: Ditto.
615
616 Fri Apr 4 20:02:37 1997 Ian Lance Taylor <ian@cygnus.com>
617
618 * Makefile.in: Change mn10300-opc.o to m10300-opc.o, to match
619 corresponding change in opcodes directory.
620
621 Wed Apr 2 15:06:28 1997 Doug Evans <dje@canuck.cygnus.com>
622
623 * interp.c (sim_open): New arg `kind'.
624
625 * configure: Regenerated to track ../common/aclocal.m4 changes.
626
627 Wed Apr 2 14:34:19 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
628
629 * configure: Regenerated to track ../common/aclocal.m4 changes.
630
631 Thu Mar 20 11:58:02 1997 Jeffrey A Law (law@cygnus.com)
632
633 * simops.c: Fix register extraction for a two "movbu" variants.
634 Somewhat simplify "sub" instructions.
635 Correctly sign extend operands for "mul". Put the correct
636 half of the result in MDR for "mul" and "mulu".
637 Implement remaining instructions.
638 Tweak opcode for "syscall".
639
640 Tue Mar 18 14:21:21 1997 Jeffrey A Law (law@cygnus.com)
641
642 * simops.c: Do syscall emulation in "syscall" instruction. Add
643 dummy "trap" instruction.
644
645 Wed Mar 19 01:14:00 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
646
647 * configure: Regenerated to track ../common/aclocal.m4 changes.
648
649 Mon Mar 17 15:10:07 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
650
651 * configure: Re-generate.
652
653 Fri Mar 14 10:34:11 1997 Michael Meissner <meissner@cygnus.com>
654
655 * configure: Regenerate to track ../common/aclocal.m4 changes.
656
657 Thu Mar 13 12:54:45 1997 Doug Evans <dje@canuck.cygnus.com>
658
659 * interp.c (sim_open): New SIM_DESC result. Argument is now
660 in argv form.
661 (other sim_*): New SIM_DESC argument.
662
663 Wed Mar 12 15:04:00 1997 Jeffrey A Law (law@cygnus.com)
664
665 * simops.c: Fix carry bit computation for "add" instructions.
666
667 * simops.c: Fix typos in bset insns. Fix arguments to store_mem
668 for bset imm8,(d8,an) and bclr imm8,(d8,an).
669
670 Wed Mar 5 15:00:10 1997 Jeffrey A Law (law@cygnus.com)
671
672 * simops.c: Fix register references when computing Z and N bits
673 for lsr imm8,dn.
674
675 Tue Feb 4 13:33:30 1997 Doug Evans <dje@canuck.cygnus.com>
676
677 * Makefile.in (@COMMON_MAKEFILE_FRAG): Use
678 COMMON_{PRE,POST}_CONFIG_FRAG instead.
679 * configure.in: sinclude ../common/aclocal.m4.
680 * configure: Regenerated.
681
682 Fri Jan 24 10:47:25 1997 Jeffrey A Law (law@cygnus.com)
683
684 * interp.c (init_system): Allocate 2^19 bytes of space for the
685 simulator.
686
687 Thu Jan 23 11:46:23 1997 Stu Grossman (grossman@critters.cygnus.com)
688
689 * configure configure.in Makefile.in: Update to new configure
690 scheme which is more compatible with WinGDB builds.
691 * configure.in: Improve comment on how to run autoconf.
692 * configure: Re-run autoconf to get new ../common/aclocal.m4.
693 * Makefile.in: Use autoconf substitution to install common
694 makefile fragment.
695
696 Tue Jan 21 15:03:04 1997 Jeffrey A Law (law@cygnus.com)
697
698 * simops.c: Undo last change to "rol" and "ror", original code
699 was correct!
700
701 Thu Jan 16 11:28:14 1997 Jeffrey A Law (law@cygnus.com)
702
703 * simops.c: Fix "rol" and "ror".
704
705 Wed Jan 15 06:45:58 1997 Jeffrey A Law (law@cygnus.com)
706
707 * simops.c: Fix typo in last change.
708
709 Mon Jan 13 13:22:35 1997 Jeffrey A Law (law@cygnus.com)
710
711 * simops.c: Use REG macros in few places not using them yet.
712
713 Mon Jan 6 16:21:19 1997 Jeffrey A Law (law@cygnus.com)
714
715 * mn10300_sim.h (struct _state): Fix number of registers!
716
717 Tue Dec 31 16:20:41 1996 Jeffrey A Law (law@cygnus.com)
718
719 * mn10300_sim.h (struct _state): Put all registers into a single
720 array to make gdb implementation easier.
721 (REG_*): Add definitions for all registers in the state array.
722 (SEXT32, SEXT40, SEXT44, SEXT60): Remove unused macros.
723 * simops.c: Related changes.
724
725 Wed Dec 18 10:10:45 1996 Jeffrey A Law (law@cygnus.com)
726
727 * interp.c (sim_resume): Handle 0xff as a single byte insn.
728
729 * simops.c: Fix overflow computation for "add" and "inc"
730 instructions.
731
732 Mon Dec 16 10:03:52 1996 Jeffrey A Law (law@cygnus.com)
733
734 * simops.c: Handle "break" instruction.
735
736 * simops.c: Fix restoring the PC for "ret" and "retf" instructions.
737
738 Wed Dec 11 09:53:10 1996 Jeffrey A Law (law@cygnus.com)
739
740 * gencode.c (write_opcodes): Also write out the format of the
741 opcode.
742 * mn10300_sim.h (simops): Add "format" field.
743 * interp.c (sim_resume): Deal with endianness issues here.
744
745 Tue Dec 10 15:05:37 1996 Jeffrey A Law (law@cygnus.com)
746
747 * simops.c (REG0_4): Define.
748 Use REG0_4 for indexed loads/stores.
749
750 Sat Dec 7 09:50:28 1996 Jeffrey A Law (law@cygnus.com)
751
752 * simops.c (REG0_16): Fix typo.
753
754 Fri Dec 6 14:13:34 1996 Jeffrey A Law (law@cygnus.com)
755
756 * simops.c: Call abort for any instruction that's not currently
757 simulated.
758
759 * simops.c: Define accessor macros to extract register
760 values from instructions. Use them consistently.
761
762 * interp.c: Delete unused global variable "OP".
763 (sim_resume): Remove unused variable "opcode".
764 * simops.c: Fix some uninitialized variable problems, add
765 parens to fix various -Wall warnings.
766
767 * gencode.c (write_header): Add "insn" and "extension" arguments
768 to the OP_* declarations.
769 (write_template): Similarly for function templates.
770 * interp.c (insn, extension): Remove global variables. Instead
771 pass them as arguments to the OP_* functions.
772 * mn10300_sim.h: Remove decls for "insn" and "extension".
773 * simops.c (OP_*): Accept "insn" and "extension" as arguments
774 instead of using globals.
775
776 Thu Dec 5 22:26:31 1996 Jeffrey A Law (law@cygnus.com)
777
778 * simops.c: Fix typos in "mov am,(d16,an)" and "mov am,(d32,an)"
779
780 * simops.c: Fix thinkos in last change to "inc dn".
781
782 Wed Dec 4 10:57:53 1996 Jeffrey A Law (law@cygnus.com)
783
784 * simops.c: "add imm,sp" does not effect the condition codes.
785 "inc dn" does effect the condition codes.
786
787 Tue Dec 3 17:37:45 1996 Jeffrey A Law (law@cygnus.com)
788
789 * simops.c: Treat both operands as signed values for
790 "div" instruction.
791
792 * simops.c: Fix simulation of division instructions.
793 Fix typos/thinkos in several "cmp" and "sub" instructions.
794
795 Mon Dec 2 12:31:40 1996 Jeffrey A Law (law@cygnus.com)
796
797 * simops.c: Fix carry bit handling in "sub" and "cmp"
798 instructions.
799
800 * simops.c: Fix "mov imm8,an" and "mov imm16,dn".
801
802 Sun Dec 1 16:05:42 1996 Jeffrey A Law (law@cygnus.com)
803
804 * simops.c: Fix overflow computation for many instructions.
805
806 * simops.c: Fix "mov dm, an", "movbu dm, (an)", and "movhu dm, (an)".
807
808 * simops.c: Fix "mov am, dn".
809
810 * simops.c: Fix more bugs in "add imm,an" and
811 "add imm,dn".
812
813 Wed Nov 27 09:20:42 1996 Jeffrey A Law (law@cygnus.com)
814
815 * simops.c: Fix bugs in "movm" and "add imm,an".
816
817 * simops.c: Don't lose the upper 24 bits of the return
818 pointer in "call" and "calls" instructions. Rough cut
819 at emulated system calls.
820
821 * simops.c: Implement the remaining 5, 6 and 7 byte instructions.
822
823 * simops.c: Implement remaining 4 byte instructions.
824
825 * simops.c: Implement remaining 3 byte instructions.
826
827 * simops.c: Implement remaining 2 byte instructions. Call
828 abort for instructions we're not implementing now.
829
830 Tue Nov 26 15:43:41 1996 Jeffrey A Law (law@cygnus.com)
831
832 * simops.c: Implement lots of random instructions.
833
834 * simops.c: Implement "movm" and "bCC" insns.
835
836 * mn10300_sim.h (_state): Add another register (MDR).
837 (REG_MDR): Define.
838 * simops.c: Implement "cmp", "calls", "rets", "jmp" and
839 a few additional random insns.
840
841 * mn10300_sim.h (PSW_*): Define for CC status tracking.
842 (REG_D0, REG_A0, REG_SP): Define.
843 * simops.c: Implement "add", "addc" and a few other random
844 instructions.
845
846 * gencode.c, interp.c: Snapshot current simulator code.
847
848 Mon Nov 25 12:46:38 1996 Jeffrey A Law (law@cygnus.com)
849
850 * Makefile.in, config.in, configure, configure.in: New files.
851 * gencode.c, interp.c, mn10300_sim.h, simops.c: New files.
852