2003-06-27 Michael Snyder <msnyder@redhat.com>
[platform/upstream/binutils.git] / sim / sh / ChangeLog
1 2003-07-03  Michael Snyder  <msnyder@redhat.com>
2
3         * gencode.c (movs): Fix a couple of text transpositions.
4
5 2003-06-27  Michael Snyder  <msnyder@redhat.com>
6
7         * gencode.c (gensim_caselist): The movy instructions use
8         registers R6 and R7 (not R4 and R5 like the movx insns).
9
10 2003-06-27  Michael Snyder  <msnyder@redhat.com>
11
12         * gencode.c (op movsxy_tab): Fix up some copy/paste errors
13         in name: s/REG_x/REG_y/.
14
15         * gencode.c (op tab): Move misplaced semicolon.
16
17 2003-02-27  Andrew Cagney  <cagney@redhat.com>
18
19         * interp.c (init_dsp, sim_open, sim_create_inferior): Rename _bfd
20         to bfd.
21
22 Fri Oct 11 16:22:28 2002  J"orn Rennecke <joern.rennecke@superh.com>
23
24         * interp.c (trap): Return int.  Take extra parameter for address
25         of the trap instruction.  Changed all callers.
26         Add case 33 for profiling.
27         * gencode.c (trapa): Handle trap 33 using the trap function.
28         Add read of vector for generic traps.
29
30 Wed Jul 17 19:36:38 2002  J"orn Rennecke <joern.rennecke@superh.com>
31
32         * Makefile.in (interp.o): Depend on $(srcroot)/include/gdb/sim-sh.h.
33         * interp.c: Include "gdb/sim-sh.h".
34         (sim_store_register, sim_fetch_register): Use constants defined there.
35
36 Tue Jun 18 16:53:11 2002  J"orn Rennecke <joern.rennecke@superh.com>
37
38         * interp.c (sim_resume): Fix setting of bus error for
39         instruction fetch.
40
41 2002-06-16  Andrew Cagney  <ac131313@redhat.com>
42
43         * configure: Regenerated to track ../common/aclocal.m4 changes.
44
45 2002-06-08  Andrew Cagney  <cagney@redhat.com>
46
47         * interp.c: Include "gdb/callback.h" and "gdb/remote-sim.h".
48
49 2001-01-30  Ben Elliston  <bje@redhat.com>
50
51         * interp.c (sim_create_inferior): Record program arguments for
52         later inspection by the trap handler.
53         (count_argc): New function.
54         (prog_argv): Declare static.
55         (sim_write): Declare.
56         (trap): Implement argc, argnlen and argn system calls. Do not
57         abort on unknown system calls--simply return -1.
58         * syscall.h (SYS_argc, SYS_argnlen, SYS_argn): Define.
59
60 2001-01-24  Alexandre Oliva  <aoliva@redhat.com>
61
62         * interp.c (trap): Implement time.
63
64 2000-10-24  Ben Elliston  <bje@redhat.com>
65
66         * gencode.c (tab): Delimit strings with commas where applicable.
67
68 Tue May 23 21:39:23 2000  Andrew Cagney  <cagney@b1.cygnus.com>
69
70         * configure: Regenerated to track ../common/aclocal.m4 changes.
71
72 Mon May 15 22:04:51 2000  J"orn Rennecke <amylaar@cygnus.co.uk>
73
74 sh-dsp support, simulator speedup by using host byte order:
75
76         * Makefile.in (interp.o): Depends on ppi.c .
77         (ppi.c): New rule.
78         * gencode.c (printonmatch, think, genopc): Deleted.
79         (MAX_NR_STUFF): Now 42.
80         (tab): Add SH-DSP CPU instructions.
81         Amalgamate ldc / stc / lds / sts instructions with similar
82         bit patterns.  Fix opcodes of stc Rm_BANK,@-<REG_N>.
83         Fix semantics of lds.l @<REG_N>+,MACH (no sign extend).
84         (movsxy_tab): New array.
85         For movs, change MMMM field to GGGG, and mmmm field to MMMM.
86         Added entries for movx, movy and parallel processing insns.
87         (ppi_tab): New array.
88         (qfunc): Stabilize sort.
89         (expand_opcode): Handle [01][01]NN, [01][01]xx and [01][01]yy.
90         Handle 'M', 'G' 's' 'X', 'a', 'Y' and 'A'.
91         (dumptable): Now takes three arguments.  Changed all callers.
92         Emit just one contigous jump table.
93         (filltable): Now takes an argument.  Changed all callers.
94         Make index static.
95         (ppi_moves, expand_ppi_code, ppi_filltable, ppi_gensim): New functions.
96         (gensim_caselist): New function, broken out of gensim.
97         Handle opcode fields 'x', 'y', 's', 'M', 'G', 'X', 'a', and 'Y'.
98         Handle ref '9'.
99         (gensim): Handle 'N' in code field and '8' in refs field.
100         Call gensim_caselist - twice.
101         (ppi_index): New static variable.
102         (main): Unsupport default action.
103         Add dsp support for -x / -s option.  Add -p option.
104         * interp.c (sh_jump_table, sh_dsp_table, ppi_table): Declare.
105         (saved_state_type): Rearrange to allow amalgamated ldc / stc /
106         lds / sts to work efficiently.
107         (target_dsp): New static variable.
108         (GBR, VBR, SSR, SPC, MACH, MACL): Reflect saved_state_type change.
109         (FPUL, Rn_BANK, SET_Rn_BANK, M, Q, S, T, SR_BL, SR_RB): Likewise.
110         (SR_MD, SR_RC, SET_SR_BIT, GET_SR, SET_RC, GET_FPSCR): Likewise.
111         (RS, RE, MOD, MOD_ME, DSP_R): Likewise.
112         (set_fpscr1): Likewise.  Use target_dsp to check for dsp.
113         (MOD_MSi, SIG_BUS_FETCH): Deleted.
114         (CREG, SREG, PR, SR_MASK_DMY, SR_MASK_DMX, SR_DMY): New macros.
115         (SR_DMX, DSR, MOD_DELTA, GET_DSP_GRD): Likewise.
116         (SET_MOD): Reflect saved_state_type change.  Set MOD_DELTA instead
117         of MOD_MS, and encode SR_DMY / SR_DMX into high word of MOD_ME.
118         (set_sr): Reflect saved_state_type change.  Fix SR_RB handling.
119         Use SET_MOD.
120         (MA, L, TL, TB): Now controlled by ACE_FAST.
121         (SEXT32): Just cast to int.
122         (SIGN32): Fixed to only shift by 31.
123         (CHECK_INSN_PTR): SIGBUS at insn fetch now represented by insn_end 0.
124         (ppi_insn): Declare.
125         (ppi.c): Include.
126         (init_dsp): Set target_dsp.  When it changes, switch end of
127         sh_jump_table with sh_dsp_table.
128         (sim_resume) Don't declare sh_jump_table0.  Use sh_jump_table instead.
129         Don't Declare PR if it's #defined.
130         Fix single-stepping (Was broken in Mar  6 16:59:10 patch).
131         (sim_store_register, sim_read_register): Translate accesses to
132         reflect saved_state_type change.
133
134         * interp.c (set_sr): Set sr.
135         (SET_RC, MOD, MOD_MS, MOD_ME, SET_MOD, MOD_MS, MOD_ME): New macros.
136         (set_fpscr1): Don't bank-switch fpu registers when simulating sh-dsp.
137         (DSP_R): Fix definition.
138         (sim_resume): Remove outdated SET_SR use.
139
140         * interp.c (saved_state): New members for struct member asregs:
141         rs, re, insn_end, xram_start, yram_start.
142         (struct loop_bounds): New struct.
143         (SKIP_INSN): New macro.
144         (get_loop_bounds): New function.
145         (endianw): Renamed to global_endianw.
146         (maskw): negated bits.
147         (PC): Now insn_ptr.
148         (SR_MASK_RC, SR_RC_INCREMENT, SR_RC, RAISE_EXCEPTION): New macros.
149         (RS, RE, DSP_R, DSP_GRD, A1, A0, X0, X1, Y0, Y1, M0, A1G): Likewise.
150         (M1, A0G, RIAT, PT2H, PH2T, SET_NIP, CHECK_INSN_PTR): Likewise.
151         (SIG_BUS_FETCH): Likewise
152         (raise_exception, riat_fast): New functions.
153         (raise_buserror, sim_stop): Use raise_exception.
154         (PROCESS_SPECIAL_ADDRESS): Use xram_start / yram_start.
155         (BUSERROR, WRITE_BUSERROR, READ_BUSERROR):
156         Reverse sense of mask argument.
157         (FP_OP, set_dr): Use RAISE_EXCEPTION.
158         (wlat_fast, wwat_fast, wbat_fast, rlat_fast, rwat_fast, rbat_fast):
159         Declare.  Remove redundant masking.
160         (wwat_fast, rwat_fast): Add argument endianw.  Changed callers.
161         (MA): Updated for change pc -> PC.
162         (Delay_Slot): Use RIAT.
163         (empty): Deleted.
164         (trap): Remove argument little_endian.  Add argument endianw.
165         Changed all callers.  Use raise_exception.
166         (macw): Add argument endainw.  Changed all callers.
167         (init_dsp): New function, extended after broken out of init_pointers.
168         (sim_resume): Replace pc with insn_ptr.  Replace little_endian with
169         endianw.  Replace nia with nip.  Reverse sense of maskb / maskw /
170         maskl.  Implement logic for zero-overhead loops.  Don't try to
171         interpret garbage when getting a SIGBUS at insn fetch.
172         (sim_open): Call init_dsp.
173         * gencode.c (tab): Use SET_NIP instead of nia = .  Use PH2T / PT2H /
174         RAISE_EXCEPTION where appropriate.
175         Add extra cycles for brai, braf , bsr, bsrf, jmp, jsr.
176
177         * interp.c (sim_store_register, sim_fetch_register):
178         Do proper endianness switch.
179
180         * interp.c (saved_state_type): New members for struct member asregs:
181         xymem_select, xmem, ymem, xmem_offset, ymem_offset.
182         (special_address): Delete.
183         (BUSERROR): Now a two-argument predicate.
184         (PROCESS_SPECIAL_ADDRESS, WRITE_BUSERROR, READ_BUSERROR): New macros.
185         (wlat_little, wwat_little, wbat_any, wlat_big, wwat_big): Delete.
186         (process_wlat_addr, process_wwat_addr): New functions.
187         (process_wbat_addr, process_rlat_addr, process_rwat_addr): Likewise.
188         (process_rbat_addr): Likewise.
189         (wlat_fast, wwat_fast, wbat_fast): Use WRITE_BUSERROR.
190         (rlat_little, rwat_little, rbat_any, rlat_big, rwat_big): Delete.
191         (rlat_fast, rwat_fast, rbat_fast): Use READ_BUSERROR.
192         (RWAT, RLAT, RBAT, WWAT, WLAT, WBAT): Delete SLOW versions.
193         (do_rdat, trap): Delete SLOW code.
194         (SEXT32, SIGN32): New macros.
195         (swap, swap16): Now integer in - integer out.  Changed all callers.
196         (strswaplen, strnswap): Delete SLOW versions.
197         (init_pointers): Initialize dsp memory selection (preliminary).
198         (sim_store_register, sim_fetch_register): Use swap instead of
199         big / little endian read / write functions.
200
201         * interp.c (maskl): Deleted.
202         (endianw, endianb): New variables.
203         (special_address): Now inline.
204         (bp_holder): Put raising of buserror there, rename to:
205         (raise_buserror).
206         (BUSERROR): Now yields a value.  Changed all users.
207         (wbat_big): Delete.
208         (wlat_fast, wwat_fast, wbat_fast): New functions.
209         (rlat_fast, rwat_fast, rbat_fast): Likewise.
210         (RWAT, RLAT, RBAT, WWAT, WLAT, WBAT): Use new functions.
211         (do_rdat, do_wdat): Likewise.  Take maskl argument instead of
212         little_endian one.  Changed caller macros.
213         (swap, swap16): Use w[rw]lat_big / w[rw]lat_little directly.
214         (strswaplen, strnswap): New functions.
215         (trap): Use them to fix up endian mismatches;
216         disable SYS_execve and SYS_execv; fix double address translation for
217         SYS_pipe and SYS_stat.
218         (sym_write, sym_read): Add endianness translation.
219         (sym_store_register, sym_fetch_register): Add maskl local variable.
220         (sim_open): Set endianw and endianb.
221
222 Thu Sep  2 18:15:53 1999  Andrew Cagney  <cagney@b1.cygnus.com>
223
224         * configure: Regenerated to track ../common/aclocal.m4 changes.
225
226 Wed Aug 25 07:55:23 1999  Brendan Kehoe  <brendan@cygnus.com>
227
228         * gencode.c (fcnvds <DR_N>,FPUL): Rewrite to use a local anonymous
229         union type, instead of casting to an int* then a float*.
230         (fcnvsd FPUL,<DR_N>): Likewise.
231         (flds <FREG_N>,FPUL): Likewise.
232         (fsts FPUL,<FREG_N>): Likewise.
233
234 1999-05-08  Felix Lee  <flee@cygnus.com>
235
236         * configure: Regenerated to track ../common/aclocal.m4 changes.
237         
238 1999-04-02  Keith Seitz  <keiths@cygnus.com>
239
240         * interp.c (POLL_QUIT_INTERVAL): Define. Used to tweak the
241         frequency at which the poll_quit callback is called.
242         (sim_resume): Use POLL_QUIT_INTERVAL instead of a
243         hard-coded value.
244
245 Thu Sep 10 02:16:39 1997  J"orn Rennecke <amylaar@cygnus.co.uk>
246
247         * interp.c (saved_state.asregs): Add new member pad_dummy.
248         (sim_store_register, sim_fetch_regsiter): Add 1 to rn for use
249         as index into saved_state.asints.
250
251 Mon Jun 29 19:35:24 1998  Jason Molenda  (crash@bugshack.cygnus.com)
252
253         * interp.c (sim_open): set endianness based on the ABFD if a -E
254         option is not present and we have an ABFD.
255
256 Tue Apr 28 18:33:31 1998  Geoffrey Noer  <noer@cygnus.com>
257
258         * configure: Regenerated to track ../common/aclocal.m4 changes.
259
260 Sun Apr 26 15:31:55 1998  Tom Tromey  <tromey@creche>
261
262         * configure: Regenerated to track ../common/aclocal.m4 changes.
263         * config.in: Ditto.
264
265 Sun Apr 26 15:19:48 1998  Tom Tromey  <tromey@cygnus.com>
266
267         * acconfig.h: New file.
268         * configure.in: Reverted change of Apr 24; use sinclude again.
269
270 Fri Apr 24 14:16:40 1998  Tom Tromey  <tromey@creche>
271
272         * configure: Regenerated to track ../common/aclocal.m4 changes.
273         * config.in: Ditto.
274
275 Fri Apr 24 11:18:35 1998  Tom Tromey  <tromey@cygnus.com>
276
277         * configure.in: Don't call sinclude.
278
279 Sat Apr  4 20:36:25 1998  Andrew Cagney  <cagney@b1.cygnus.com>
280
281         * configure: Regenerated to track ../common/aclocal.m4 changes.
282
283 Fri Mar 27 16:15:52 1998  Andrew Cagney  <cagney@b1.cygnus.com>
284
285         * configure: Regenerated to track ../common/aclocal.m4 changes.
286
287 Wed Mar 25 12:35:29 1998  Andrew Cagney  <cagney@b1.cygnus.com>
288
289         * configure: Regenerated to track ../common/aclocal.m4 changes.
290
291 Wed Mar 18 12:38:12 1998  Andrew Cagney  <cagney@b1.cygnus.com>
292
293         * configure: Regenerated to track ../common/aclocal.m4 changes.
294
295 Tue Feb 17 12:49:44 1998  Andrew Cagney  <cagney@b1.cygnus.com>
296
297         * interp.c (sim_fetch_register, sim_store_register): Pass in
298         length parameter.  Return -1.
299
300 Sun Feb  1 16:47:51 1998  Andrew Cagney  <cagney@b1.cygnus.com>
301
302         * configure: Regenerated to track ../common/aclocal.m4 changes.
303
304 Sat Jan 31 18:15:41 1998  Andrew Cagney  <cagney@b1.cygnus.com>
305
306         * configure: Regenerated to track ../common/aclocal.m4 changes.
307
308 Mon Jan 19 22:26:29 1998  Doug Evans  <devans@seba>
309
310         * configure: Regenerated to track ../common/aclocal.m4 changes.
311
312 Mon Dec 15 23:17:11 1997  Andrew Cagney  <cagney@b1.cygnus.com>
313
314         * configure: Regenerated to track ../common/aclocal.m4 changes.
315         * config.in: Ditto.
316
317 Thu Dec  4 09:21:05 1997  Doug Evans  <devans@canuck.cygnus.com>
318
319         * configure: Regenerated to track ../common/aclocal.m4 changes.
320
321 Wed Oct 22 14:43:00 1997  Andrew Cagney  <cagney@b1.cygnus.com>
322
323         * interp.c (sim_load): Pass lma_p and sim_write args to
324         sim_load_file.
325
326 Fri Oct  3 09:28:00 1997  Andrew Cagney  <cagney@b1.cygnus.com>
327
328         * configure: Regenerated to track ../common/aclocal.m4 changes.
329
330 Wed Sep 24 17:38:57 1997  Andrew Cagney  <cagney@b1.cygnus.com>
331
332         * configure: Regenerated to track ../common/aclocal.m4 changes.
333
334 Tue Sep 23 11:04:38 1997  Andrew Cagney  <cagney@b1.cygnus.com>
335
336         * configure: Regenerated to track ../common/aclocal.m4 changes.
337
338 Mon Sep 22 11:46:20 1997  Andrew Cagney  <cagney@b1.cygnus.com>
339
340         * configure: Regenerated to track ../common/aclocal.m4 changes.
341
342 Fri Sep 19 17:45:25 1997  Andrew Cagney  <cagney@b1.cygnus.com>
343
344         * configure: Regenerated to track ../common/aclocal.m4 changes.
345
346 Mon Sep 15 17:36:15 1997  Andrew Cagney  <cagney@b1.cygnus.com>
347
348         * configure: Regenerated to track ../common/aclocal.m4 changes.
349
350 Tue Sep  9 20:52:21 1997  Felix Lee  <flee@cygnus.com>
351
352         * interp.c (sim_resume): poll_quit() at least once per call;
353         otherwise gdb can loop sim_resume() uninterruptably.
354
355 Thu Sep  4 17:21:23 1997  Doug Evans  <dje@seba>
356
357         * configure: Regenerated to track ../common/aclocal.m4 changes.
358
359 Tue Sep  2 13:15:27 1997  Andrew Cagney  <cagney@b1.cygnus.com>
360
361         * gencode.c (tab): Order instructions according to SH3 document.
362
363 Wed Aug 27 18:13:22 1997  Andrew Cagney  <cagney@b1.cygnus.com>
364
365         * configure: Regenerated to track ../common/aclocal.m4 changes.
366         * config.in: Ditto.
367
368 Tue Aug 26 10:41:55 1997  Andrew Cagney  <cagney@b1.cygnus.com>
369
370         * interp.c (sim_kill): Delete.
371         (sim_create_inferior): Add ABFD argument.
372         (sim_load): Move setting of PC from here.
373         (sim_create_inferior): To here.
374
375 Mon Aug 25 17:50:22 1997  Andrew Cagney  <cagney@b1.cygnus.com>
376
377         * configure: Regenerated to track ../common/aclocal.m4 changes.
378         * config.in: Ditto.
379
380 Mon Aug 25 16:17:51 1997  Andrew Cagney  <cagney@b1.cygnus.com>
381
382         * interp.c (sim_open): Add ABFD argument.
383
384 Mon Jun 23 15:49:14 1997  Andrew Cagney  <cagney@b1.cygnus.com>
385
386         * interp.c (get_dr): Avoid SIGFPE by moving integers instead of
387         FP's around.
388         (set_dr): Ditto.
389         
390 Mon Jun 23 15:02:40 1997  Andrew Cagney  <cagney@b1.cygnus.com>
391
392         * interp.c (XD, SET_XD): Delete.
393         (XF, SET_XF, XD_TO_XF): Define, move around registers in either
394         FP bank.
395         
396         * gencode.c (fmov): Update.
397
398 Sun Jun 22 19:33:33 1997  Andrew Cagney  <cagney@b1.cygnus.com>
399
400         * interp.c (set_fpscr1): From J"orn Rennecke
401         <amylaar@cygnus.co.uk>, Fix typo. Ditto for comment.
402         
403 Tue Aug 12 00:19:11 1997  J"orn Rennecke <amylaar@cygnus.co.uk>
404
405         * interp.c (special_address): New function.
406         (BUSERROR): Call it.  Added parameters bits_written and data.
407         Changed all callers.
408         * gencode.c (tab): Fixed ocbwb and pref.
409
410 Fri Jun 20 22:03:18 1997  J"orn Rennecke <amylaar@cygnus.co.uk>
411
412         * interp.c (do_wdat, do_wdat): Fix bug in register number calculation.
413
414 Thu Jun 19 00:28:08 1997  Andrew Cagney  <cagney@b1.cygnus.com>
415
416         * interp.c (sim_create_inferior): Clear registers each time an
417         inferior is started.
418
419 Mon Jun 16 14:01:55 1997  Andrew Cagney  <cagney@b1.cygnus.com>
420
421         * interp.c (*FP, FP_OP, FP_CMP, FP_UNARY): Provide a hook for
422         when a host doesn't support IEEE FP.
423         (*DP): Provide alternative definition that supports 64bit floating
424         point.
425         (target_little_endian): Combine little_endian and little_endian_p.
426         (saved_state_type): Make fpscr and sr simple integers.
427         (SET_FPSCR, GET_FPSCR): Use macros to update fpscr register.
428         (set_fpscr1): New function.  Handle swapping when PR / FR bits
429         changed. Call via *_FPSCR macro.
430         (SET_SR*, GET_SR*): Use macro's to access the SR bits - avoids
431         endian problems.
432
433         * gencode.c (tab): Update.
434         
435 Sun Jun 15 15:22:52 1997  Andrew Cagney  <cagney@b1.cygnus.com>
436
437         * gencode.c (main): Perform basic checks on tab entries.
438
439         * Makefile.in (gencode): Always compile with -g.
440
441 Sat Jun 14 13:45:09 1997  Andrew Cagney  <cagney@b1.cygnus.com>
442
443         * gencode.c (gensim): Move ref checking code to before `stuff'.
444         For branches with delay slots refs were not being checked.
445
446         * interp.c (sim_resume): Use nia to specify the next instruction
447         address instead of overloading pc.
448         (C): Delete definiton - refer to cycles directly.
449         (SEXT12): New macro - sign extend a 12 bit quantity.
450         (Delay_Slot): Rename from SL.
451
452         * gencode.c (tab): Update/simplify.
453         
454         * gencode.c (gensim): Better formatting of output code.
455         (gensim): Replace 10 with constant MAX_NR_STUFF- define as 15.
456         (tab): Sort alphabetically.  Break `stuff' into multiple lines.
457
458 Fri Jun 13 22:10:13 1997  J"orn Rennecke <amylaar@cygnus.co.uk>
459
460         * gencode.c (braf, bsrf): Fix branch destination calculation to
461         be in accordance with the documentation.
462
463 Fri Jun 13 15:33:53 1997  J"orn Rennecke <amylaar@cygnus.co.uk>
464
465         * interp.c (init_pointers): Fix little endian test.
466
467 Thu Jun  5 12:56:08 1997  J"orn Rennecke <amylaar@cygnus.co.uk>
468
469         * interp.c (init_pointers): SH4 hardware is always WORDS_BIT_ENDIAN.
470         * gencode (fmov from/to memory): take endian_mismatch into account
471         for 32 bit moves too.
472
473 Wed May 28 23:42:35 1997  J"orn Rennecke <amylaar@cygnus.co.uk>
474
475         * gencode.c (swap.b): Fix treatment of high word.
476
477 Wed May 28 23:42:35 1997  J"orn Rennecke <amylaar@cygnus.co.uk>
478
479         * sh/gencode.c,
480         * interp.c: experimental SH4 support.
481         DFmode moves are probaly broken for target little endian.
482
483 Tue May 20 10:23:28 1997  Andrew Cagney  <cagney@b1.cygnus.com>
484
485         * interp.c (sim_open): Add callback argument.
486         (sim_set_callbacks): Delete SIM_DESC argument.
487
488 Wed Apr 30 11:38:08 1997  Doug Evans  <dje@canuck.cygnus.com>
489
490         * Makefile.in (SIM_EXTRA_CLEAN): Define.
491         (clean targets): Delete.
492         (sh-clean): New target.
493
494 Thu Apr 24 00:39:51 1997  Doug Evans  <dje@canuck.cygnus.com>
495
496         * configure: Regenerated to track ../common/aclocal.m4 changes.
497
498 Wed Apr 23 17:55:22 1997  Doug Evans  <dje@canuck.cygnus.com>
499
500         * tconfig.in: New file.
501         * interp.c (sim_open): Handle missing arg to -E.
502
503 Tue Apr 22 08:55:35 1997  Stu Grossman  (grossman@critters.cygnus.com)
504
505         * Makefile.in:  Add clean targets.
506
507 Fri Apr 18 18:57:04 1997  Stu Grossman  (grossman@critters.cygnus.com)
508
509         * interp.c:  Include float.h and define SIGTRAP if _WIN32.
510         WIN32 -> _WIN32.
511         * (trap):  Do do SYS_chown for _WIN32.
512
513 Fri Apr 18 13:33:09 1997  Doug Evans  <dje@canuck.cygnus.com>
514
515         * interp.c (sim_resume): Fix argument to poll_quit.
516
517 Fri Apr 18 14:14:49 1997  Andrew Cagney  <cagney@b1.cygnus.com>
518
519         * interp.c (sim_stop): New function.
520         (sim_resume): Use poll_quit for polling.
521
522 Thu Apr 17 03:32:04 1997  Doug Evans  <dje@canuck.cygnus.com>
523
524         * Makefile.in (SIM_OBJS): Add sim-load.o.
525         * interp.c (target_byte_order): Delete.
526         (sim_kind, myname, little_endian_p): New static locals.
527         (init_pointers): Use little_endian_p instead of target_byte_order.
528         (sim_resume): Likewise.
529         (sim_open): Set sim_kind, myname.  Set little_endian_p from -E arg.
530         (sim_load): Return SIM_RC.  New arg abfd.  Call sim_load_file to
531         load file into simulator.  Set start address from bfd.
532         (sim_create_inferior): Return SIM_RC.  Delete arg start_address.
533
534 Mon Apr  7 15:45:02 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
535
536         * configure: Regenerated to track ../common/aclocal.m4 changes.
537         * config.in: Ditto.
538
539 Wed Apr  2 15:06:28 1997  Doug Evans  <dje@canuck.cygnus.com>
540
541         * interp.c (sim_open): New arg `kind'.
542
543         * configure: Regenerated to track ../common/aclocal.m4 changes.
544
545 Wed Apr  2 14:34:19 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
546
547         * configure: Regenerated to track ../common/aclocal.m4 changes.
548
549 Wed Mar 19 09:34:36 1997  Fred Fish  <fnf@cygnus.com>
550
551         * interp.c (sim_do_command): Check for NULL command or empty
552         string and handle it the same as a "help" command.  Use callback
553         to print error message for unrecognized commands.  Replace
554         hardcoded tab in literal string with a \t.  Other minor code
555         cleanup.
556
557 Wed Mar 19 01:14:00 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
558
559         * configure: Regenerated to track ../common/aclocal.m4 changes.
560
561 Mon Mar 17 15:10:07 1997  Andrew Cagney  <cagney@kremvax.cygnus.com>
562
563         * configure: Re-generate.
564
565 Fri Mar 14 10:34:11 1997  Michael Meissner  <meissner@cygnus.com>
566
567         * configure: Regenerate to track ../common/aclocal.m4 changes.
568
569 Thu Mar 13 13:00:00 1997  Doug Evans  <dje@canuck.cygnus.com>
570
571         * interp.c (sim_open): New SIM_DESC result.  Argument is now
572         in argv form.
573         (other sim_*): New SIM_DESC argument.
574
575 Tue Feb  4 13:33:30 1997  Doug Evans  <dje@canuck.cygnus.com>
576
577         * Makefile.in (@COMMON_MAKEFILE_FRAG): Use
578         COMMON_{PRE,POST}_CONFIG_FRAG instead.
579         * configure.in: sinclude ../common/aclocal.m4.
580         * configure: Regenerated.
581
582 Thu Jan 23 11:46:23 1997  Stu Grossman  (grossman@critters.cygnus.com)
583
584         * configure configure.in Makefile.in:  Update to new configure
585         scheme which is more compatible with WinGDB builds.
586         * configure.in:  Improve comment on how to run autoconf.
587         * configure:  Re-run autoconf to get new ../common/aclocal.m4.
588         * Makefile.in:  Use autoconf substitution to install common
589         makefile fragment.
590
591 Wed Nov 20 02:04:32 1996  Doug Evans  <dje@canuck.cygnus.com>
592
593         * Makefile.in: Delete stuff moved to ../common/Make-common.in.
594         (SIM_OBJS,SIM_EXTRA_LIBS): Define.
595         * configure.in: Simplify using macros in ../common/aclocal.m4.
596         Call AC_CHECK_HEADERS(unistd.h).
597         * configure: Regenerated.
598         * config.in: New file.
599         * interp.c: #include "config.h".  #include <unistd.h> if present.
600         (trap): Fetch errno value with callback->get_errno.
601
602 Tue Nov 12 13:34:00 1996  Dawn Perchik  <dawn@cygnus.com>   
603
604         * interp.c: Don't include windows polling code if inside simluator.
605
606 Fri Sep 20 14:57:50 1996  Stan Shebs  <shebs@andros.cygnus.com>
607
608         * interp.c: Minor formatting improvements.
609         (saved_state_type): Add bank registers.
610         (bp_holder): New function, use to break on when debugging BUSERROR.
611         (BUSERROR): Call it if bus error occurs.
612
613 Wed Jun 26 12:29:22 1996  Jason Molenda  (crash@godzilla.cygnus.co.jp)
614
615         * Makefile.in (bindir, libdir, datadir, mandir, infodir, includedir,
616         INSTALL_PROGRAM, INSTALL_DATA): Use autoconf-set values.
617         (docdir): Removed.
618         * configure.in (AC_PREREQ): autoconf 2.5 or higher.
619         (AC_PROG_INSTALL): Added.
620         * configure: Rebuilt.
621
622 Thu May 16 15:44:29 1996  Ian Lance Taylor  <ian@cygnus.com>
623
624         * interp.c (saved_state_type): Add memstalls field.
625         (MA) Define macro.
626         (sim_resume): New local variable memstalls.  Add it back in to
627         saved_state at the end of the function.
628         (sim_info): Report memstalls.
629         * gencode.c (tab): Add MA() to the execution string of all
630         instructions which access memory.
631
632 Wed Feb 21 12:16:41 1996  Ian Lance Taylor  <ian@cygnus.com>
633
634         * configure: Regenerate with autoconf 2.7.
635
636 Tue Dec  5 16:38:55 1995  Stu Grossman  (grossman@cygnus.com)
637
638         * gencode.c (mac.l):  Don't abort GDB if executing mac.l
639         instruction (which is unimplemented).  Generate a SIGTRAP (in the
640         simulated target) instead.
641
642 Mon Dec  4 12:22:24 1995  J.T. Conklin  <jtc@rtl.cygnus.com>
643
644         * gencode.c (tab): Added several sh3 opcodes.
645         (think): Added printonmatch for A_SSR and A_SPC.
646         * interp.c (SSR, SPC): Added definitions.
647         (saved_state_type): Added ssr and spc registers.
648
649 Wed Nov 29 12:39:27 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
650
651         * gencode.c (tab): In shad/shld definitions, negate R[m] before
652         the and operation instead of after.  For shad delete cast.  For shld
653         use UR instead of R and delete cast.
654
655 Fri Nov 17 12:48:55 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
656
657         * gencode.c (tab): Add explicit NaN support for ftrc instruction.
658
659 Wed Nov 15 11:25:27 1995  Stu Grossman  (grossman@cygnus.com)
660
661         * interp.c:  Make target_byte_order be extern to prevent SGI cc from
662         issuing warnings about the use of common symbols.
663
664 Tue Nov 14 15:19:43 1995  Stu Grossman  (grossman@cygnus.com)
665
666         * gencode.c:  jsr, bsr and bsrf actually save pc+4 in pr, and rts
667         actually uses pr+0.
668
669 Sat Oct 21 13:01:18 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
670
671         * sh/interp.c (sim_stop_reason): Catch SIGQUIT and indicate
672         program exited.
673         (sim_get_quit_code): Delete.
674         
675         * gencode.c (gensim): Indicate SIGILL instead of calling abort for
676         default case.
677
678 Mon Oct 16 18:24:03 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
679
680         * interp.c (saved_state_type): Move FP registers to immediately
681         after SR.
682
683 Tue Oct 10 11:12:15 1995  Fred Fish  <fnf@cygnus.com>
684
685         * Makefile.in (BISON): Remove macro.
686
687 Fri Oct  6 12:08:18 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
688
689         * interp.c (trap, case SYS_utime): Cast second arg of utime to
690         void * to avoid compiler error.
691         
692         * interp.c (callback): Remove last change.  It is initialized by
693         a sim_set_callbacks call.
694         
695 Thu Oct  5 14:13:29 1995  steve chamberlain  <sac@slash.cygnus.com>
696
697         * interp.c (callback): Initialize to default callback.
698
699 Thu Sep 28 15:26:59 1995  steve chamberlain  <sac@slash.cygnus.com>
700
701         * run.c: Moved to ../common.
702         * interp.c (trap): Use gdb's callback interface.
703         * Makefile.in: Updated.
704
705 Wed Sep 20 13:35:13 1995  Ian Lance Taylor  <ian@cygnus.com>
706
707         * Makefile.in (maintainer-clean): New synonym for realclean.
708
709 Wed Sep 20 09:51:50 1995  steve chamberlain  <sac@slash.cygnus.com>
710
711         * run.c (sim_callback_write_stdout):  New.
712         * interp.c (trap): Call sim_callback_write_stdout when needed.
713
714 Mon Sep 18 18:42:27 1995  steve chamberlain  <sac@slash.cygnus.com>
715
716         * interp.c (trap): Remove useless code.
717
718 Fri Sep 15 19:30:05 1995  steve chamberlain  <sac@slash.cygnus.com>
719
720         * syscall.h: Copy from newlib.
721
722 Thu Sep 14 19:32:59 1995  Stu Grossman  (grossman@cygnus.com)
723
724         * gencode.c:  Back up PC by 2 for breakpoints.
725         * interp.c:  Move fp regs beyond pc/pr/etc to avoid confusing GDB,
726         which expect pc to immediatly follow regs[].
727
728 Fri Sep  8 14:18:13 1995  Ian Lance Taylor  <ian@cygnus.com>
729
730         * configure.in: Define CC_FOR_BUILD.  Don't call AC_PROG_INSTALL.
731         * configure: Rebuild.
732         * Makefile.in (INSTALL): Revert to using install.sh.
733         (INSTALL_PROGRAM, INSTALL_DATA): Set to $(INSTALL).
734         (INSTALL_XFORM, INSTALL_XFORM1): Restore.
735         (CC_FOR_BUILD): Restore.
736         (gencode): Build using $(CC_FOR_BUILD).
737         (install): Don't install in $(tooldir).
738
739 Thu Sep  7 15:02:31 1995  J.T. Conklin  <jtc@rtl.cygnus.com>
740
741         (Try to) Update to new bfd autoconf scheme.
742         * run.c: Don't include sysdep.h.
743         * Makefile.in (INSTALL{,_PROGRAM,_DATA}): Use autoconf computed value.
744         (CC, CFLAGS, AR, RANLIB): Likewise.
745         (HDEFINES, TDEFINES): Define.
746         (CC_FOR_BUILD): Delete.
747         (host_makefile_frag): Delete.
748         (Makefile): Don't depend on frags.
749         * configure.in (sysdep.h): Don't create symlink.
750         (host_makefile_frag, frags): Deleted.
751         (CC, CFLAGS, AR, RANLIB, INSTALL): Compute values.
752         * configure: Regenerated.
753
754 Thu Aug 31 12:39:07 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
755
756         * interp.c: Include <math.h>.
757
758 Wed Aug 30 22:05:17 1995  Jeff Law  (law@snake.cs.utah.edu)
759
760         * Makefile.in (run): Link in math library too.
761         * gencode.c (gensim): abort if an unknown opcode is encountered.
762         * interp.c (FPSCR, FPUL): Define.
763         (struct save_state): Add fields for floating point registers,
764         FPSCR and FPUL.
765         (sim_resume): Add 'F' for accessing floating point registers
766         in the save state structure.
767         * gencode.c: Add sh3e opcodes.
768         (gensym): Define a buffer for int<->fp conversions.
769
770 Tue Aug 22 14:16:46 1995  J.T. Conklin  <jtc@rtl.cygnus.com>
771
772         * interp.c (trap): Use trap vector 34 for host system interface.
773         * gencode.c: Add 34 to conditional which determines which traps
774         will be handled by simulator.
775
776 Fri Aug 11 17:59:15 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
777
778         * run.c: Include <signal.h>.  Define SIGQUIT if not defined.
779         (main): New variables reason and sigrc.  After simulator exits,
780         check to see if it exited because of a signal, and if so, then
781         use the signal number as the return value.
782
783 Thu Aug  3 10:45:37 1995  Fred Fish  <fnf@cygnus.com>
784
785         * Update all FSF addresses except those in COPYING* files.
786
787 Tue Jul 18 23:33:10 1995  Fred Fish  <fnf@fishbowl>
788
789         * interp.c (trap): Only use SYS_execv if defined.  Might be
790         implemented as execve(arg1,arg2,0), as with Unixware 2.0.
791         (sim_resume): In sbit initializer, cast shifted arg to unsigned
792         to avoid signed integer overflow.
793
794 Wed Jul  5 14:32:54 1995  J.T. Conklin  <jtc@rtl.cygnus.com>
795
796         * Makefile.in (clean): Remove run, libsim.a.
797           (distclean, mostlyclean, realclean): Remove Makefile and 
798           autoconf files.
799
800         * sh.mt: Removed.
801
802         * Makefile.in, configure.in: converted to autoconf.
803         * configure: New file, generated with autconf 2.4.
804
805 Fri Jun 30 16:51:38 1995  Stan Shebs  <shebs@andros.cygnus.com>
806
807         * interp.c (sim_open): If argument supplied, interpret as
808         desired memory size.
809         (parse_and_set_memory_size): New function.
810         (sim_do_command): New function.
811
812 Thu Jun 29 10:02:28 1995  Fred Fish  <fnf@deneb.cygnus.com>
813
814         * interp.c  (SYS_wait): Define as SYS_wait4 if available and
815         SYS_wait is not already defined (SunOS 4.1.3 for example).
816         (SYS_utime): Define as SYS_utimes if available and
817         SYS_utime is not already defined.
818
819 Thu Jun 22 17:25:57 1995  Steve Chamberlain  <sac@slash.cygnus.com>
820
821         * interp.c: Don't include sys/times.h or sys/param.h
822
823 Wed Jun 21 15:03:49 1995  Steve Chamberlain  <sac@slash.cygnus.com>
824
825         * interp.c (SIGBUS, SIGTERM): Define if not.
826         (sim_memory_size): default to 2^19 on PCs.
827         (sim_resume): Poll for quits on win32.
828
829 Wed May 24 16:22:48 1995  Jim Wilson  <wilson@chestnut.cygnus.com>
830
831         * gencode.c (op_tab): Add SH3 support.
832
833 Wed May 24 14:07:11 1995  Steve Chamberlain  <sac@slash.cygnus.com>
834
835         * gencode.c (tab): Add bsrf and braf.
836
837 Mon Apr 24 15:09:49 1995  Jason Molenda  (crash@cygnus.com)
838
839         * configure.in: use ../../bfd/hosts/std-host.h, not 
840         ../bfd/hosts/std-host.h (which doesn't exist).
841
842 Mon Mar 27 10:32:34 1995  J.T. Conklin  <jtc@rtl.cygnus.com>
843
844         * run.c: parse arguments with getopt().
845
846 Sun Feb 26 15:27:24 1995  Steve Chamberlain  <sac@cygnus.com>
847
848         * configure.in: Use ../../bfd/hosts/std-host.h if specific
849         host unavailable.
850
851 Mon Jan 23 16:10:58 1995  Torbjorn Granlund  <tege@rtl.cygnus.com>
852
853         * interp.c (macw): Sign extend MACH at bit 10 for non-saturating case.
854
855 Sun Jan 22 13:55:36 1995  Torbjorn Granlund  <tege@rtl.cygnus.com>
856
857         * gencode.c (op_tab): Make MAC.W call macw, not abort.
858         * interp.c (macw): New function.
859         (S): New #define.
860
861 Sat Jan 21 15:52:30 1995  Torbjorn Granlund  <tege@rtl.cygnus.com>
862
863         * gencode.c (op_tab): New code for ADDV and SUBV.
864         Make MAC.L abort sicne it is not implemented.
865
866         * interp.c (dmul): Handle the signed case by adjusting after unsigned multiply.
867         Get rid of __GNUC__ conditional.
868
869 aThu Jan 19 05:50:50 1995  Torbjorn Granlund  <tege@rtl.cygnus.com>
870
871         * gencode.c (op_tab): Also replace NEGC, and try again with SUBC.
872         Change ADDC for symmetry.
873
874         * gencode.c (op_tab): Replace code for ADDC and SUBC.
875
876 Mon Jan  9 15:43:53 1995  Stu Grossman  (grossman@cygnus.com)
877
878         * interp.c:  Remove def of INLINE.  This comes from bfd.h.  Also,
879         declare IOMEM before using it.
880
881 Wed Dec 28 21:25:31 1994  Steve Chamberlain  (sac@jonny.cygnus.com)
882
883         * interp.c (BUSERROR): New macro.
884         ([r|w][bwl]at[little|big]) New functions.
885         (sim_resume): If GO32 check for interrupt every now
886         and again.  Decrement PC if SIGBUS seen.
887         * run.c (main):  Return result of simulated _exit.
888
889 Mon Dec  5 21:59:51 1994  Doug Evans  <dje@canuck.cygnus.com>
890
891         * Makefile.in (gencode): Allow build in different directory.
892
893 Wed Nov 30 17:47:13 1994  Jim Wilson  <wilson@chestnut.cygnus.com>
894
895         * Makefile.in (gencode): Change $< to gencode.c for portability.
896
897 Wed Nov 23 21:31:55 1994  Steve Chamberlain  (sac@jonny.cygnus.com)
898
899         * interp.c ([wr][bwl]at): New functions.
900         (trap): Cope with both byte modes.
901
902 Thu Sep  8 17:35:07 1994  Steve Chamberlain  (sac@jonny.cygnus.com)
903
904         * gencode.c (tab): Simulate T bit after a negc insn right.
905         * interp.c (RSBAT): Sign extend the arg.
906         (ACE_FAST): New macro.
907         (sim_resume): Remove obsolete test of sim_timeout.
908         
909 Fri Aug  5 14:12:31 1994  Steve Chamberlain  (sac@jonny.cygnus.com)
910
911         * interp.c (IOMEM): New function, simulates very basic I/O area of
912         the SH.
913         (WBAT, RBAT) : Call I/O functions.
914         * gencode.c (tab): Special case trapa #3.
915
916 Mon Jun 27 18:04:54 1994  Steve Chamberlain  (sac@cirdan.cygnus.com)
917
918         * run.c (main): Specify the file type again.
919
920 Thu May 26 19:04:37 1994  Steve Chamberlain  (sac@thepub.cygnus.com)
921
922         * interp.c (trap): Fix irix incompatibility.
923         * run.c (main): open without specifying file type.
924
925 Wed May 18 14:18:53 1994  Doug Evans  (dje@canuck.cygnus.com)
926
927         * interp.c (sim_*): Make result void where there isn't one.
928         (sim_set_pc): Delete.
929         (sim_info): Delete printf_fn arg, all callers changed.
930         Call printf_filtered instead.
931         (sim_close): New function.
932         (sim_load): New function.
933         (sim_create_inferior): Renamed from sim_set_args, all callers changed.
934         * run.c: #include <varargs.h>, "remote-sim.h".
935         (printf_filtered): New function.
936
937 Wed Apr 27 12:03:48 1994  Steve Chamberlain  (sac@cygnus.com)
938
939         * gencode.c (table): Get direction of some opcodes right.
940         (trapa, rte): Implement fully.
941         * interp.c (trap): Make stat call more portable.
942
943 Fri Feb 11 21:59:38 1994  Steve Chamberlain  (sac@sphagnum.cygnus.com)
944
945         * gencode.c (main, gendefines): New -d option prints table of defines.
946         * interp.c (trap): Add a load of system calls. 
947         (sim_memory_size): Now default to 8Mbyte.
948         (PARANOID): Keep vector of registers with undefined contents.
949
950 Mon Nov 15 14:37:18 1993  Steve Chamberlain  (sac@jonny.cygnus.com)
951
952         * gencode.c: mova uses aligned addresses
953         * interp.c (trap): Return results in r0.
954
955 Tue Oct 26 10:38:55 1993  Doug Evans  (dje@canuck.cygnus.com)
956
957         * Makefile.in (CSEARCH): Add -I$(srcdir)/../../gdb
958         * interp.c: #include "remote-sim.h".
959         (sim_resume): int result, new arg `siggnal'.
960         (sim_write): Use SIM_ADDR for type of arg `addr'.
961         (sim_read): Use SIM_ADDR for type of arg `addr'.
962         Use unsigned char * for `buffer'.
963         (sim_store_register): int result.
964         (sim_fetch_register): Ditto.
965         (sim_stop_reason): Renamed from sim_stop_signal.  New arg `reason'.
966         (sim_set_pc): int result, use SIM_ADDR for type of arg `x'.
967         (sim_info): int result, new args `verbose', `printf_fn'.
968         (sim_kill): int result.
969         (sim_open): int result, new arg `name'.
970         * run.c: #include <stdio.h>
971         (main): Update call to sim_info.
972
973 Sat Oct 23 15:09:29 1993  Doug Evans  (dje@canuck.cygnus.com)
974
975         * interp.c (sim_stop_signal): Result is now enum sim_stop.
976
977 Fri Oct  8 10:47:09 1993  Steve Chamberlain  (sac@phydeaux.cygnus.com)
978
979         * gencode.c (table): Becomes unsigned.
980         * interp.c (trap): Get right breakpoint SIGnum. (sim_write,
981         sim_read): Return number of bytes copied.  (sim_store_register):
982         Value passed by reference. (sim_kill, sim_open, sim_set_args): New functions.
983
984 Tue Sep  7 16:24:13 1993  Stan Shebs  (shebs@rtl.cygnus.com)
985
986         * interp.c (sim_info): Fix small typo in printf string.
987
988 Thu Aug  5 11:37:48 1993  Stan Shebs  (shebs@rtl.cygnus.com)
989
990         * interp.c (sim_resume): Set memory after pointers inited.
991
992 Mon Aug  2 14:13:22 1993  Steve Chamberlain  (sac@phydeaux.cygnus.com)
993
994         * interp.c (get_now): Use time system call.
995         * Makefile.in: install correctly.
996
997 Tue Jul  6 10:30:46 1993  Steve Chamberlain  (sac@phydeaux.cygnus.com)
998
999         * run.c (main), interp.c (sim_set_timeout): Remove timeout
1000         functionality.
1001
1002 Thu Jun 24 13:29:57 1993  david d `zoo' zuhn  (zoo at rtl.cygnus.com)
1003
1004         * Makefile.in: don't run indent everytime; also add a space in the
1005         includes 
1006
1007 Thu Jun 17 18:30:42 1993  Steve Chamberlain  (sac@phydeaux.cygnus.com)
1008
1009         * gencode.c: Fix some opcodes.
1010         * interp.c: Support for profiling and portability fixes.
1011         * run.c (main): Get profiling args.
1012
1013 Wed May  5 13:17:22 1993  Steve Chamberlain  (sac@cygnus.com)
1014
1015         * gencode.c (tab): Lint for sgi compiler
1016         * interp.c: Lint for sgi compiler.
1017
1018 Mon May  3 15:25:33 1993  Steve Chamberlain  (sac@thepub.cygnus.com)
1019
1020         * run.c (main): Support for resizing simulated RAM.     
1021         * Makefile.in: Support for broken makes.
1022         * interp.c, gencode.c: Lint.
1023
1024 Mon Apr 26 18:01:10 1993  Steve Chamberlain  (sac@thepub.cygnus.com)
1025
1026         * created
1027