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