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