]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blob - sim/mn10300/ChangeLog
* mn10300_sim.h (EXTRACT_PSW_LM, INSERT_PSW_LM, PSW_IE, PSW_LM): Define.
[thirdparty/binutils-gdb.git] / sim / mn10300 / ChangeLog
1 Wed Mar 25 08:47:38 1998 Andrew Cagney <cagney@b1.cygnus.com>
2
3 * mn10300_sim.h (EXTRACT_PSW_LM, INSERT_PSW_LM, PSW_IE, PSW_LM):
4 Define.
5 (SP): Define.
6
7 Wed Mar 25 12:35:29 1998 Andrew Cagney <cagney@b1.cygnus.com>
8
9 * configure: Regenerated to track ../common/aclocal.m4 changes.
10
11 Wed Mar 25 10:24:48 1998 Andrew Cagney <cagney@b1.cygnus.com>
12
13 * interp.c (sim-options.h): Include.
14 (sim_kind, myname): Declare when not using common framework.
15
16 * mn10300_sim.h (do_syscall, generic*): Provide prototypes for
17 functions found in op_utils.c
18
19 * mn10300.igen (add): Discard unused variables.
20
21 * configure, config.in: Re-generate with autoconf 2.12.1.
22
23 Tue Mar 24 15:27:00 1998 Joyce Janczyn <janczyn@cygnus.com>
24
25 Add support for --enable-sim-common option.
26 * Makefile.in (WITHOUT_COMMON_OBJS): Files included if
27 ! --enable-sim-common
28 (WITH_COMMON_OBJS): Files included if --enable-sim-common.
29 (MN10300_OBJS,MN10300_INTERP_DEP): New variables.
30 (SIM_OBJS): Rewrite.
31 ({WITHOUT,WITH}_COMMON_RUN_OBJS,SIM_RUN_OBJS): New variables.
32 (SIM_EXTRA_CFLAGS): New variable.
33 (clean-extra): Clean up igen files.
34 (../igen/igen,clean-igen,tmp-igen): New rules.
35 * configure.in: Add support for common framework via
36 --enable-sim-common.
37 * configure: Regenerate.
38 * interp.c: #include sim-main if WITH_COMMON, not mn10300_sim.h.
39 (hash,dispatch,sim_size): Don't compile if ! WITH_COMMON.
40 (init_system,sim_write,compare_simops): Likewise.
41 (sim_set_profile,sim_set_profile_size): Likewise.
42 (sim_stop,sim_resume,sim_trace,sim_info): Likewise.
43 (sim_set_callbacks,sim_stop_reason,sim_read,sim_load): Likewise.
44 (enum interrupt_type): New enum.
45 (interrupt_names): New global.
46 (do_interrupt): New function.
47 (sim_open): Define differently if WITH_COMMON.
48 (sim_close,sim_create_inferior,sim_do_command): Likewise.
49 * mn10300_sim.h ({load,store}_{byte,half,word}): Define versions
50 for WITH_COMMON.
51 * mn10300.igen: New file.
52 * mn10300.dc: New file.
53 * op_utils.c: New file.
54 * sim-main.h: New file.
55
56 Wed Mar 18 12:38:12 1998 Andrew Cagney <cagney@b1.cygnus.com>
57
58 * configure: Regenerated to track ../common/aclocal.m4 changes.
59
60 Fri Feb 27 18:36:04 1998 Jeffrey A Law (law@cygnus.com)
61
62 * simops.c (inc): Fix typo.
63
64 Wed Feb 25 01:59:29 1998 Jeffrey A Law (law@cygnus.com)
65
66 * simops.c (signed multiply instructions): Cast input operands to
67 signed32 before casting them to signed64 so that the sign bit
68 is propagated properly.
69
70 Mon Feb 23 20:23:19 1998 Mark Alexander <marka@cygnus.com>
71
72 * Makefile.in: Last change was bad. Define NL_TARGET
73 so that targ-vals.h will be used instead of syscall.h.
74 * simops.c: Use targ-vals.h instead of syscall.h.
75 (OP_F020): Disable unsupported system calls.
76
77 Mon Feb 23 09:44:38 1998 Mark Alexander <marka@cygnus.com>
78
79 * Makefile.in: Get header files from libgloss/mn10300/sys.
80
81 Sun Feb 22 16:02:24 1998 Jeffrey A Law (law@cygnus.com)
82
83 * simops.c: Include sim-types.h.
84
85 Wed Feb 18 13:07:08 1998 Jeffrey A Law (law@cygnus.com)
86
87 * simops.c (multiply instructions): Cast input operands to a
88 signed64/unsigned64 type as appropriate.
89
90 Tue Feb 17 12:47:16 1998 Andrew Cagney <cagney@b1.cygnus.com>
91
92 * interp.c (sim_store_register, sim_fetch_register): Pass in
93 length parameter. Return -1.
94
95 Sun Feb 1 16:47:51 1998 Andrew Cagney <cagney@b1.cygnus.com>
96
97 * configure: Regenerated to track ../common/aclocal.m4 changes.
98
99 Sat Jan 31 18:15:41 1998 Andrew Cagney <cagney@b1.cygnus.com>
100
101 * configure: Regenerated to track ../common/aclocal.m4 changes.
102
103 Mon Jan 19 22:26:29 1998 Doug Evans <devans@seba>
104
105 * configure: Regenerated to track ../common/aclocal.m4 changes.
106
107 Mon Dec 15 23:17:11 1997 Andrew Cagney <cagney@b1.cygnus.com>
108
109 * configure: Regenerated to track ../common/aclocal.m4 changes.
110 * config.in: Ditto.
111
112 Thu Dec 4 09:21:05 1997 Doug Evans <devans@canuck.cygnus.com>
113
114 * configure: Regenerated to track ../common/aclocal.m4 changes.
115
116 Tue Nov 11 10:38:52 1997 Jeffrey A Law (law@cygnus.com)
117
118 * simops.c (call:16 call:32): Stack adjustment is determined solely
119 by the imm8 field.
120
121 Wed Oct 22 14:43:00 1997 Andrew Cagney <cagney@b1.cygnus.com>
122
123 * interp.c (sim_load): Pass lma_p and sim_write args to
124 sim_load_file.
125
126 Tue Oct 21 10:12:03 1997 Jeffrey A Law (law@cygnus.com)
127
128 * simops.c: Correctly handle register restores for "ret" and "retf"
129 instructions.
130
131 Fri Oct 3 09:28:00 1997 Andrew Cagney <cagney@b1.cygnus.com>
132
133 * configure: Regenerated to track ../common/aclocal.m4 changes.
134
135 Wed Sep 24 17:38:57 1997 Andrew Cagney <cagney@b1.cygnus.com>
136
137 * configure: Regenerated to track ../common/aclocal.m4 changes.
138
139 Tue Sep 23 11:04:38 1997 Andrew Cagney <cagney@b1.cygnus.com>
140
141 * configure: Regenerated to track ../common/aclocal.m4 changes.
142
143 Mon Sep 22 11:46:20 1997 Andrew Cagney <cagney@b1.cygnus.com>
144
145 * configure: Regenerated to track ../common/aclocal.m4 changes.
146
147 Fri Sep 19 17:45:25 1997 Andrew Cagney <cagney@b1.cygnus.com>
148
149 * configure: Regenerated to track ../common/aclocal.m4 changes.
150
151 Mon Sep 15 17:36:15 1997 Andrew Cagney <cagney@b1.cygnus.com>
152
153 * configure: Regenerated to track ../common/aclocal.m4 changes.
154
155 Thu Sep 4 17:21:23 1997 Doug Evans <dje@seba>
156
157 * configure: Regenerated to track ../common/aclocal.m4 changes.
158
159 Wed Aug 27 18:13:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
160
161 * configure: Regenerated to track ../common/aclocal.m4 changes.
162 * config.in: Ditto.
163
164 Tue Aug 26 10:41:07 1997 Andrew Cagney <cagney@b1.cygnus.com>
165
166 * interp.c (sim_kill): Delete.
167 (sim_create_inferior): Add ABFD argument.
168 (sim_load): Move setting of PC from here.
169 (sim_create_inferior): To here.
170
171 Mon Aug 25 17:50:22 1997 Andrew Cagney <cagney@b1.cygnus.com>
172
173 * configure: Regenerated to track ../common/aclocal.m4 changes.
174 * config.in: Ditto.
175
176 Mon Aug 25 16:14:44 1997 Andrew Cagney <cagney@b1.cygnus.com>
177
178 * interp.c (sim_open): Add ABFD argument.
179
180 Tue Jun 24 13:46:20 1997 Jeffrey A Law (law@cygnus.com)
181
182 * interp.c (sim_resume): Clear State.exited.
183 (sim_stop_reason): If State.exited is nonzero, then indicate that
184 the simulator exited instead of stopped.
185 * mn10300_sim.h (struct _state): Add exited field.
186 * simops.c (syscall): Set State.exited for SYS_exit.
187
188 Wed Jun 11 22:07:56 1997 Jeffrey A Law (law@cygnus.com)
189
190 * simops.c: Fix thinko in last change.
191
192 Tue Jun 10 12:31:32 1997 Jeffrey A Law (law@cygnus.com)
193
194 * simops.c: "call" stores the callee saved registers into the
195 stack! Update the stack pointer properly when done with
196 register saves.
197
198 * simops.c: Fix return address computation for "call" instructions.
199
200 Thu May 22 01:43:11 1997 Jeffrey A Law (law@cygnus.com)
201
202 * interp.c (sim_open): Fix typo.
203
204 Wed May 21 23:27:58 1997 Jeffrey A Law (law@cygnus.com)
205
206 * interp.c (sim_resume): Add missing case in big switch
207 statement (for extb instruction).
208
209 Tue May 20 17:51:30 1997 Jeffrey A Law (law@cygnus.com)
210
211 * interp.c: Replace all references to load_mem and store_mem
212 with references to load_byte, load_half, load_3_byte, load_word
213 and store_byte, store_half, store_3_byte, store_word.
214 (INLINE): Delete definition.
215 (load_mem_big): Likewise.
216 (max_mem): Make it global.
217 (dispatch): Make this function inline.
218 (load_mem, store_mem): Delete functions.
219 * mn10300_sim.h (INLINE): Define.
220 (RLW): Delete unused definition.
221 (load_mem, store_mem): Delete declarations.
222 (load_mem_big): New definition.
223 (load_byte, load_half, load_3_byte, load_word): New functions.
224 (store_byte, store_half, store_3_byte, store_word): New functions.
225 * simops.c: Replace all references to load_mem and store_mem
226 with references to load_byte, load_half, load_3_byte, load_word
227 and store_byte, store_half, store_3_byte, store_word.
228
229 Tue May 20 10:21:51 1997 Andrew Cagney <cagney@b1.cygnus.com>
230
231 * interp.c (sim_open): Add callback to arguments.
232 (sim_set_callbacks): Delete SIM_DESC argument.
233
234 Mon May 19 13:54:22 1997 Jeffrey A Law (law@cygnus.com)
235
236 * interp.c (dispatch): Make this an inline function.
237
238 * simops.c (syscall): Use callback->write regardless of
239 what file descriptor we're writing too.
240
241 Sun May 18 16:46:31 1997 Jeffrey A Law (law@cygnus.com)
242
243 * interp.c (load_mem_big): Remove function. It's now a macro
244 defined elsewhere.
245 (compare_simops): New function.
246 (sim_open): Sort the Simops table before inserting entries
247 into the hash table.
248 * mn10300_sim.h: Remove unused #defines.
249 (load_mem_big): Define.
250
251 Fri May 16 16:36:17 1997 Jeffrey A Law (law@cygnus.com)
252
253 * interp.c (load_mem): If we get a load from an out of range
254 address, abort.
255 (store_mem): Likewise for stores.
256 (max_mem): New variable.
257
258 Tue May 6 13:24:36 1997 Jeffrey A Law (law@cygnus.com)
259
260 * mn10300_sim.h: Fix ordering of bits in the PSW.
261
262 * interp.c: Improve hashing routine to avoid long list
263 traversals for common instructions. Add HASH_STAT support.
264 Rewrite opcode dispatch code using a big switch instead of
265 cascaded if/else statements. Avoid useless calls to load_mem.
266
267 Mon May 5 18:07:48 1997 Jeffrey A Law (law@cygnus.com)
268
269 * mn10300_sim.h (struct _state): Add space for mdrq register.
270 (REG_MDRQ): Define.
271 * simops.c: Don't abort for trap. Add support for the extended
272 instructions, "getx", "putx", "mulq", "mulqu", "sat16", "sat24",
273 and "bsch".
274
275 Thu Apr 24 00:39:51 1997 Doug Evans <dje@canuck.cygnus.com>
276
277 * configure: Regenerated to track ../common/aclocal.m4 changes.
278
279 Fri Apr 18 14:04:04 1997 Andrew Cagney <cagney@b1.cygnus.com>
280
281 * interp.c (sim_stop): Add stub function.
282
283 Thu Apr 17 03:26:59 1997 Doug Evans <dje@canuck.cygnus.com>
284
285 * Makefile.in (SIM_OBJS): Add sim-load.o.
286 * interp.c (sim_kind, myname): New static locals.
287 (sim_open): Set sim_kind, myname. Ignore -E arg.
288 (sim_load): Return SIM_RC. New arg abfd. Call sim_load_file to
289 load file into simulator. Set start address from bfd.
290 (sim_create_inferior): Return SIM_RC. Delete arg start_address.
291
292 Wed Apr 16 19:30:44 1997 Andrew Cagney <cagney@b1.cygnus.com>
293
294 * simops.c (OP_F020): SYS_execv, SYS_time, SYS_times, SYS_utime
295 only include if implemented by host.
296 (OP_F020): Typecast arg passed to time function;
297
298 Mon Apr 7 23:57:49 1997 Jeffrey A Law (law@cygnus.com)
299
300 * simops.c (syscall): Handle new mn10300 calling conventions.
301
302 Mon Apr 7 15:45:02 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
303
304 * configure: Regenerated to track ../common/aclocal.m4 changes.
305 * config.in: Ditto.
306
307 Fri Apr 4 20:02:37 1997 Ian Lance Taylor <ian@cygnus.com>
308
309 * Makefile.in: Change mn10300-opc.o to m10300-opc.o, to match
310 corresponding change in opcodes directory.
311
312 Wed Apr 2 15:06:28 1997 Doug Evans <dje@canuck.cygnus.com>
313
314 * interp.c (sim_open): New arg `kind'.
315
316 * configure: Regenerated to track ../common/aclocal.m4 changes.
317
318 Wed Apr 2 14:34:19 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
319
320 * configure: Regenerated to track ../common/aclocal.m4 changes.
321
322 Thu Mar 20 11:58:02 1997 Jeffrey A Law (law@cygnus.com)
323
324 * simops.c: Fix register extraction for a two "movbu" variants.
325 Somewhat simplify "sub" instructions.
326 Correctly sign extend operands for "mul". Put the correct
327 half of the result in MDR for "mul" and "mulu".
328 Implement remaining instructions.
329 Tweak opcode for "syscall".
330
331 Tue Mar 18 14:21:21 1997 Jeffrey A Law (law@cygnus.com)
332
333 * simops.c: Do syscall emulation in "syscall" instruction. Add
334 dummy "trap" instruction.
335
336 Wed Mar 19 01:14:00 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
337
338 * configure: Regenerated to track ../common/aclocal.m4 changes.
339
340 Mon Mar 17 15:10:07 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
341
342 * configure: Re-generate.
343
344 Fri Mar 14 10:34:11 1997 Michael Meissner <meissner@cygnus.com>
345
346 * configure: Regenerate to track ../common/aclocal.m4 changes.
347
348 Thu Mar 13 12:54:45 1997 Doug Evans <dje@canuck.cygnus.com>
349
350 * interp.c (sim_open): New SIM_DESC result. Argument is now
351 in argv form.
352 (other sim_*): New SIM_DESC argument.
353
354 Wed Mar 12 15:04:00 1997 Jeffrey A Law (law@cygnus.com)
355
356 * simops.c: Fix carry bit computation for "add" instructions.
357
358 * simops.c: Fix typos in bset insns. Fix arguments to store_mem
359 for bset imm8,(d8,an) and bclr imm8,(d8,an).
360
361 Wed Mar 5 15:00:10 1997 Jeffrey A Law (law@cygnus.com)
362
363 * simops.c: Fix register references when computing Z and N bits
364 for lsr imm8,dn.
365
366 Tue Feb 4 13:33:30 1997 Doug Evans <dje@canuck.cygnus.com>
367
368 * Makefile.in (@COMMON_MAKEFILE_FRAG): Use
369 COMMON_{PRE,POST}_CONFIG_FRAG instead.
370 * configure.in: sinclude ../common/aclocal.m4.
371 * configure: Regenerated.
372
373 Fri Jan 24 10:47:25 1997 Jeffrey A Law (law@cygnus.com)
374
375 * interp.c (init_system): Allocate 2^19 bytes of space for the
376 simulator.
377
378 Thu Jan 23 11:46:23 1997 Stu Grossman (grossman@critters.cygnus.com)
379
380 * configure configure.in Makefile.in: Update to new configure
381 scheme which is more compatible with WinGDB builds.
382 * configure.in: Improve comment on how to run autoconf.
383 * configure: Re-run autoconf to get new ../common/aclocal.m4.
384 * Makefile.in: Use autoconf substitution to install common
385 makefile fragment.
386
387 Tue Jan 21 15:03:04 1997 Jeffrey A Law (law@cygnus.com)
388
389 * simops.c: Undo last change to "rol" and "ror", original code
390 was correct!
391
392 Thu Jan 16 11:28:14 1997 Jeffrey A Law (law@cygnus.com)
393
394 * simops.c: Fix "rol" and "ror".
395
396 Wed Jan 15 06:45:58 1997 Jeffrey A Law (law@cygnus.com)
397
398 * simops.c: Fix typo in last change.
399
400 Mon Jan 13 13:22:35 1997 Jeffrey A Law (law@cygnus.com)
401
402 * simops.c: Use REG macros in few places not using them yet.
403
404 Mon Jan 6 16:21:19 1997 Jeffrey A Law (law@cygnus.com)
405
406 * mn10300_sim.h (struct _state): Fix number of registers!
407
408 Tue Dec 31 16:20:41 1996 Jeffrey A Law (law@cygnus.com)
409
410 * mn10300_sim.h (struct _state): Put all registers into a single
411 array to make gdb implementation easier.
412 (REG_*): Add definitions for all registers in the state array.
413 (SEXT32, SEXT40, SEXT44, SEXT60): Remove unused macros.
414 * simops.c: Related changes.
415
416 Wed Dec 18 10:10:45 1996 Jeffrey A Law (law@cygnus.com)
417
418 * interp.c (sim_resume): Handle 0xff as a single byte insn.
419
420 * simops.c: Fix overflow computation for "add" and "inc"
421 instructions.
422
423 Mon Dec 16 10:03:52 1996 Jeffrey A Law (law@cygnus.com)
424
425 * simops.c: Handle "break" instruction.
426
427 * simops.c: Fix restoring the PC for "ret" and "retf" instructions.
428
429 Wed Dec 11 09:53:10 1996 Jeffrey A Law (law@cygnus.com)
430
431 * gencode.c (write_opcodes): Also write out the format of the
432 opcode.
433 * mn10300_sim.h (simops): Add "format" field.
434 * interp.c (sim_resume): Deal with endianness issues here.
435
436 Tue Dec 10 15:05:37 1996 Jeffrey A Law (law@cygnus.com)
437
438 * simops.c (REG0_4): Define.
439 Use REG0_4 for indexed loads/stores.
440
441 Sat Dec 7 09:50:28 1996 Jeffrey A Law (law@cygnus.com)
442
443 * simops.c (REG0_16): Fix typo.
444
445 Fri Dec 6 14:13:34 1996 Jeffrey A Law (law@cygnus.com)
446
447 * simops.c: Call abort for any instruction that's not currently
448 simulated.
449
450 * simops.c: Define accessor macros to extract register
451 values from instructions. Use them consistently.
452
453 * interp.c: Delete unused global variable "OP".
454 (sim_resume): Remove unused variable "opcode".
455 * simops.c: Fix some uninitialized variable problems, add
456 parens to fix various -Wall warnings.
457
458 * gencode.c (write_header): Add "insn" and "extension" arguments
459 to the OP_* declarations.
460 (write_template): Similarly for function templates.
461 * interp.c (insn, extension): Remove global variables. Instead
462 pass them as arguments to the OP_* functions.
463 * mn10300_sim.h: Remove decls for "insn" and "extension".
464 * simops.c (OP_*): Accept "insn" and "extension" as arguments
465 instead of using globals.
466
467 Thu Dec 5 22:26:31 1996 Jeffrey A Law (law@cygnus.com)
468
469 * simops.c: Fix typos in "mov am,(d16,an)" and "mov am,(d32,an)"
470
471 * simops.c: Fix thinkos in last change to "inc dn".
472
473 Wed Dec 4 10:57:53 1996 Jeffrey A Law (law@cygnus.com)
474
475 * simops.c: "add imm,sp" does not effect the condition codes.
476 "inc dn" does effect the condition codes.
477
478 Tue Dec 3 17:37:45 1996 Jeffrey A Law (law@cygnus.com)
479
480 * simops.c: Treat both operands as signed values for
481 "div" instruction.
482
483 * simops.c: Fix simulation of division instructions.
484 Fix typos/thinkos in several "cmp" and "sub" instructions.
485
486 Mon Dec 2 12:31:40 1996 Jeffrey A Law (law@cygnus.com)
487
488 * simops.c: Fix carry bit handling in "sub" and "cmp"
489 instructions.
490
491 * simops.c: Fix "mov imm8,an" and "mov imm16,dn".
492
493 Sun Dec 1 16:05:42 1996 Jeffrey A Law (law@cygnus.com)
494
495 * simops.c: Fix overflow computation for many instructions.
496
497 * simops.c: Fix "mov dm, an", "movbu dm, (an)", and "movhu dm, (an)".
498
499 * simops.c: Fix "mov am, dn".
500
501 * simops.c: Fix more bugs in "add imm,an" and
502 "add imm,dn".
503
504 Wed Nov 27 09:20:42 1996 Jeffrey A Law (law@cygnus.com)
505
506 * simops.c: Fix bugs in "movm" and "add imm,an".
507
508 * simops.c: Don't lose the upper 24 bits of the return
509 pointer in "call" and "calls" instructions. Rough cut
510 at emulated system calls.
511
512 * simops.c: Implement the remaining 5, 6 and 7 byte instructions.
513
514 * simops.c: Implement remaining 4 byte instructions.
515
516 * simops.c: Implement remaining 3 byte instructions.
517
518 * simops.c: Implement remaining 2 byte instructions. Call
519 abort for instructions we're not implementing now.
520
521 Tue Nov 26 15:43:41 1996 Jeffrey A Law (law@cygnus.com)
522
523 * simops.c: Implement lots of random instructions.
524
525 * simops.c: Implement "movm" and "bCC" insns.
526
527 * mn10300_sim.h (_state): Add another register (MDR).
528 (REG_MDR): Define.
529 * simops.c: Implement "cmp", "calls", "rets", "jmp" and
530 a few additional random insns.
531
532 * mn10300_sim.h (PSW_*): Define for CC status tracking.
533 (REG_D0, REG_A0, REG_SP): Define.
534 * simops.c: Implement "add", "addc" and a few other random
535 instructions.
536
537 * gencode.c, interp.c: Snapshot current simulator code.
538
539 Mon Nov 25 12:46:38 1996 Jeffrey A Law (law@cygnus.com)
540
541 * Makefile.in, config.in, configure, configure.in: New files.
542 * gencode.c, interp.c, mn10300_sim.h, simops.c: New files.
543