import gdb-1999-08-09 snapshot
[platform/upstream/binutils.git] / sim / m32r / ChangeLog
1 1999-08-09  Doug Evans  <devans@casey.cygnus.com>
2
3         * cpu.h,decode.c,decode.h,model.c,sem-switch.c,sem.c: Rebuild.
4
5 1999-08-04  Doug Evans  <devans@casey.cygnus.com>
6
7         * m32r-sim.h (SEM_SKIP_INSN): Delete.
8         * cpu.h,cpuall.h,decode.c,model.c,sem-switch.c,sem.c: Rebuild.
9
10 1999-05-08  Felix Lee  <flee@cygnus.com>
11
12         * configure: Regenerated to track ../common/aclocal.m4 changes.
13         
14 Fri Apr 16 16:47:43 1999  Doug Evans  <devans@charmed.cygnus.com>
15
16         * devices.c (device_io_read_buffer): New arg `sd'.
17         (device_io_write_buffer): New arg `sd'.
18         (device_error): Give proper arg spec.
19
20 1999-04-10  Doug Evans  <devans@casey.cygnus.com>
21
22         * sem-switch.c,sem.c: Rebuild.
23
24 1999-03-27  Doug Evans  <devans@casey.cygnus.com>
25
26         * decode.c: Rebuild.
27
28 1999-03-26  Doug Evans  <devans@casey.cygnus.com>
29
30         * m32r-sim.h (M32R_DEVICE_LEN): Fix off by one error.
31
32 1999-03-22  Doug Evans  <devans@casey.cygnus.com>
33
34         * arch.c,arch.h,model.c: Rebuild.
35         * m32r-sim.h (a_m32r_h_gr_get,a_m32r_h_gr_set): Declare.
36         (a_m32r_h_cr_get,a_m32r_h_cr_set): Declare.
37         * m32r.c (m32rbf_fetch_register): Replace calls to a_m32r_h_pc_get,
38         a_m32r_h_accum_get with appropriate calls to m32rbf_*.
39         (m32rbf_store_register): Ditto.
40         (a_m32r_h_gr_get,a_m32r_h_gr_set): New functions.
41         (a_m32r_h_cr_get,a_m32r_h_cr_set): Ditto.
42         * sim-if.c (sim_open): Update call to m32r_cgen_cpu_open.
43         * traps.c (m32r_core_signal): Replace calls to a_m32r_h_*,
44         with appropriate calls to m32rbf_*.
45
46 1999-03-11  Doug Evans  <devans@casey.cygnus.com>
47
48         * arch.c,arch.h,cpu.c,cpu.h,sem.c,sem-switch.c: Rebuild.
49         * m32r-sim.h (GET_H_*,SET_H_*, except GET_H_SM): Delete.
50         * sim-if.c (sim_open): Update call to m32r_cgen_cpu_open.
51
52 1999-02-25  Doug Evans  <devans@casey.cygnus.com>
53
54         * cpu.c,cpu.h: Rebuild.
55
56 1999-02-09  Doug Evans  <devans@casey.cygnus.com>
57
58         * Makefile.in (SIM_EXTRA_DEPS): Add m32r-desc.h, delete cpu-opc.h.
59         (stamp-xmloop): s/-parallel/-parallel-write/.
60         * configure.in (sim_link_files,sim_link_links): Delete.
61         * configure: Rebuild.
62         * decode.c,decode.h,model.c,sem-switch.c,sem.c: Rebuild.
63         * mloop.in (execute): CGEN_INSN_ATTR renamed to CGEN_INSN_ATTR_VALUE.
64         * sim-if.c (sim_open): m32r_cgen_cpu_open renamed from
65         m32r_cgen_opcode_open.  Set disassembler.
66         (sim_close): m32r_cgen_cpu_open renamed from m32r_cgen_opcode_open.
67         * sim-main.h: Don't include cpu-opc.h,cpu-sim.h. Include
68         m32r-desc.h,m32r-opc.h,m32r-sim.h.
69
70 1999-01-27  Doug Evans  <devans@casey.cygnus.com>
71
72         * cpu.h,decode.c,model.c,sem-switch.c,sem.c: Rebuild.
73
74 1999-01-15  Doug Evans  <devans@casey.cygnus.com>
75
76         * decode.h,model.c: Regenerate.
77
78 1999-01-14  Doug Evans  <devans@casey.cygnus.com>
79
80         * arch.c,arch.h,cpuall.h: Regenerate.
81         * cpu.c,cpu.h,decode.c,decode.h,model.c,sem-switch.c,sem.c: Regenerate.
82         * traps.c (sim_engine_invalid_insn): PCADDR->IADDR.
83
84 1999-01-11  Doug Evans  <devans@casey.cygnus.com>
85
86         * Makefile.in (m32r-clean): rm eng.h.
87         * sim-main.h: Delete inclusion of ansidecl.h.
88         * cpu.h: Regenerate.
89
90 1999-01-06  Doug Evans  <devans@casey.cygnus.com>
91
92         * cpu.h: Regenerate.
93
94 1999-01-05  Doug Evans  <devans@casey.cygnus.com>
95
96         * Makefile.in (MAIN_INCLUDE_DEPS): Delete.
97         (INCLUDE_DEPS,OPS_INCLUDE_DEPS): Delete.
98         (sim-if.o): Use SIM_MAIN_DEPS.
99         (arch.o,traps.o,devices.o): Ditto.
100         (M32RBF_INCLUDE_DEPS): Use CGEN_MAIN_CPU_DEPS.
101         (m32r.o,mloop.o,cpu.o,decode.o,sem.o,model.o): Simplify dependencies.
102         * cpu.c,cpu.h,decode.c,model.c,sem-switch.c,sem.c: Regenerate.
103         * m32r-sim.h (m32rbf_h_cr_[gs]et_handler): Declare.
104         ([GS]ET_H_CR): Define.
105         (m32rbf_h_psw_[gs]et_handler): Declare.
106         ([GS]ET_H_PSW): Define.
107         (m32rbf_h_accum_[gs]et_handler): Declare.
108         ([GS]ET_H_ACCUM): Define.
109         * sim-if.c (sim_open): Model probing code moved to sim-model.c.
110         * m32r.c (WANT_CPU): Define as m32rbf.
111         (all register access fns): Rename to ..._handler.
112
113 1998-12-14  Doug Evans  <devans@casey.cygnus.com>
114
115         * configure.in: --enable-cgen-maint support moved to common/aclocal.m4.
116         (SIM_AC_OPTION_ALIGNMENT): Make strict.
117         * configure: Regenerate.
118
119         * sem-switch.c,sem.c,semx-switch.c: Regenerate.
120         * sim-main.h (SIM_ENGINE_HALT_HOOK,SIM_ENGINE_RESTART_HOOK): Define.
121         * traps.c (m32r_core_signal): Handle --environment=operating.
122
123 1998-12-09  Doug Evans  <devans@casey.cygnus.com>
124
125         * cpu.h,decode.c,sem-switch.c,sem.c: Regenerate.
126
127         * sim-if.c: Include string.h or strings.h if present.
128
129 1998-12-04  Doug Evans  <devans@casey.cygnus.com>
130
131         * configure.in: Call SIM_AC_OPTION_INLINE.
132         * configure: Regenerate.
133         * sim-main.h: Protect against multiple inclusion.
134         Don't include cgen-scache.h,cgen-cpu.h,cgen-trace.h,cpuall.h.
135         Done by cgen-sim.h now.
136         * tconfig.in (SIM_HAVE_MODEL): Delete, moved to cgen-types.h.
137         * cpuall.h: Regenerate.
138         * cpu.h,decode.c,sem-switch.c,sem.c: Regenerate.
139         * mloop.in (extract16): Make static inline again.
140         Simplify with call to @cpu@_fill_argbuf,@cpu@_fill_argbuf_tp.
141         (extract32): Ditto.
142         Simplify with call to @cpu@_fill_argbuf,@cpu@_fill_argbuf_tp.
143         (execute): Test ARGBUF_PROFILE_P before profiling.
144         Update calls to TRACE_INSN_INIT,TRACE_INSN_FINI.
145
146 1998-11-22  Doug Evans  <devans@tobor.to.cygnus.com>
147
148         * devices.c (device_io_write_buffer): Fix typo.
149         * sim-if.c (sim_open): Hack in call to dv_sockser_install.
150         * tconfig.in (HAVE_DV_SOCKSER): Add but comment out.
151
152 1998-11-18  Doug Evans  <devans@casey.cygnus.com>
153
154         * Makefile.in (M32R_OBJS): Delete extract.o.
155         (extract.o): Delete.
156         * cpu.c,cpu.h,decode.c,decode.h,sem-switch.c,sem.c: Rebuild.
157         * mloop.in (extract16): Update type of `insn' arg.
158         Delete call to d->extract.
159         (extract32): Ditto.
160
161 Wed Nov  4 23:55:37 1998  Doug Evans  <devans@seba.cygnus.com>
162
163         * sim-main.h: Delete inclusion of config.h, include sim-basics.h
164         before cgen-types.h.
165         * tconfig.in: Guard against multiple inclusion.
166         * cpu.h: Delete decls moved to genmloop.sh.
167
168 Mon Oct 19 14:13:05 1998  Doug Evans  <devans@seba.cygnus.com>
169
170         * sim-main.h: #include cpu-opc.h.
171         * arch.c,arch.h,decode.c,extract.c,model.c,sem.c: Regenerate
172         to get #include cleanup.
173
174         * Makefile.in (SIM_EXTRA_DEPS): Replace cgen headers with
175         CGEN_INCLUDE_DEPS.
176         (M32RBF_INCLUDE_DEPS): Define.
177         (m32r .o's): Depend on it.
178         (mloop.c): Update call to genmloop.sh.
179         * cpu.h,cpuall.h: Regenerate.
180         * sim-main.h: Delete inclusion of cpu.h,decode.h, moved to cpuall.h.
181         #include cgen-scache.h,cgen-cpu.h.
182         * tconfig.in (WITH_FOO semantic macros): Delete.
183
184 Fri Oct 16 09:15:29 1998  Doug Evans  <devans@charmed.cygnus.com>
185
186         * sim-if.c (sim_do_command): Handle "sim info reg {bbpsw,bbpc}".
187
188 Fri Oct  9 16:11:58 1998  Doug Evans  <devans@seba.cygnus.com>
189
190         Add pseudo-basic-block execution support.
191         * Makefile.in (SIM_OBJS): Add sim-reg.o, cgen-run.o, sim-stop.o.
192         (SIM_EXTRA_DEPS): Add include/opcode/cgen.h.
193         (INCLUDE_DEPS): Delete cpu-sim.h, include/opcode/cgen.h.
194         (mloop.c): Build pseudo-basic-block version.  Depend on stamp-cpu.
195         * arch.c,arch.h,cpuall.h: Regenerate.
196         * cpu.c,cpu.h,decode.c,decode.h,extract.c,model.c: Regenerate.
197         * sem-switch.c,sem.c: Regenerate.
198         * m32r-sim.h (M32R_MISC_PROFILE): New members load_regs,
199         load_regs_pending.
200         * m32r.c (m32rbf_fetch_register): Renamed from m32rb_fetch_register.
201         (m32rbf_store_register,m32rbf_h_cr_get,m32rbf_h_cr_set,
202         m32rbf_h_psw_get,m32rbf_h_psw_set,m32rbf_h_accum_get,
203         m32rbf_h_accum_set): Likewise.
204         (m32r_model_{init,update}_insn_cycles): Delete.
205         (m32rbf_model_insn_{before,after}): New fns.
206         (m32r_model_record_cti,m32r_model_record_cycles): Delete.
207         (m32rb_model_mark_get_h_gr,m32rb_model_mark_set_h_gr): Delete.
208         (m32rb_model_mark_busy_reg,m32rb_model_mark_unbusy_reg): Delete.
209         (check_load_stall): New fn.
210         (m32rbf_model_m32r_d_u_{exec,cmp,mac,cti,load,store}): New fns.
211         (m32rbf_model_test_u_exec): New fn.
212         * mloop.in: Rewrite, use pbb support.
213         * sim-if.c (sim_stop,sim_sync_stop,sim_resume): Delete.
214         (sim_fetch_register,sim_store_register): Delete.
215         * sim-main.h (CIA_GET,CIA_SET): Fix.
216         (SIM_ENGINE_HALT_HOOK,SIM_ENGINE_RESTART_HOOK): Delete.
217         * tconfig.in (WITH_SCACHE_PBB): Define.
218         (WITH_SCACHE_PBB_M32RBF): Define.
219         * traps.c (sim_engine_invalid_insn): Renamed from ..._illegal_....
220         (m32r_trap): Pass pc to sim_engine_halt.
221         * configure.in (SIM_AC_OPTION_SCACHE): Change 1024 to 16384.
222         * configure: Regenerate.
223
224 Wed Sep 16 18:22:27 1998  Doug Evans  <devans@canuck.cygnus.com>
225
226         * m32r-sim.h ({PSW,CBR,SPI,SPU,BPC,BBPSW,BBPC}_REGNUM): New macros.
227         ({ACC1L,ACC1H}_REGNUM): New macros.
228         (m32r_decode_gdb_ctrl_regnum): Add prototype.
229         * m32r.c (m32r_decode_gdb_ctrl_regnum): New function.
230         (m32r_fetch_register,m32r_store_register): Rewrite.
231
232 Tue Sep 15 15:01:14 1998  Doug Evans  <devans@canuck.cygnus.com>
233
234         * m32r-sim.h (GET_H_SM): New macro.
235         (UART params): Update to msa2000.
236         * devices.c (device_io_read_buffer): Update to msa2000.
237         * m32r.c (m32rb_h_cr_get,m32rb_h_cr_set): Handle bbpc,bbpsw.
238         (m32rb_h_psw_get,m32rb_h_psw_set): New functions.
239         * arch.c,arch.h,cpu.c,cpu.h,sem-switch.c,sem.c: Regenerate.
240
241 Wed Sep  9 15:29:36 1998  Doug Evans  <devans@canuck.cygnus.com>
242
243         * m32r-sim.h (m32r_trap): Update prototype.
244         * traps.c (m32r_trap): New arg `pc'.
245         * sem.c,sem-switch.c: Regenerated.
246
247 Mon Aug  3 12:59:17 1998  Doug Evans  <devans@seba.cygnus.com>
248
249         Rename cpu m32r to m32rb to distinguish from architecture name.
250         * Makefile.in (mloop.c): cpu m32r renamed to m32rb.
251         * sim-main.h (WANT_CPU_M32RB): Renamed from WANT_CPU_M32R.
252         * tconfig.in (WANT_CPU_M32RB): Ditto.
253         * m32r.c (WANT_CPU_M32RB): Ditto.
254         (*): m32r_ cpu fns renamed to m32rb_.
255         * sim-if.c (sim_stop,sim_sync_stop,sim_resume): Update.
256         * arch.h,arch.c: Regenerate.
257         * cpu.c,cpu.h,decode.c,decode.h,extract.c,model.c: Regenerate.
258         * sem-switch.c,sem.c: Regenerate.
259
260         * sim-if.c (sim_open): Don't allocate memory on top of any user
261         specified memory.
262         (h_gr_get,h_gr_set): Delete.
263         * sim-main.h (h_gr_get,h_gr_set): Delete.
264         * traps.c (m32r_trap): Replace calls to h_gr_[gs]et with
265         a_m32r_h_gr_[gs]et.
266
267         * Makefile.in (INCLUDE_DEPS): Add include/opcode/cgen.h.
268
269         * sim-if.c (sim_open): Open opcode table.
270         (sim_close): Close it.
271
272 Fri Jul 24 13:00:29 1998  Doug Evans  <devans@canuck.cygnus.com>
273
274         * m32r.c: Include cgen-mem.h.
275         * traps.c (m32r_trap): Tweak for -Wall.
276
277 Tue Jul 21 16:53:10 1998  Doug Evans  <devans@seba.cygnus.com>
278
279         * cpu.h,extract.c: Regenerate.  pc-rel calcs done on f_dispNN now.
280
281 Wed Jul  1 16:51:15 1998  Doug Evans  <devans@seba.cygnus.com>
282
283         * Makefile.in: cgen_maint -> CGEN_MAINT.
284         * configure.in: AC_SUBST cgen,cgendir.  No longer look for guile.
285         * configure: Regenerate.
286         * arch.c,arch.h,cpuall.h: Regenerate.
287         * cpu.c,cpu.h,decode.c,decode.h,extract.c,model.c: Regenerate.
288         * sem-switch.c,sem.c: Regenerate.
289
290 Sat Jun 13 07:49:23 1998  Doug Evans  <devans@fallis.cygnus.com>
291
292         * m32r-sim.h (M32R_MISC_PROFILE): New members insn_cycles, cti_stall,
293         load_stall,biggest_cycles.
294         * m32r.c (m32r_model_mark_get_h_gr): Update.
295         (m32r_model_init_insn_cycles,m32r_model_update_insn_cycles): New fns.
296         (m32r_model_record_cti,m32r_model_record_cycles): New functions.
297         * mloop.in: Call cycle init/update fns.
298         * model.c: Regenerate.
299
300 Wed Jun 10 17:39:29 1998  Doug Evans  <devans@canuck.cygnus.com>
301
302         * traps.c: New file.  Trap support moved here from sim-if.c.
303         * Makefile.in (SIM_OBJS): Add traps.o
304         * sim-if.c: Don't include targ-vals.h.
305         (sim_engine_illegal_insn): Moved to traps.c
306         * sim-main.h (SIM_CORE_SIGNAL): Define.
307         (m32r_core_signal): Declare.
308         * m32r-sim.h (m32r_trap): Declare.
309
310         * devices.c (device_io_read_buffer): Handle cache purging via MCCR
311         register.
312
313         * m32r-sim.h (M32R_MISC_PROFILE): Move here from sim-main.h.
314         (PROFILE_COUNT_SHORTINSNS,PROFILE_COUNT_LONGINSNS): New macros.
315         (TRAP_SYSCALL,TRAP_BREAKPOINT): New macros.
316
317         * extract.c,sem-switch.c,sem.c: Regenerate.
318
319 Wed May 20 00:10:40 1998  Doug Evans  <devans@seba.cygnus.com>
320
321         * m32r-sim.h (PROFILE_COUNT_PARINSNS): New macro.
322         * mloopx.in (extract): Set abuf.addr for proper fill nop counting.
323         (execute): Count parallel insns.
324         * sim-if.c (print_m32r_misc_cpu): Print count.
325         * sim-main.h (M32R_MISC_PROFILE): New member parallel_count.
326
327         Zero bottom two bits of pc in jmp,jl insns.
328         * sem.c,sem-switch.c: Regenerate.
329
330 Tue May 19 16:45:33 1998  Doug Evans  <devans@seba.cygnus.com>
331
332         * sim-if.c (do_trap): Treat traps 2-15 as hardware does.
333
334 Sat May 16 13:04:30 1998  Doug Evans  <devans@seba.cygnus.com>
335
336         * sim-if.c (sim_stop): Update call to @cpu@_engine_stop.
337         (sim_sync_stop): New function.
338
339 Fri May 15 16:43:27 1998  Doug Evans  <devans@seba.cygnus.com>
340
341         * Makefile.in (devices.o): Add dependencies.
342
343         * arch.h,cpu.c,cpu.h,cpuall.h: Regenerate.
344         * sem-switch.c,sem.c: Regenerate.
345         * mloop.in (execute): Update calls to TRACE_INSN_{INIT,FINI}.
346
347 Thu May  7 02:51:35 1998  Doug Evans  <devans@seba.cygnus.com>
348
349         * Makefile.in (SIM_OBJS): Add sim-cpu.o.
350
351 Wed May  6 14:51:39 1998  Doug Evans  <devans@seba.cygnus.com>
352
353         * arch.h,arch.c,cpu.h,cpuall.h: Regenerate, tweaks mostly.
354         * model.c: Ditto.  Reorganize model/mach data.
355
356         * Makefile.in (m32r.o,mloop.o,cpu.o,model.o): Add decode.h dependency.
357         * decode.c,decode.h: Regenerate, introduces IDESC table.
358         * mloop.in (extract16,extract32): Add IDESC support.
359         Update names of semantic handler member names.
360         (execute): Ditto.  Delete call to PROFILE_COUNT_INSN.
361
362         * sem-switch.c: Regenerate.  Redo computed goto label handling.
363         * sem.c: Regenerate.  Call PROFILE_COUNT_INSN.
364
365         * m32r.c (m32r_fetch_register): Change result type and args to
366         conform to sim_fetch_register interface.
367         (m32r_store_register): Ditto for sim_store_register interface.
368
369         * sim-if.c (alloc_cpu): Delete.
370         (free_state): Uninstall modules here ...
371         (sim_open): ... and not here.  Call sim_cpu_alloc_all.
372         Set default architecture/model if not specified.
373         (sim_fetch_register,sim_store_register): Rewrite.
374
375         * sim-if.c (h_pc_get,h_pc_set): Delete.  Renamed to sim_pc_[gs]et
376         and moved to common/sim-cpu.c.
377         (sim_create_inferior): Update.
378         (do_trap): Update.
379         * sim-main.h (h_pc_get,h_pc_set): Delete.
380
381         * sim-main.h (sim_cia): Change to USI.
382         (sim_cpu): Move m32r_misc_profile before machine generated part.
383
384 Tue Apr 28 18:33:31 1998  Geoffrey Noer  <noer@cygnus.com>
385
386         * configure: Regenerated to track ../common/aclocal.m4 changes.
387
388 Tue Apr 28 18:05:53 1998  Nick Clifton  <nickc@cygnus.com>
389
390         * model.c: Rebuilt.
391
392 Mon Apr 27 15:36:30 1998  Doug Evans  <devans@seba.cygnus.com>
393
394         * cpu.h,model.c,sem-switch.c,sem.c: Regenerated.  Mostly comment
395         and variable renaming due to macro insn additions.
396         * mloop.in: Update to use CGEN_INSN_NUM.
397
398 Sun Apr 26 15:31:55 1998  Tom Tromey  <tromey@creche>
399
400         * configure: Regenerated to track ../common/aclocal.m4 changes.
401         * config.in: Ditto.
402
403 Sun Apr 26 15:20:05 1998  Tom Tromey  <tromey@cygnus.com>
404
405         * acconfig.h: New file.
406         * configure.in: Reverted change of Apr 24; use sinclude again.
407
408 Fri Apr 24 14:16:40 1998  Tom Tromey  <tromey@creche>
409
410         * configure: Regenerated to track ../common/aclocal.m4 changes.
411         * config.in: Ditto.
412
413 Fri Apr 24 11:19:26 1998  Tom Tromey  <tromey@cygnus.com>
414
415         * configure.in: Don't call sinclude.
416
417 Mon Apr 20 16:12:35 1998  Doug Evans  <devans@canuck.cygnus.com>
418
419         * cpu.c,sem.c,sem-switch.c: Regenerate.  From
420         - cgen/m32r.cpu (h-accum): Add attribute FUN-ACCESS.
421         * m32r.c (m32r_h_accum_get,m32r_h_accum_set): New functions.
422         #include cgen-ops.h.
423
424 Fri Apr 10 18:22:41 1998  Doug Evans  <devans@canuck.cygnus.com>
425
426         * cpu.h,decode.c,decode.h,extract.c,sem.c,sem-switch.c: Regenerate.
427
428 Sat Apr  4 20:36:25 1998  Andrew Cagney  <cagney@b1.cygnus.com>
429
430         * configure: Regenerated to track ../common/aclocal.m4 changes.
431
432 Fri Mar 27 16:15:52 1998  Andrew Cagney  <cagney@b1.cygnus.com>
433
434         * configure: Regenerated to track ../common/aclocal.m4 changes.
435
436 Wed Mar 25 12:35:29 1998  Andrew Cagney  <cagney@b1.cygnus.com>
437
438         * configure: Regenerated to track ../common/aclocal.m4 changes.
439
440 Wed Mar 18 12:38:12 1998  Andrew Cagney  <cagney@b1.cygnus.com>
441
442         * configure: Regenerated to track ../common/aclocal.m4 changes.
443
444 Sat Mar 14 20:53:36 1998  Doug Evans  <devans@seba.cygnus.com>
445
446         * config.in (HAVE_FCNTL_H): Add.
447         * configure: Regenerate.
448         * Makefile.in (SIM_OBJS): Add devices.o.
449         * m32r-sim.h (m32r_devices): Renamed from m32r_mspr_device.
450         (UART_*): Define m32r serial port parameters.
451         (M32R_DEVICE_ADDR,M32R_DEVICE_LEN): Define.
452         * m32r.c (device_io_{read,write}_buffer,device_error): Move from here,
453         * devices.c: To here.
454         * sim-if.c: Don't include signal.h,sim-core.h.
455         (sim_open): Use M32R_DEVICE_{ADDR,LEN} in sim_core_attach call.
456         (sim_resume): Call sim_module_{resume,suspend}.
457         * m32r.c (m32r_h_cr_{get,set}): Use register number enums.
458
459         * tconfig.in (SIM_HANDLES_LMA): Define.
460
461         * sim-if.c (do_trap): Result is new pc.
462         Handle --environment=operating.
463         * sem-switch.c,sem.c: Regenerate.
464
465 Wed Mar 11 14:07:39 1998  Andrew Cagney  <cagney@b1.cygnus.com>
466
467         * sim-if.c (syscall_read_mem, syscall_write_mem): Replace
468         sim_core_*_map with read_map, write_map, exec_map resp.
469
470 Wed Mar  4 11:36:51 1998  Doug Evans  <devans@seba.cygnus.com>
471
472         * Makefile.in (SIM_EXTRA_DEPS): Add cpu-opc.h.
473         (arch.o): Delete cpu-opc.h dependency.
474         (decode.o,model.o): Likewise.
475
476         * cpu.h,model.c,sem-switch.c,sem.c: Regenerate.
477
478 Thu Feb 26 18:38:35 1998  Andrew Cagney  <cagney@b1.cygnus.com>
479
480         * sim-if.c (sim_open): Initialize PROFILE_INFO_CPU_CALLBACK.
481
482         * sim-if.c (sim_info): Delete.
483
484 Mon Feb 23 13:30:46 1998  Doug Evans  <devans@seba.cygnus.com>
485
486         * sim-main.h: #include symcat.h.
487         * m32r-sim.h (BRANCH_NEW_PC): Delete current_cpu arg.
488         (NEW_PC_{BASE,SKIP,2,4,BRANCH_P}): New macros.
489         * cpu.[ch],decode.[ch],extract.c,model.c: Regenerate.
490         * sem.c,sem-switch.c: Regenerate.
491
492 Mon Feb 23 12:27:52 1998  Nick Clifton  <nickc@cygnus.com>
493
494         * m32r.c (m32r_h_cr_set, m32r_h_cr_get): Shadow control register 6
495         in the backup PC register.
496
497 Thu Feb 19 16:39:35 1998  Doug Evans  <devans@canuck.cygnus.com>
498
499         * m32r.c (do_lock,do_unlock): Delete.
500         * cpu.[ch],decode.[ch],extract.c,model.c: Regenerate.
501         * sem.c,sem-switch.c: Regenerate.
502
503 Tue Feb 17 18:18:10 1998  Doug Evans  <devans@seba.cygnus.com>
504
505         * Makefile.in (M32R_OBJS): Add cpu.o.
506         (cpu.o): Add rule for.
507         (NL_TARGET): Define.
508         * configure.in: Add AC_CHECK_PROG(SCHEME).
509         * cpu.c: New file.
510         * cpuall.h,cpu.h,decode.c,decode.h,extract.c,model.c: Regenerate.
511         * sem-switch.c,sem.c: Regenerate.
512         * mloop.in (execute): Update call to semantic fn.
513
514         * m32r.c (do_trap): Move from here.
515         * sim-if.c (do_trap): To here, and rewrite to use CB_SYSCALL support.
516         (sim_create_inferior): Use h_pc_set.
517         (h_pc_{get,set}): New functions.
518         (h_gr_{get,set}): New functions.
519         (syscall_{read,write}_mem): New functions.
520         * sim-main.h (h_{gr,pc}_{get,set}): Declare.
521
522 Tue Feb 17 12:44:38 1998  Andrew Cagney  <cagney@b1.cygnus.com>
523
524         * sim-if.c (sim_store_register, sim_fetch_register): Pass in
525         length parameter.  Return -1.
526         (sim_create_inferior): Pass 4 sim_store_register.
527
528 Wed Feb 11 19:53:48 1998  Doug Evans  <devans@canuck.cygnus.com>
529
530         * sim-main.h (CIA_GET,CIA_SET): Provide dummy definitions for now.
531
532         * decode.c, decode.h, sem.c, sem-switch.c, model.c: Regenerate.
533
534 Mon Feb  9 19:41:54 1998  Doug Evans  <devans@canuck.cygnus.com>
535
536         * decode.c, sem.c: Regenerate.
537
538 Thu Feb  5 12:44:31 1998  Doug Evans  <devans@seba.cygnus.com>
539
540         * Makefile.in (m32r.o): Depend on cpu.h
541         (extract.o): Pass -DSCACHE_P.
542         * mloop.in (extract{16,32}): Update call to m32r_decode.
543         * arch.h,cpu.h,cpuall.h,decode.[ch]: Regenerate.
544         * extract.c,model.c,sem-switch.c,sem.c: Regenerate.
545         * sim-main.h: #include "ansidecl.h".
546         Don't include cpu-opc.h, done by arch.h.
547
548 Sun Feb  1 16:47:51 1998  Andrew Cagney  <cagney@b1.cygnus.com>
549
550         * configure: Regenerated to track ../common/aclocal.m4 changes.
551
552 Sat Jan 31 18:15:41 1998  Andrew Cagney  <cagney@b1.cygnus.com>
553
554         * configure: Regenerated to track ../common/aclocal.m4 changes.
555
556 Tue Jan 20 14:16:02 1998  Nick Clifton  <nickc@cygnus.com>
557
558         * cpux.h: Fix duplicate definition of h_accums field for
559         fmt_53_sadd structure.
560
561 Mon Jan 19 22:26:29 1998  Doug Evans  <devans@seba>
562
563         * configure: Regenerated to track ../common/aclocal.m4 changes.
564
565 Mon Jan 19 14:13:40 1998  Doug Evans  <devans@seba.cygnus.com>
566
567         * arch.c, arch.h, cpuall.h: New files.
568         * arch-defs.h: Deleted.
569         * mloop.in: Renamed from mainloop.in.
570         * Makefile.in: Update.
571         * sem-ops.h: Deleted.
572         * mem-ops.h: Deleted.
573         (arch): Renamed from CPU.
574         * cpu.h: New file.
575         * decode.c: Redone.
576         * decode.h: Redone.
577         * extract.c: Redone.
578         * model.c: Redone.
579         * sem-switch.c: Redone.
580         * sem.c: Renamed from semantics.c, and redone.
581         * m32r-sim.h (PROFILE_COUNT_FILLNOPS): Update.
582         (GETTWI,SETTWI,BRANCH_NEW_PC): Define.
583         * m32r.c (WANT_CPU,WANT_CPU_M32R): Define.
584         (m32r_{fetch,store}_register): New functions.
585         (model_mark_{get,set}_h_gr): Prefix with m32r_.
586         (m32r_model_mark_{busy,unbusy}_reg): Prefix with m32r_.
587         (h_cr_{get,set}): Prefix with m32r_.
588         (do_trap): Fetch state from current_cpu, not current_state.
589         Call sim_engine_halt instead of engine_halt.
590         * sim-if.c (alloc_cpu): New function.
591         (free_state): New function.
592         (sim_open): Call sim_state_alloc, and malloc space for selected cpu
593         type.  Call sim_analyze_program.
594         (sim_create_inferior): Handle selected cpu type when setting PC.
595         (sim_stop_reason): Deleted.
596         (print_m32r_misc_cpu): Update.
597         (sim_{read,write}): Deleted.
598         (sim_engine_illegal_insn): New function.
599         * sim-main.h: Don't include arch-defs.h,sim-core.h,sim-events.h.
600         Include arch.h,cpuall.h.  Include cpu.h,decode.h if m32r.
601         (_sim_cpu): Include member appropriate cpu_data member for the cpu.
602         (M32R_MISC_PROFILE): Renamed from M32R_PROFILE.
603         (sim_state): Delete members core,events,halt_jmp_buf.
604         Change `cpu' member to be a pointer to the cpu's struct, rather than
605         record inside the state struct.
606         * tconfig.in (WITH_DEVICES): Define here.
607         (WITH_FAST,WITH_SEM_SWITCH_{FULL,FAST}): Define for the cpu.
608
609 Fri Jan 16 12:16:56 1998  Nick Clifton  <nickc@cygnus.com>
610
611         * arch-defs.h (INSN_NAME): Fix typo.
612
613 Mon Dec 15 23:17:11 1997  Andrew Cagney  <cagney@b1.cygnus.com>
614
615         * configure: Regenerated to track ../common/aclocal.m4 changes.
616         * config.in: Ditto.
617
618 Thu Dec  4 09:21:05 1997  Doug Evans  <devans@canuck.cygnus.com>
619
620         * m32r-sim.h (MSPR_ADDR): New macro.
621         (m32r_mspr_device): Declare.
622         (struct _device): Define.
623         * m32r.c (m32r_mspr_device): New global.
624         (device_{io_{read,write}_buffer,error}): New functions.
625         * mem-ops.h (SETMEM*): Use sim_core_write_map, not read map.
626         * sim-if.c: Delete redundant inclusion of cpu-sim.h.
627         (sim_open): Attach device to handle MSPR register.
628         * sim-main.h (WITH_DEVICES): Define as 1.
629         Include cpu-sim.h.
630
631         * configure: Regenerated to track ../common/aclocal.m4 changes.
632
633 Wed Dec  3 18:08:44 1997  Doug Evans  <devans@canuck.cygnus.com>
634
635         * configure.in (SIM_AC_OPTION_ENVIRONMENT): Call.
636         * configure: Regenerated.
637
638 Wed Nov 19 12:17:08 1997  Doug Evans  <devans@canuck.cygnus.com>
639
640         * mem-ops.h: Rename SIM_SIG{ACCESS,ALIGN} to SIM_SIG{SEGV,BUS}.
641         * sim-if.c (sim_open): Call sim_config.
642         (sim_stop_reason): Update call to sim_signal_to_host.
643
644 Tue Nov 18 15:33:48 1997  Doug Evans  <devans@canuck.cygnus.com>
645
646         * Makefile.in (SIM_OBJS): Use $(SIM_NEW_COMMON_OBJS).
647
648 Fri Oct 31 18:46:46 1997  Andrew Cagney  <cagney@b1.cygnus.com>
649
650         * sim-if.c (sim_open): Delete dead call to sim_core_attach.
651
652 Mon Oct 27 12:43:54 1997  Doug Evans  <devans@canuck.cygnus.com>
653
654         * sem-ops.h (U{DIV,MOD}[BHSD]I): Use unsigned division.
655
656 Fri Oct  3 09:28:00 1997  Andrew Cagney  <cagney@b1.cygnus.com>
657
658         * configure: Regenerated to track ../common/aclocal.m4 changes.
659
660 Wed Sep 24 17:38:57 1997  Andrew Cagney  <cagney@b1.cygnus.com>
661
662         * configure: Regenerated to track ../common/aclocal.m4 changes.
663
664 Tue Sep 23 11:04:38 1997  Andrew Cagney  <cagney@b1.cygnus.com>
665
666         * configure: Regenerated to track ../common/aclocal.m4 changes.
667
668 Tue Sep 23 10:19:51 1997  Andrew Cagney  <cagney@b1.cygnus.com>
669
670         * Makefile.in (SIM_ENDIAN, SIM_HOSTENDIAN, SIM_SCACHE,
671         SIM_DEFAULT_MODEL): Delete, moved to common.
672         (SIM_EXTRA_CFLAGS): Update.
673         
674 Mon Sep 22 11:46:20 1997  Andrew Cagney  <cagney@b1.cygnus.com>
675
676         * configure.in (sim_link_links): Configure non-strict memory
677         alignment.
678
679         * configure: Regenerated to track ../common/aclocal.m4 changes.
680
681 Fri Sep 19 17:45:25 1997  Andrew Cagney  <cagney@b1.cygnus.com>
682
683         * configure: Regenerated to track ../common/aclocal.m4 changes.
684
685 Wed Sep 17 17:44:40 1997  Andrew Cagney  <cagney@b1.cygnus.com>
686
687         * sim-if.c (sim_open): Allocate memory under sim-memopt module
688         using sim_do_commandf.
689         (sim_open): Set magic-number at the start.
690         (sim_do_command): Implement.
691
692         * sim-main.h (sim_engine_halt): Map onto engine_halt.
693
694 Mon Sep 15 17:36:15 1997  Andrew Cagney  <cagney@b1.cygnus.com>
695
696         * configure: Regenerated to track ../common/aclocal.m4 changes.
697
698 Thu Sep  4 17:21:23 1997  Doug Evans  <dje@seba>
699
700         * configure: Regenerated to track ../common/aclocal.m4 changes.
701
702 Fri Sep  5 10:21:48 1997  Andrew Cagney  <cagney@b1.cygnus.com>
703
704         * Makefile.in (SIM_OBJS): Add sim-memopt.o module.
705
706 Thu Sep  4 10:30:02 1997  Andrew Cagney  <cagney@b1.cygnus.com>
707
708         * sim-if.c (sim_open): Pass zero modulo arg to sim_core_attach.
709
710 Wed Aug 27 18:13:22 1997  Andrew Cagney  <cagney@b1.cygnus.com>
711
712         * configure: Regenerated to track ../common/aclocal.m4 changes.
713         * config.in: Ditto.
714
715 Tue Aug 26 10:39:42 1997  Andrew Cagney  <cagney@b1.cygnus.com>
716
717         * sim-if.c (sim_kill): Delete.
718         (sim_create_inferior): Add ABFD argument.
719         (sim_load): Move setting of PC from here.
720         (sim_create_inferior): To here.
721         (sim_load): Delete, use sim-hload.c instead.
722
723         * Makefile.in (SIM_OBJS): Add sim-hload.o module.
724
725 Mon Aug 25 17:50:22 1997  Andrew Cagney  <cagney@b1.cygnus.com>
726
727         * configure: Regenerated to track ../common/aclocal.m4 changes.
728         * config.in: Ditto.
729
730 Mon Aug 25 15:54:08 1997  Andrew Cagney  <cagney@b1.cygnus.com>
731
732         * sim-if.c (sim_open): Add ABFD argument.
733
734 Tue Jul 22 10:16:16 1997  Doug Evans  <dje@canuck.cygnus.com>
735
736         * sim-main.h (M32R_DEFAULT_MEM_SIZE): New macro.
737         * sim-if.c (sim_open): Use it.
738
739 Wed Jun  4 12:48:12 1997  Andrew Cagney  <cagney@b1.cygnus.com>
740
741         * sim-main.h (WITH_ENGINE): Disable the common engine for now.
742
743 Tue May 27 14:15:44 1997  Andrew Cagney  <cagney@b1.cygnus.com>
744
745         * sim-if.c (sim_read): Pass NULL cpu to sim_core_read_buffer.
746         (sim_write): Ditto for write.
747
748         * m32r.c (do_trap): Ditto for read/write.
749
750 Tue May 20 10:18:25 1997  Andrew Cagney  <cagney@b1.cygnus.com>
751
752         * sim-if.c (sim_open): Add callback argument.
753         (sim_set_callbacks, sim_callback): Delete.
754         (sim_load): Set STATE_LOADED_P.
755
756 Mon May 19 12:55:42 1997  Andrew Cagney  <cagney@b1.cygnus.com>
757
758         * Makefile.in (SIM_OBJS): Link in sim-abort.o as a stub for
759         sim_engine_abort.
760
761 Mon May  5 12:45:28 1997  Andrew Cagney  <cagney@b1.cygnus.com>
762
763         * sim-if.c (sim_open): Update to reflect changes to core in
764         ../common/.
765         * mem-ops.h (GETMEMQI, GETMEMHI, GETMEMSI, GETMEMDI, GETMEMUQI,
766         GETMEMUHI, GETMEMUSI, GETMEMUDI, SETMEMQI, SETMEMHI, SETMEMSI,
767         SETMEMDI, SETMEMUQI, SETMEMUHI, SETMEMUSI, SETMEMUDI): Ditto.
768
769 Sat May  3 08:38:55 1997  Doug Evans  <dje@seba.cygnus.com>
770
771         * decode.c (decode): Add computed goto support.
772
773 Fri May  2 16:30:26 1997  Andrew Cagney  <cagney@b1.cygnus.com>
774
775         * mem-ops.h: Stub additional core read/write arguments.
776
777         * sim-main.h: Declare sim_cia - type SI.
778         (struct _sim_cpu): Move base type to end per common.
779         (struct _sim_state): Ditto.
780
781 Thu May  1 11:15:34 1997  Doug Evans  <dje@canuck.cygnus.com>
782
783         Merge from branch into devo.  CGEN generic files moved to common
784         directory.  K&R C support is no longer provided.
785
786 Thu Apr 24 00:39:51 1997  Doug Evans  <dje@canuck.cygnus.com>
787
788         * configure: Regenerated to track ../common/aclocal.m4 changes.
789
790 Sat Apr 12 12:57:33 1997  Felix Lee  <flee@yin.cygnus.com>
791
792         * Makefile.in, seman-cache.c: new file, for wingdb build.
793         * sim-alloca.h: fixed for wingdb.
794         
795 Mon Apr  7 13:33:29 1997  Doug Evans  <dje@seba.cygnus.com>
796
797         * decode.c (*): m32r_cgen_insn_table renamed to ..._entries.
798         * mainloop.in: Use CGEN_INSN_INDEX instead of CGEN_INSN_TYPE.
799         * simdefs.h (INSN_NAME): m32r_cgen_insn_table renamed to ..._entries.
800
801 Fri Apr  4 19:23:12 1997  Doug Evans  <dje@canuck.cygnus.com>
802
803         * cgen-utils.in (ex_illegal): Fill in abuf->length, abuf->addr.
804         (exc_illegal): Likewise.
805         * decode.c (decode_vars): Add decode_illegal.
806         * genmloop.sh: #include "cpu-opc.h".
807         * sem-switch.c (case_INSN_ILLEGAL): Declare.
808         (labels): Add case_INSN_ILLEGAL.
809         (SWITCH): Add INSN_ILLEGAL case.
810
811 Wed Mar 26 12:34:00 1997  Doug Evans  <dje@canuck.cygnus.com>
812
813         * model.c (model_module): Use 0 not NULL.
814
815         * genmloop.sh (sim_main_loop): Handle k&r c.
816
817         * sem-switch.c: Regenerate to get k&r c support.
818         * semantics.c: Likewise.
819
820         * m32r.c (ADD_{OV,CA}_SI,SUB_{OV,CA}_SI): Renamed to {ADD,SUB}[OC]FSI.
821         (ADDCSI,SUBCSI): New functions.
822         * sem-switch.c (addv,addv3,addx,subv,subx): Fix carry bit handling.
823         * semantics.c (addv,addv3,addx,subv,subx): Fix carry bit handling.
824
825         * simcache.c (simcache_{install,init,uninstall}): Use
826         DECLARE_MODULE_INSTALL_HANDLER.
827         (simcache_option_handler): Use DECLARE_OPTION_HANDLER.
828
829         * utils.c: #include "semops.h".
830
831 Tue Mar 11 14:30:26 1997  Doug Evans  <dje@seba.cygnus.com>
832
833         * profile.c (profile_print_simcache): Fix thinko in printf text.
834
835         * simdefs.h (struct argbuf): Add member to fmt_20 so it's not empty.
836
837 Mon Mar 10 11:06:29 1997  Doug Evans  <dje@seba.cygnus.com>
838
839         * m32r.c (h_cr_get): Rewrite.
840         (h_cr_set): Rewrite.
841         * sem-switch.c (rte): bcarry renamed to bcond.
842         * semantics.c (rte): Likewise.
843         * simdefs.h (CPU_STATE): Likewise.
844
845         * config.in (HAVE_SYS_TIME_H): Add.
846         * configure.in: Check for sys/time.h.
847         * configure: Regenerated.
848         * utils.c: Include sys/time.h if present.
849
850         * common.c (sim_parse_args): Account for NULL terminating entry
851         in long_options table.
852
853         * genmloop.sh (RUN_FAST_P): Don't run fast if tracing.
854         Always use cache if configured in.
855         * mainloop.in (do_extract_insn{16,32}): New functions.
856         (normal,fast): Call them.  Handle starting in left slot.
857         * simcache.c (simcache_option_handler): Disallow -c0.
858         * sem-switch.c (TRACE_RESULT): Redefine so no tracing.
859
860         * profile.c (profile_print_simcache): Fix percentage calc.
861
862         * Makefile.in (INCLUDE_DEPS): Delete simcommon.h.
863
864 Sun Mar  9 20:42:17 1997  Doug Evans  <dje@seba.cygnus.com>
865
866         * Makefile.in (COMMON_{PRE,POST}_CONFIG_FRAG): Add delimiters for.
867         (M32R_INCLUDE_DEPS): Use cpu-sim.h instead of m32r-sim.h.
868         Add mod-list.h.
869         (mrun.o): Don't depend on M32R_INCLUDE_DEPS.
870         (sim-if.o,m32r.o,utils.o): Likewise.
871         (common.o): Don't explicitly depend on mod-list.h.
872         (mainloop.c): Pass CPU to genmloop.sh.
873         (stamp-modules): Depend on configure.
874         (decode.o): Depend on decode,h, memops.h, semops.h, cpu-opc.h.
875         (extract.o): Depend on decode.h, memops.h, semops.h.
876         (semantics.o,seman-cache.o): Likewise.
877         (model.o,ops.o): Depend on memops.h.
878         (extr-cache.o): Disable building for the moment.
879
880         * simcommon.h: Delete, move contents into cgen-sim.h.
881         * cgen-sim.h: Don't include ansidecl.h,bfd.h,simfns.h.
882         (UINT,CGEN_CAT3): Define.
883         ({extract,semantic}_fn_t): Renamed to {EXTRACT,SEMANTIC}_FN.
884         (decode_t): Renamed to DECODE.
885
886         * simfns.h: Delete, contents moved to memops.h,semops.h.
887         * memops.h: New file.
888         * semops.h: New file.
889         * decode.h: Renamed from semantics.h.
890
891         * sim-argv.h: New file.
892         * Makefile.in (memory.o,trace.o,profile.o,simcache.o,common): Add
893         dependency of sim-argv.h.
894
895         * sim-alloca.h: New file.
896         * common.c: Include it.
897         * Makefile.in (common.o): Add dependency.
898
899         * config.in (HAVE_TIME_H,HAVE_SYS_RESOURCE_H): Add.
900         (HAVE_GETRUSAGE,HAVE_TIME): Add.
901         * configure.in: sinclude ../common/aclocal.m4.
902         Check for headers time.h, sys/resource.h.
903         Check for functions time, getrusage.
904         (sim_link_{files,links}): Add link cpu-opc.h.
905         (sim_profile): Add simcache.
906         (SIM_AC_PROFILE): Add simcache, profile.o.
907         (simcache module): Delete extr-cache.o for now.
908         (--enable-sim-cache): Allow specification of default cache size.
909         * configure: Regenerated.
910
911         * decode.c: #include cgen-sim.h,memops.h,semops.h,decode.h,
912         cpu-sim.h,cpu-opc.h.  Don't include m32r-sim.h.
913         Regenerate.
914
915         * extract.c: #include cgen-sim.h,decode.h,cpu-sim.h.
916         Don't include m32r-sim.h.
917         (*): Define/Undef FLD macro.  Use it to reference ARGBUF.
918         Simplify profiling test with PROFILE_MODEL_P.
919         (mvfc,mvtc): Fix access of control registers.
920         * semantic.c: #include cgen-sim.h,memops.h,semops.h,decode.h,cpu-sim.h.
921         Don't include m32r-sim.h.
922         (*): Define/Undef FLD macro.  Use it to reference ARGBUF.
923         Simplify profiling test with PROFILE_MODEL_P.
924         (mvfc,mvtc): Fix access of control registers.
925
926         * sem-switch.c: New file, for GCC computed goto support.
927
928         * genmloop.sh: Add #include's of bfd.h,callback.h,cgen-sim.h,
929         memops.h,semops.h,trace.h,cpu-sim.h.
930         (RUN_FAST_P): Change default to run fast if cache size > 0
931         and not profiling.
932         (sim_main_loop): Record execution time.
933         Record instruction count even in fast mode.
934         (init): Allow cpu to provide init code in mainloop.in.
935         (FAST): Define as 0 or 1 depending on fast mode.
936         * mainloop.in (normal): Combine with fast case.
937         Add support for GCC computed gotos.  Count simcache hits/misses.
938         (init): Initialize "switch" labels if GNUC.
939
940         * cgen-utils.in: Don't include opcode/cgen.h.
941         Include cgen-sim.h, cpu-opc.h.
942         * common.c: Don't include simcommon.h,mod-list.h.  Include cgen-sim.h.
943         * m32r-sim.h: Don't include mod-list.h
944         (RUN_FAST_P): Delete.
945         * m32r.c: Don't include profile.h.  #include ansidecl.h,cgen-sim.h,
946         semops.h,memory.h,trace.h
947         (h_cr_get,h_cr_set): New functions.
948         * memory.c: #include cgen-sim.h,callback.h.
949         * ops.c: Don't include profile.h,m32r-sim.h.
950         Include cgen-sim.h,memops.h,cpu-sim.h.
951         (MEMOPS_DEFINE_INLINE): Renamed from SIMFNS_DEFINE_INLINE.
952         * trace.c: Include cgen-sim.h,cpu-opc.h.
953         * trace.h (trace_insn_{init,fini}): Declare.
954
955         * model.c: Don't include signal.h,stdlib.h,m32r-sim.h.
956         Include cgen-sim.h,cpu-sim.h,cpu-opc.h.
957         Regenerate to get new insn aliases.
958
959         * mrun.c: #include "ansidecl.h".
960         (STATE): Use struct sim_state instead.
961
962         * profile.c: Surround #include <stdlib.h> with HAVE_STDLIB_H.
963         Don't include simcommon.h.  Include cgen-sim.h,cpu-opc.h.
964         (PROFILE_{READ,WRITE}_MASK): Replace with PROFILE_MEMORY_MASK.
965         (profile_print_simcache): New function.
966         (profile_print): Call it.  Print simulator speed stats.
967         * profile.h (PROFILE_{READ,WRITE}_MASK): Replace with
968         PROFILE_MEMORY_MASK.
969         (MODULE_PROFILE_SIMCACHE_P): Define.
970         (PROFILE_SIMCACHE_MASK): Define.
971         (PROFILE_COUNT): New members total_insn_count,exec_time.
972         New members simcache_hits,simcache_misses.
973         (PROFILE_SIMCACHE_{HITS,MISSES}): Define.
974         (PROFILE_MODEL_P): New macro.
975         (PROFILE_COUNT_SIMCACHE_{HIT,MISS}): New macros.
976
977         * sim-if.c: Surround #include <stdlib.h> with HAVE_STDLIB_H.
978         Don't include simcommon.h,m32r-sim.h.  Include cgen-sim.h,cpu-sim.h.
979         (sim_resume): Use USING_SIMCACHE_P instead of RUN_FAST_P.
980         (sim_info): Pass verbose to profile_print.
981
982         * simcache.c: Include cgen-sim.h,callback.h.
983         (USING_SIMCACHE_P): Replace with SIMCACHE_P.
984         (simcache_option_handler): Ensure cache size at least 2.
985         Allow config time specification of default cache size.
986         * simcache.h (struct simcache): Support GCC computed gotos.
987         (SIMCACHE_DEFAULT_CACHE_SIZE): USe CONFIG_SIM_CACHE_SIZE if defined.
988         (USING_SIMCACHE_P): New macro.
989
990         * simdefs.h: Don't include m32r-opc.h.
991         (CGEN_MAX_SIM_INSNS): Define.
992         (CPU_STATE): Regenerate.
993         (ARGBUF): Regenerate.
994         (extract,semantic handler decls): Delete, moved to decode.h.
995
996         * tconfig.in: Don't include cgen-sim.h,m32r-sim.h.
997         (USE_SEM_SWITCH): Define.
998
999         * utils.c: Include bfd.h,time.h,sys/resource.h.
1000         (sim_time_get,sim_time_elapsed): New functions.
1001         * cgen-sim.h (SIM_TIME,sim_time_get,sim_time_elapsed): Declare.
1002
1003 Fri Jan 31 20:25:06 1997  Doug Evans  <dje@canuck.cygnus.com>
1004
1005         * configure.in (AC_CHECK_HEADERS): Handle i386-windows.
1006         * configure: Regenerated.
1007         * model.c: #include <stdlib.h>.
1008         * simcache.c: #include "libiberty.h".
1009         * simcommon.h (alloca): Handle i386-windows.
1010
1011         * common.c: #include libiberty.h.
1012         (sim_signal_to_host): Return 5 if wingdb.
1013
1014 Mon Jan 27 15:22:49 1997  Doug Evans  <dje@seba.cygnus.com>
1015
1016         * configure.in (sim_cache): Enabled by default now, pass default
1017         cache size to --enable-sim-cache.
1018         * simcache.c (simcache_option_handler): Allow -c 0.
1019
1020         * simdefs.h,simfns.h: Regenerate
1021         * decode.c,extract.c,model.c,ops.c,semantics.c: Regenerate.
1022
1023 Tue Jan 21 16:21:01 1997  Doug Evans  <dje@seba.cygnus.com>
1024
1025         Add model profiling support.
1026         * configure.in: Handle --enable-sim-model.
1027         (sim_profile): Add model.
1028         * Makefile.in (model.o): Add rule.
1029         * cgen-sim.h (UNIT,INSN_TIMING,MACH,MODEL): New types.
1030         * extract.c (*): Add model profiling support.
1031         * m32r.c (model_mark_{get,set}_h_gr): New functions.
1032         (model_mark_{busy,unbusy}_reg): New functions.
1033         * profile.c (profile_option_handler): Recognize --profile model.
1034         (profile_print_model): New function.
1035         (profile_print): Call it.
1036         * profile.h (MODULE_profile_model,MODULE_PROFILE_MODEL_P): Define.
1037         (PROFILE_MODEL_MASK,PROFILE_LABEL_WIDTH): Define.
1038         (PROFILE_COUNT): New members cycle_count,cti_stall_count,
1039         load_stall_count,taken_count,untaken_count.
1040         * semantics.c (*): Add model profiling support.
1041         * simcommon.h (struct sim_state): New members mach,model.
1042         * simdefs.h (CPU_PROFILE,MODEL_TYPE,UNIT_TYPE): New type.
1043         (MAX_MODELS,MAX_UNITS): Define.
1044         * tconfig.in (STATE_EXTRA_MEMBERS): Add cpu_profile.
1045
1046         * Makefile.in (INCLUDE_DEPS): Add $(SIM_MODULES_HDRS).
1047         (stamp-modules): Depend on genmodlist.sh.
1048         * common.c (standard_options): Add --max-insns.
1049         (copy_argv): New function.
1050         * tconfig.in (SIM_HAVE_MAX_INSNS): Define.
1051         * genmloop.sh: Allow mainloop.in to contain support code.
1052         * mainloop.in: Move do_insn16,do_insn32 here.
1053         * m32r.c (do_trap): Handle SYS_argvlen,SYS_argv,SYS_read.
1054         * sim-if.c (sim_open): Don't set max insn count.
1055         (sim_create_inferior): Save argv,envp.
1056         * simcommon.h (struct sim_state): New members argv,envp.
1057         * simdefs.h ([GS]ETTWI,[GS]ETTUWI,[GS]ETTAI): Define.
1058         ([GS]ETMEMWI,[GS]ETMEMUWI,[GS]ETMEMAI): Define.
1059         (ARGBUF): New members h_gr_get, h_gr_set.
1060         * trace.c (trace_insn_init,trace_insn_fini): New functions.
1061         (trace_printf): Print to buffer, output later by trace_insn_fini.
1062         * trace.h (TRACE_INSN_{INIT,FINI}): Define.
1063
1064 Thu Dec 19 16:01:59 1996  Doug Evans  <dje@canuck.cygnus.com>
1065
1066         * configure.in (AC_FUNC_ALLOCA): Call.
1067         * configure: Regenerate.
1068         * config.h (HAVE_ALLOCA_H): Add.
1069         * simcommon.h: Add alloca support.
1070         (DECLARE_MODULE_INSTALL_HANDLER): Define.
1071         (DECLARE_OPTION_HANDLER): Define.
1072         (MEM_FN): Declare using PARAMS.
1073         (DECLARE_MEM_FN): Define.
1074         * trace.c (trace_result): Tweak for !STDC.
1075         * cgen-sim.h (UDI_FN_SUPPORT): Define if ! HAVE_LONGLONG.
1076         * cgen-utils.in (disasm_sprintf): Fix va_arg call in !STDC case.
1077         * common.c (sim_print_help_fn): Use PARAMS.
1078         (standard_option_handler): Fix decl for !STDC systems.
1079         * memory.c: #include <stdio.h>
1080         (mem_flat_{install,init,uninstall}): Fix decl for !STDC systems.
1081         (mem_flat_{read,write},mem_flat_option_handler): Likewise.
1082         * profile.c (profile_install): Likewise.
1083         (profile_option_handler): Likewise.
1084
1085 Thu Dec 19 11:06:19 1996  Doug Evans  <dje@seba.cygnus.com>
1086
1087         * semantics.c (*): Don't suffix big unsigned numbers with "U".
1088         Prefix them with 0x instead.
1089
1090         * cgen-sim.h (DI_FN_SUPPORT): Define if ! HAVE_LONGLONG.
1091         (SLADI,SRADI,CONVSIDI,CONVDISI): Delete, moved to simfns.h.
1092         * semantics.c (machi,maclo,macwhi,macwlo,mulhi,mullo): Implement.
1093         (mulwhi,mulwlo,mvtachi,mvtaclo,rac,rach): Implement.
1094         * simfns.h: Add decls for functional DI,UDI,SF,DF,XF,TF support.
1095         Add support for boolean and/or.
1096         * utils.c: Redo naming of DI functional support.
1097         (ANDDI,ORDI,ADDDI,MULDI,GEDI,LEDI,CONVHIDI): New functions.
1098
1099 Tue Dec 17 12:57:48 1996  Doug Evans  <dje@seba.cygnus.com>
1100
1101         * Directory created.