3 * configure: Regenerate.
7 * configure.ac: Fail if dv-sockser.o not available.
8 Error when --disable-sim-hardware is specified.
9 * configure: Regenerated.
13 * config.in, configure: Regenerate.
17 * traps-linux.c (sim_core_trans_addr): Delete prototype.
21 * aclocal.m4, config.in, configure: Regenerate.
25 * aclocal.m4: New file.
26 * configure: Regenerate.
30 * configure.ac: Change include to common/acinclude.m4.
34 * configure.ac: Change AC_PREREQ to 2.64. Delete AC_CONFIG_HEADER
35 call. Replace common.m4 include with SIM_AC_COMMON.
36 * configure: Regenerate.
40 * sim-if.c (sim_do_command): Delete.
44 * devices.c (device_error): Add const to message.
48 * cpu.h, * cpu2.h, * cpux.h, * decode.c, * decode2.c, * decodex.c,
49 * model.c, * model2.c, * modelx.c,
50 * sem-switch.c, * sem.c, * sem2-switch.c, * semx-switch.c: Regenerate.
54 * configure: Regenerate.
58 * arch.c, * arch.h, * cpu.c, * cpu.h, * cpu2.c, * cpu2.h, * cpuall.h,
59 * cpux.c, * cpux.h, * decode.c, * decode.h, * decode2.c, * decode2.h,
60 * decodex.c, * decodex.h, * model.c, * model2.c, * modelx.c,
61 * sem-switch.c, * sem.c, * sem2-switch.c, * semx-switch.c: Regenerate,
62 update copyright year.
69 * cpuall.h: Regenerate.
70 * decode.c: Regenerate.
71 * decode.h: Regenerate.
72 * decode2.c: Regenerate.
73 * decode2.h: Regenerate.
74 * decodex.c: Regenerate.
75 * decodex.h: Regenerate.
85 * cpuall.h: Regenerate.
88 * decode.c: Regenerate.
89 * decode.h: Regenerate.
90 * decode2.c: Regenerate.
91 * decode2.h: Regenerate.
92 * decodex.c: Regenerate.
93 * decodex.h: Regenerate.
94 * model.c: Regenerate.
95 * model2.c: Regenerate.
96 * modelx.c: Regenerate.
97 * sem-switch.c: Regenerate.
99 * sem2-switch.c: Regenerate.
100 * semx-switch.c: Regenerate.
102 * Makefile.in (mloop.c): Add @true to rule.
103 (mloopx.c, mloop2.c): Ditto.
104 (stamp-*): Add Makefile dependency.
105 (arch.c, arch.h, cpuall.h): Specify full path.
106 (cpu.h, sem.c, sem-switch.c, model.c, decode.c, decode.h): Ditto.
107 (cpux.h, semx-switch.c, modelx.c, decodex.c, decodex.h): Ditto.
108 (cpu2.h, sem2-switch.c, model2.c, decode2.c, decode2.h): Ditto.
112 * config.in: Regenerate.
113 * configure: Likewise.
115 * configure: Regenerate.
119 * Makefile.in (stamp-arch): Use $(CPU_DIR) instead of $(CGEN_CPU_DIR).
120 (stamp-cpu, stamp-xcpu, stamp-2cpu): Ditto.
124 * mloop.in: Add missing # comment marker.
130 * configure: Regenerate to track ../common/common.m4 changes.
137 * configure: Regenerate.
141 * acconfig.h: Remove.
142 * config.in: Regenerate.
146 * configure: Regenerated.
150 * configure: Regenerated.
154 * configure: Regenerated.
158 * configure: Regenerate.
162 * configure.ac: Sinclude aclocal.m4 before common.m4. Add
163 explicit call to AC_CONFIG_HEADER.
164 * configure: Regenerate.
168 * configure.ac: Update to use ../common/common.m4.
169 * configure: Re-generate.
173 * configure: Regenerated to track ../common/aclocal.m4 changes.
177 * configure.ac: Rename configure.in, require autoconf 2.59.
178 * configure: Re-generate.
182 Committed by Kei Sakamoto.
183 * traps-linux.c (m32r_trap): Add entries of the following dummy system
184 calls: __NR_mmap2, __NR_lchown32, __NR_getuid32, __NR_getgid32,
185 __NR_geteuid32, __NR_getegid32, __NR_getgroups32, __NR_fchown32,
186 __NR_setfsuid32, __NR_setfsgid32, __NR_getresuid32,
187 __NR_getresgid32 and __NR_chown32.
188 * syscall.h: Add new definitions of system call number.
192 * configure: Regenerate for ../common/aclocal.m4 update.
196 Committed by Andrew Cagney.
197 * traps-linux.c: Don't include linux/module.h.
198 (m32r_trap): Remove dummy systemcall's entry of __NR_ustat and
199 __NR_get_kernel_syms.
203 * Makefile.in (stamp-xmloop, stamp-2mloop): Use -outfile-suffix.
207 Committed by Andrew Cagney.
208 * mloopx.in: Update copyright.
209 (xextract-pbb): Fixed trap for system calls operation in parallel.
210 * mloop2.in (xextract-pbb): Ditto.
214 * configure.in: Changed for dummy simulator of m32r-linux.
215 * configure: Regenerate.
216 * Makefile.in: Added traps-linux.o for dummy simulator of m32r-linux.
217 * traps-linux.c: Added for dummy simulator of m32r-linux.
219 * sim-if.c (sim_create_inferior): Changed to setup SP for dummy
220 simulator for m32r-linux.
221 * sim-main.h (M32R_DEFAULT_MEM_SIZE): Changed for dummy simulator of
226 * Makefile.in: Add support for new machine m32r2.
227 * cpu2.c: New file for m32r2 support.
229 * decode2.c: Likewise.
230 * decode2.h: Likewise.
232 * mloop2.in: Likewise.
233 * model2.c: Likewise.
234 * sem2-switch.c: Likewise.
235 * arch.c: Regenerate.
236 * arch.h: Regenerate.
238 * arch.c: Regenerate.
239 * cpuall.c: Regenerate.
240 * cpux.c: Regenerate.
241 * cpux.h: Regenerate.
242 * decode.c: Regenerate.
243 * decode.h: Regenerate.
244 * decodex.c: Regenerate.
245 * decodex.h: Regenerate.
246 * model.c: Regenerate.
247 * modelx.c: Regenerate.
248 * sem-switch.c: Regenerate.
250 * semx-switch.c: Regenerate.
251 * m32r-sim.h: Add EVB register support.
252 * sim-if.c: Likewise.
253 * sim-main.h: Likewise.
259 * Makefile.in (stamp-arch,stamp-cpu,stamp-xcpu): Pass archfile to cgen.
263 * sim-if.c (sim_open, sim_create_inferior): Rename _bfd to bfd.
267 * arch.c,arch.h,cpuall.h: Regenerate.
268 * cpu.c,cpu.h,decode.c,decode.h,model.c,sem-switch.c,sem.c: Regenerate.
269 * cpux.c,cpux.h,decodex.c,decodex.h,modelx.c,semx-switch.c: Regenerate.
273 * configure: Regenerated to track ../common/aclocal.m4 changes.
277 * arch.c: Regenerate.
278 * arch.h: Regenerate.
281 * cpuall.h: Regenerate.
282 * cpux.c: Regenerate.
283 * cpux.h: Regenerate.
284 * decode.c: Regenerate.
285 * decode.h: Regenerate.
286 * decodex.c: Regenerate.
287 * decodex.h: Regenerate.
288 * model.c: Regenerate.
289 * modelx.c: Regenerate.
290 * sem-switch.c: Regenerate.
292 * semx-switch.c: Regenerate.
296 * Makefile.in (stamp-arch): Use $(CGEN_CPU_DIR).
297 (stamp-cpu): Likewise.
298 (stamp-xcpu): Likewise.
302 * arch.c: Regenerate.
303 * arch.h: Regenerate.
306 * cpuall.h: Regenerate.
307 * cpux.c: Regenerate.
308 * cpux.h: Regenerate.
309 * decode.c: Regenerate.
310 * decode.h: Regenerate.
311 * decodex.c: Regenerate.
312 * decodex.h: Regenerate.
313 * model.c: Regenerate.
314 * modelx.c: Regenerate.
315 * sem-switch.c: Regenerate.
317 * semx-switch.c: Regenerate.
321 * configure: Regenerated with sim_scache fix.
325 * Makefile.in: remove `@true' commands for rules that have
326 $(CGEN_MAINT) as a prerequisite.
330 * sem.c: Regenerated.
331 * sem-switch.c: Regenerated.
332 * semx-switch.c: Regenerated.
336 * Makefile.in: Use of @true confuses VPATH. Remove it.
337 * cpu.h: Regenerated.
338 * cpux.h: Regenerated.
339 * decode.c: Regenerated.
340 * decodex.c: Regenerated.
341 * model.c: Regenerated.
342 * modelx.c: Regenerated.
343 * sem-switch.c: Regenerated.
344 * sem.c: Regenerated.
345 * semx-switch.c: Regenerated.
349 * Makefile.in (m32r-clean): Add stamp-arch, stamp-cpu.
350 (stamp-arch, stamp-cpu): New targets.
354 * configure: Regenerated to track ../common/aclocal.m4 changes.
358 * configure: Regenerated.
362 * arch.c,arch.h,cpuall.h: Rebuild.
363 * cpux.h,decodex.c,decodex.h,modelx.c,semx-switch.c: Rebuild.
367 * mloop.in: Update call to sim_engine_invalid_insn.
368 * sem.c,sem-switch.c: Rebuild.
369 * traps.c (sim_engine_invalid_insn): New arg `vpc'. Change type of
370 result to SEM_PC. Return vpc.
372 * semx-switch.c: Rebuild.
376 * traps.c (sim_engine_invalid_insn): Return PC.
380 * configure: Regenerated to track ../common/aclocal.m4 changes.
384 * decodex.c: Rebuild.
394 * cpu.h,decode.c,decode.h,model.c,sem-switch.c,sem.c: Rebuild.
395 * cpux.h,decodex.c,decodex.h,modelx.c,semx-switch.c: Rebuild.
399 * m32r-sim.h (SEM_SKIP_INSN): Delete.
400 * cpu.h,cpuall.h,decode.c,model.c,sem-switch.c,sem.c: Rebuild.
401 * cpux.h,decodex.c,modelx.c,semx-switch.c: Rebuild.
402 * mloopx.in (emit_parallel): Call SEM_SKIP_COMPILE.
403 (emit_full_parallel): Ditto.
407 * configure: Regenerated to track ../common/aclocal.m4 changes.
411 * devices.c (device_io_read_buffer): New arg `sd'.
412 (device_io_write_buffer): New arg `sd'.
413 (device_error): Give proper arg spec.
417 * sem-switch.c,sem.c: Rebuild.
418 * cpux.h,semx-switch.c: Rebuild.
423 * decodex.c: Rebuild.
427 * m32r-sim.h (M32R_DEVICE_LEN): Fix off by one error.
431 * arch.c,arch.h,model.c: Rebuild.
433 * m32r-sim.h (a_m32r_h_gr_get,a_m32r_h_gr_set): Declare.
434 (a_m32r_h_cr_get,a_m32r_h_cr_set): Declare.
435 * m32r.c (m32rbf_fetch_register): Replace calls to a_m32r_h_pc_get,
436 a_m32r_h_accum_get with appropriate calls to m32rbf_*.
437 (m32rbf_store_register): Ditto.
438 (a_m32r_h_gr_get,a_m32r_h_gr_set): New functions.
439 (a_m32r_h_cr_get,a_m32r_h_cr_set): Ditto.
440 * sim-if.c (sim_open): Update call to m32r_cgen_cpu_open.
441 * traps.c (m32r_core_signal): Replace calls to a_m32r_h_*,
442 with appropriate calls to m32rbf_*.
446 * arch.c,arch.h,cpu.c,cpu.h,sem.c,sem-switch.c: Rebuild.
447 * cpux.c,cpux.h,semx-switch.c: Rebuild.
448 * m32r-sim.h (GET_H_*,SET_H_*, except GET_H_SM): Delete.
449 * sim-if.c (sim_open): Update call to m32r_cgen_cpu_open.
453 * cpu.c,cpu.h: Rebuild.
457 * Makefile.in (SIM_EXTRA_DEPS): Add m32r-desc.h, delete cpu-opc.h.
458 (stamp-xmloop): s/-parallel/-parallel-write/.
459 * configure.in (sim_link_files,sim_link_links): Delete.
460 * configure: Rebuild.
461 * decode.c,decode.h,model.c,sem-switch.c,sem.c: Rebuild.
462 * decodex.c,decodex.h,modelx.c,semx-switch.c: Rebuild.
463 * mloop.in (execute): CGEN_INSN_ATTR renamed to CGEN_INSN_ATTR_VALUE.
464 * sim-if.c (sim_open): m32r_cgen_cpu_open renamed from
465 m32r_cgen_opcode_open. Set disassembler.
466 (sim_close): m32r_cgen_cpu_open renamed from m32r_cgen_opcode_open.
467 * sim-main.h: Don't include cpu-opc.h,cpu-sim.h. Include
468 m32r-desc.h,m32r-opc.h,m32r-sim.h.
472 * cpux.h,decodex.c,modelx.c,semx-switch.c: Regenerate.
476 * cpu.h,decode.c,model.c,sem-switch.c,sem.c: Rebuild.
477 * cpux.h,decodex.c,modelx.c,semx-switch.c: Rebuild.
481 * decode.h,model.c: Regenerate.
482 * decodex.h,modelx.c: Regenerate.
486 * arch.c,arch.h,cpuall.h: Regenerate.
487 * cpu.c,cpu.h,decode.c,decode.h,model.c,sem-switch.c,sem.c: Regenerate.
488 * traps.c (sim_engine_invalid_insn): PCADDR->IADDR.
489 * cpux.c,cpux.h,decodex.c,decodex.h,modelx.c,semx-switch.c: Regenerate.
493 * Makefile.in (m32r-clean): rm eng.h.
494 * sim-main.h: Delete inclusion of ansidecl.h.
496 * cpux.h: Regenerate.
501 * cpux.h: Regenerate.
505 * Makefile.in (MAIN_INCLUDE_DEPS): Delete.
506 (INCLUDE_DEPS,OPS_INCLUDE_DEPS): Delete.
507 (sim-if.o): Use SIM_MAIN_DEPS.
508 (arch.o,traps.o,devices.o): Ditto.
509 (M32RBF_INCLUDE_DEPS): Use CGEN_MAIN_CPU_DEPS.
510 (m32r.o,mloop.o,cpu.o,decode.o,sem.o,model.o): Simplify dependencies.
511 (m32rx.o,mloopx.o,cpux.o,decodex.o,semx.o,modelx.o): Ditto.
512 * cpu.c,cpu.h,decode.c,model.c,sem-switch.c,sem.c: Regenerate.
513 * m32r-sim.h (m32rbf_h_cr_[gs]et_handler): Declare.
514 ([GS]ET_H_CR): Define.
515 (m32rbf_h_psw_[gs]et_handler): Declare.
516 ([GS]ET_H_PSW): Define.
517 (m32rbf_h_accum_[gs]et_handler): Declare.
518 ([GS]ET_H_ACCUM): Define.
519 (m32rxf_h_{cr,psw,accum}_[gs]et_handler): Declare.
520 (m32rxf_h_accums_[gs]et_handler): Declare.
521 ([GS]ET_H_ACCUMS): Define.
522 * sim-if.c (sim_open): Model probing code moved to sim-model.c.
523 * m32r.c (WANT_CPU): Define as m32rbf.
524 (all register access fns): Rename to ..._handler.
525 * cpux.c,cpux.h,decodex.c,modelx.c,semx.c: Regenerate.
526 * m32rx.c (WANT_CPU): Define as m32rxf.
527 (all register access fns): Rename to ..._handler.
531 * configure.in: --enable-cgen-maint support moved to common/aclocal.m4.
532 (SIM_AC_OPTION_ALIGNMENT): Make strict.
533 * configure: Regenerate.
535 * sem-switch.c,sem.c,semx-switch.c: Regenerate.
536 * sim-main.h (SIM_ENGINE_HALT_HOOK,SIM_ENGINE_RESTART_HOOK): Define.
537 * traps.c (m32r_core_signal): Handle --environment=operating.
541 * cpu.h,decode.c,sem-switch.c,sem.c: Regenerate.
542 * cpux.h,decodex.c,semx-switch.c: Regenerate.
544 * sim-if.c: Include string.h or strings.h if present.
548 * configure.in: Call SIM_AC_OPTION_INLINE.
549 * configure: Regenerate.
550 * sim-main.h: Protect against multiple inclusion.
551 Don't include cgen-scache.h,cgen-cpu.h,cgen-trace.h,cpuall.h.
552 Done by cgen-sim.h now.
553 * tconfig.in (SIM_HAVE_MODEL): Delete, moved to cgen-types.h.
554 * cpuall.h: Regenerate.
555 * cpu.h,decode.c,sem-switch.c,sem.c: Regenerate.
556 * mloop.in (extract16): Make static inline again.
557 Simplify with call to @cpu@_fill_argbuf,@cpu@_fill_argbuf_tp.
559 Simplify with call to @cpu@_fill_argbuf,@cpu@_fill_argbuf_tp.
560 (execute): Test ARGBUF_PROFILE_P before profiling.
561 Update calls to TRACE_INSN_INIT,TRACE_INSN_FINI.
562 * cpux.h,decodex.c,modelx.c,semx-switch.c: Regenerate.
563 * mloopx.in: Rewrite.
567 * devices.c (device_io_write_buffer): Fix typo.
568 * sim-if.c (sim_open): Hack in call to dv_sockser_install.
569 * tconfig.in (HAVE_DV_SOCKSER): Add but comment out.
573 * Makefile.in (M32R_OBJS): Delete extract.o.
575 * cpu.c,cpu.h,decode.c,decode.h,sem-switch.c,sem.c: Rebuild.
576 * mloop.in (extract16): Update type of `insn' arg.
577 Delete call to d->extract.
579 * cpux.c,cpux.h,decodex.c,decodex.h,semx-switch.c: Rebuild.
580 * mloopx.in (extractx16): Update type of `insn' arg.
581 Delete call to d->extract. Delete arg pbb_p. All callers updated.
582 (extract-simple,full-exec-simple,fast-exec-simple): Delete.
587 * sim-main.h: Delete inclusion of config.h, include sim-basics.h
589 * tconfig.in: Guard against multiple inclusion.
590 * cpu.h: Delete decls moved to genmloop.sh.
595 * sim-main.h: #include cpu-opc.h.
596 * arch.c,arch.h,decode.c,extract.c,model.c,sem.c: Regenerate
597 to get #include cleanup.
598 * decodex.c,extractx.c,modelx.c: Ditto.
600 * Makefile.in (SIM_EXTRA_DEPS): Replace cgen headers with
602 (M32RBF_INCLUDE_DEPS): Define.
603 (m32r .o's): Depend on it.
604 (mloop.c): Update call to genmloop.sh.
605 * cpu.h,cpuall.h: Regenerate.
606 * sim-main.h: Delete inclusion of cpu.h,decode.h, moved to cpuall.h.
607 #include cgen-scache.h,cgen-cpu.h.
608 * tconfig.in (WITH_FOO semantic macros): Delete.
609 * Makefile.in (M32RXF_INCLUDE_DEPS): Define.
610 (m32rx .o's): Depend on it.
611 (mloopx.c): Update call to genmloop.sh.
612 * cpux.h: Regenerate.
616 * sim-if.c (sim_do_command): Handle "sim info reg {bbpsw,bbpc}".
620 Add pseudo-basic-block execution support.
621 * Makefile.in (SIM_OBJS): Add sim-reg.o, cgen-run.o, sim-stop.o.
622 (SIM_EXTRA_DEPS): Add include/opcode/cgen.h.
623 (INCLUDE_DEPS): Delete cpu-sim.h, include/opcode/cgen.h.
624 (mloop.c): Build pseudo-basic-block version. Depend on stamp-cpu.
625 * arch.c,arch.h,cpuall.h: Regenerate.
626 * cpu.c,cpu.h,decode.c,decode.h,extract.c,model.c: Regenerate.
627 * sem-switch.c,sem.c: Regenerate.
628 * m32r-sim.h (M32R_MISC_PROFILE): New members load_regs,
630 * m32r.c (m32rbf_fetch_register): Renamed from m32rb_fetch_register.
631 (m32rbf_store_register,m32rbf_h_cr_get,m32rbf_h_cr_set,
632 m32rbf_h_psw_get,m32rbf_h_psw_set,m32rbf_h_accum_get,
633 m32rbf_h_accum_set): Likewise.
634 (m32r_model_{init,update}_insn_cycles): Delete.
635 (m32rbf_model_insn_{before,after}): New fns.
636 (m32r_model_record_cti,m32r_model_record_cycles): Delete.
637 (m32rb_model_mark_get_h_gr,m32rb_model_mark_set_h_gr): Delete.
638 (m32rb_model_mark_busy_reg,m32rb_model_mark_unbusy_reg): Delete.
639 (check_load_stall): New fn.
640 (m32rbf_model_m32r_d_u_{exec,cmp,mac,cti,load,store}): New fns.
641 (m32rbf_model_test_u_exec): New fn.
642 * mloop.in: Rewrite, use pbb support.
643 * sim-if.c (sim_stop,sim_sync_stop,sim_resume): Delete.
644 (sim_fetch_register,sim_store_register): Delete.
645 * sim-main.h (CIA_GET,CIA_SET): Fix.
646 (SIM_ENGINE_HALT_HOOK,SIM_ENGINE_RESTART_HOOK): Delete.
647 * tconfig.in (WITH_SCACHE_PBB): Define.
648 (WITH_SCACHE_PBB_M32RBF): Define.
649 * traps.c (sim_engine_invalid_insn): Renamed from ..._illegal_....
650 (m32r_trap): Pass pc to sim_engine_halt.
651 * configure.in (SIM_AC_OPTION_SCACHE): Change 1024 to 16384.
652 * configure: Regenerate.
653 * Makefile.in (M32RX_OBJS): Delete semx.o, add extract.o.
654 (mloopx.c): Build pseudo-basic-block version.
657 * cpux.c,cpux.h,decodex.c,decodex.h,modelx.c: Regenerate.
660 * extractx.c: New file.
661 * semx-switch.c: New file.
662 * m32r-sim.h (BRANCH_NEW_PC): Delete.
663 (SEM_SKIP_INSN): New macro.
664 * m32rx.c (m32rxf_fetch_register): Renamed from m32rx_fetch_register.
665 (m32rxf_store_register,m32rxf_h_cr_get,m32rxf_h_cr_set,
666 m32rxf_h_psw_get,m32rxf_h_psw_set,m32rxf_h_accum_get,
667 m32rxf_h_accum_set,m32rxf_h_accums_get,m32rxf_h_accums_set): Likewise.
668 (m32rxf_model_insn_{before,after}): New fns.
669 (m32rx_model_mark_get_h_gr,m32rx_model_mark_set_h_gr): Delete.
670 (m32rx_model_mark_busy_reg,m32rx_model_mark_unbusy_reg): Delete.
671 (check_load_stall): New fn.
672 (m32rxf_model_m32rx_u_{exec,cmp,mac,cti,load,store}): New fns.
673 * mloopx.in: Rewrite, use pbb support.
674 * tconfig.in (WITH_SCACHE_PBB_M32RXF): Define.
675 (WITH_SEM_SWITCH_FULL): Change from 0 to 1.
679 * m32r-sim.h ({PSW,CBR,SPI,SPU,BPC,BBPSW,BBPC}_REGNUM): New macros.
680 ({ACC1L,ACC1H}_REGNUM): New macros.
681 (m32r_decode_gdb_ctrl_regnum): Add prototype.
682 * m32r.c (m32r_decode_gdb_ctrl_regnum): New function.
683 (m32r_fetch_register,m32r_store_register): Rewrite.
684 * m32rx.c (m32rx_fetch_register,m32rx_store_register): Rewrite.
688 * m32r-sim.h (GET_H_SM): New macro.
689 (UART params): Update to msa2000.
690 * devices.c (device_io_read_buffer): Update to msa2000.
691 * m32r.c (m32rb_h_cr_get,m32rb_h_cr_set): Handle bbpc,bbpsw.
692 (m32rb_h_psw_get,m32rb_h_psw_set): New functions.
693 * arch.c,arch.h,cpu.c,cpu.h,sem-switch.c,sem.c: Regenerate.
694 * m32rx.c (m32rx_h_cr_get,m32rx_h_cr_set): Handle bbpc,bbpsw.
695 (m32rx_h_psw_get,m32rx_h_psw_set): New functions.
696 * cpux.c,cpux.h,readx.c,semx.c: Regenerate.
700 * m32r-sim.h (m32r_trap): Update prototype.
701 * traps.c (m32r_trap): New arg `pc'.
702 * sem.c,sem-switch.c: Regenerated.
703 * cpux.h,readx.c,semx.c: Regenerated.
707 Rename cpu m32r to m32rb to distinguish from architecture name.
708 * Makefile.in (mloop.c): cpu m32r renamed to m32rb.
709 * sim-main.h (WANT_CPU_M32RB): Renamed from WANT_CPU_M32R.
710 * tconfig.in (WANT_CPU_M32RB): Ditto.
711 * m32r.c (WANT_CPU_M32RB): Ditto.
712 (*): m32r_ cpu fns renamed to m32rb_.
713 * sim-if.c (sim_stop,sim_sync_stop,sim_resume): Update.
714 * arch.h,arch.c: Regenerate.
715 * cpu.c,cpu.h,decode.c,decode.h,extract.c,model.c: Regenerate.
716 * sem-switch.c,sem.c: Regenerate.
718 * sim-if.c (sim_open): Don't allocate memory on top of any user
720 (h_gr_get,h_gr_set): Delete.
721 * sim-main.h (h_gr_get,h_gr_set): Delete.
722 * traps.c (m32r_trap): Replace calls to h_gr_[gs]et with
725 * Makefile.in (INCLUDE_DEPS): Add include/opcode/cgen.h.
727 * sim-if.c (sim_open): Open opcode table.
728 (sim_close): Close it.
732 Add support for new versions of mulwhi,mulwlo,macwhi,macwlo that
733 accept an accumulator choice.
734 * cpux.c,decodex.c,decodex.h,modelx.c,readx.c,semx.c: Regenerate.
738 * m32r.c: Include cgen-mem.h.
739 * traps.c (m32r_trap): Tweak for -Wall.
740 * m32rx.c: Include cgen-mem.h.
741 * semx.c: Regenerate, get -Wall cleanups.
745 * cpu.h,extract.c: Regenerate. pc-rel calcs done on f_dispNN now.
746 * cpux.h,readx.c,semx.c: Ditto.
750 * Makefile.in: cgen_maint -> CGEN_MAINT.
751 * configure.in: AC_SUBST cgen,cgendir. No longer look for guile.
752 * configure: Regenerate.
753 * arch.c,arch.h,cpuall.h: Regenerate.
754 * cpu.c,cpu.h,decode.c,decode.h,extract.c,model.c: Regenerate.
755 * sem-switch.c,sem.c: Regenerate.
756 * cpux.c,cpux.h,decodex.c,decodex.h,modelx.c,readx.c: Regenerate.
757 * semx.c: Regenerate.
758 * mloopx.in (icount): Moved here from genmloop.sh.
762 * m32r-sim.h (M32R_MISC_PROFILE): New members insn_cycles, cti_stall,
763 load_stall,biggest_cycles.
764 * m32r.c (m32r_model_mark_get_h_gr): Update.
765 (m32r_model_init_insn_cycles,m32r_model_update_insn_cycles): New fns.
766 (m32r_model_record_cti,m32r_model_record_cycles): New functions.
767 * mloop.in: Call cycle init/update fns.
768 * model.c: Regenerate.
769 * m32rx.c (m32rx_model_mark_get_h_gr): Update.
770 * mloopx.in: Call cycle init/update fns.
771 * modelx.c: Regenerate.
775 * traps.c: New file. Trap support moved here from sim-if.c.
776 * Makefile.in (SIM_OBJS): Add traps.o
777 * sim-if.c: Don't include targ-vals.h.
778 (sim_engine_illegal_insn): Moved to traps.c
779 * sim-main.h (SIM_CORE_SIGNAL): Define.
780 (m32r_core_signal): Declare.
781 * m32r-sim.h (m32r_trap): Declare.
783 * devices.c (device_io_read_buffer): Handle cache purging via MCCR
786 * m32r-sim.h (M32R_MISC_PROFILE): Move here from sim-main.h.
787 (PROFILE_COUNT_SHORTINSNS,PROFILE_COUNT_LONGINSNS): New macros.
788 (TRAP_SYSCALL,TRAP_BREAKPOINT): New macros.
790 * extract.c,sem-switch.c,sem.c: Regenerate.
791 * cpux.h,readx.c,semx.c: Regenerate.
795 * m32r-sim.h (PROFILE_COUNT_PARINSNS): New macro.
796 * mloopx.in (extract): Set abuf.addr for proper fill nop counting.
797 (execute): Count parallel insns.
798 * sim-if.c (print_m32r_misc_cpu): Print count.
799 * sim-main.h (M32R_MISC_PROFILE): New member parallel_count.
801 Zero bottom two bits of pc in jmp,jl insns.
802 * sem.c,sem-switch.c: Regenerate.
803 * semx.c: Regenerate.
807 * sim-if.c (do_trap): Treat traps 2-15 as hardware does.
811 * sim-if.c (sim_stop): Update call to @cpu@_engine_stop.
812 (sim_sync_stop): New function.
816 * Makefile.in (devices.o): Add dependencies.
818 * arch.h,cpu.c,cpu.h,cpuall.h: Regenerate.
819 * sem-switch.c,sem.c: Regenerate.
820 * mloop.in (execute): Update calls to TRACE_INSN_{INIT,FINI}.
821 * cpux.c,cpux.h,modelx.c,semx.c: Regenerate.
822 * m32rx.c (m32rx_model_mark_{busy,unbusy}_reg): New functions.
823 * mloopx.in (execute): Update calls to TRACE_INSN_{INIT,FINI}.
824 Fix pc value passed to TRACE_INSN for second parallel insn.
828 * Makefile.in (SIM_OBJS): Add sim-cpu.o.
832 * arch.h,arch.c,cpu.h,cpuall.h: Regenerate, tweaks mostly.
833 * model.c: Ditto. Reorganize model/mach data.
837 * Makefile.in (m32r.o,mloop.o,cpu.o,model.o): Add decode.h dependency.
838 (m32rx.o,mloopx.o,cpux.o,modelx.o): Add decodex.h dependency.
839 * decode.c,decode.h: Regenerate, introduces IDESC table.
840 * mloop.in (extract16,extract32): Add IDESC support.
841 Update names of semantic handler member names.
842 (execute): Ditto. Delete call to PROFILE_COUNT_INSN.
843 * decodex.c,decodex.h: Regenerate, introduces IDESC table.
844 * mloopx.in: Add IDESC support.
845 Update names of semantic handler member names.
846 Delete call to PROFILE_COUNT_INSN.
848 * sem-switch.c: Regenerate. Redo computed goto label handling.
849 * sem.c: Regenerate. Call PROFILE_COUNT_INSN.
850 * readx.c: Regenerate. Redo computed goto label handling.
851 * semx.c: Regenerate. Call PROFILE_COUNT_INSN. Finish profiling
854 * m32r.c (m32r_fetch_register): Change result type and args to
855 conform to sim_fetch_register interface.
856 (m32r_store_register): Ditto for sim_store_register interface.
857 * m32rx.c (m32rx_fetch_register): Change result type and args to
858 conform to sim_fetch_register interface.
859 (m32rx_store_register): Ditto for sim_store_register interface.
861 * sim-if.c (alloc_cpu): Delete.
862 (free_state): Uninstall modules here ...
863 (sim_open): ... and not here. Call sim_cpu_alloc_all.
864 Set default architecture/model if not specified.
865 (sim_fetch_register,sim_store_register): Rewrite.
867 * sim-if.c (h_pc_get,h_pc_set): Delete. Renamed to sim_pc_[gs]et
868 and moved to common/sim-cpu.c.
869 (sim_create_inferior): Update.
871 * sim-main.h (h_pc_get,h_pc_set): Delete.
873 * sim-main.h (sim_cia): Change to USI.
874 (sim_cpu): Move m32r_misc_profile before machine generated part.
878 * configure: Regenerated to track ../common/aclocal.m4 changes.
887 * cpu.h,model.c,sem-switch.c,sem.c: Regenerated. Mostly comment
888 and variable renaming due to macro insn additions.
889 * mloop.in: Update to use CGEN_INSN_NUM.
890 * cpux.h,modelx.c,readx.c,semx.c: Regenerated.
891 * mloopx.in: Update to use CGEN_INSN_NUM.
893 Sun Apr 26 15:31:55 1998 Tom Tromey <tromey@creche>
895 * configure: Regenerated to track ../common/aclocal.m4 changes.
900 * acconfig.h: New file.
901 * configure.in: Reverted change of Apr 24; use sinclude again.
903 Fri Apr 24 14:16:40 1998 Tom Tromey <tromey@creche>
905 * configure: Regenerated to track ../common/aclocal.m4 changes.
910 * configure.in: Don't call sinclude.
914 * cpu.c,sem.c,sem-switch.c: Regenerate. From
915 - cgen/m32r.cpu (h-accum): Add attribute FUN-ACCESS.
916 * m32r.c (m32r_h_accum_get,m32r_h_accum_set): New functions.
918 * cpux.c,readx.c,semx.c: Regenerate.
919 * m32rx.c (m32r_h_accum_get,m32r_h_accum_set): New functions.
920 #include cgen-ops.h. Delete inclusion of several unnecessary headers.
921 (m32r_h_accums_get): Sign extend top 8 bits.
925 * semx.c: Regenerate.
929 * cpu.h,decode.c,decode.h,extract.c,sem.c,sem-switch.c: Regenerate.
930 * cpux.h,decodex.c,decodex.h,readx.c,semx.c: Regenerate.
934 * configure: Regenerated to track ../common/aclocal.m4 changes.
938 * configure: Regenerated to track ../common/aclocal.m4 changes.
942 * configure: Regenerated to track ../common/aclocal.m4 changes.
946 * configure: Regenerated to track ../common/aclocal.m4 changes.
950 * config.in (HAVE_FCNTL_H): Add.
951 * configure: Regenerate.
952 * Makefile.in (SIM_OBJS): Add devices.o.
953 * m32r-sim.h (m32r_devices): Renamed from m32r_mspr_device.
954 (UART_*): Define m32r serial port parameters.
955 (M32R_DEVICE_ADDR,M32R_DEVICE_LEN): Define.
956 * m32r.c (device_io_{read,write}_buffer,device_error): Move from here,
957 * devices.c: To here.
958 * sim-if.c: Don't include signal.h,sim-core.h.
959 (sim_open): Use M32R_DEVICE_{ADDR,LEN} in sim_core_attach call.
960 (sim_resume): Call sim_module_{resume,suspend}.
961 * m32r.c (m32r_h_cr_{get,set}): Use register number enums.
963 * tconfig.in (SIM_HANDLES_LMA): Define.
965 * sim-if.c (do_trap): Result is new pc.
966 Handle --environment=operating.
967 * sem-switch.c,sem.c: Regenerate.
968 * semx.c: Regenerate.
972 * sim-if.c (syscall_read_mem, syscall_write_mem): Replace
973 sim_core_*_map with read_map, write_map, exec_map resp.
977 * Makefile.in (SIM_EXTRA_DEPS): Add cpu-opc.h.
978 (arch.o): Delete cpu-opc.h dependency.
979 (decode.o,model.o): Likewise.
980 (decodex.o,modelx.o): Likewise.
982 * cpu.h,model.c,sem-switch.c,sem.c: Regenerate.
983 * cpux.h,decodex.[ch],modelx.c,readx.c,semx.c: Regenerate.
987 * sim-if.c (sim_open): Initialize PROFILE_INFO_CPU_CALLBACK.
989 * sim-if.c (sim_info): Delete.
993 * mloopx.in: Fix handling of branch in parallel with another insn.
994 * semx.c: Regenerate.
998 * sim-main.h: #include symcat.h.
999 * m32r-sim.h (BRANCH_NEW_PC): Delete current_cpu arg.
1000 (NEW_PC_{BASE,SKIP,2,4,BRANCH_P}): New macros.
1001 * cpu.[ch],decode.[ch],extract.c,model.c: Regenerate.
1002 * sem.c,sem-switch.c: Regenerate.
1003 * m32r-sim.h (SEM_NEXT_PC): Modify to handle parallel exec.
1004 * mloopx.in: Rewrite.
1005 * cpux.[ch],decodex.[ch],readx.c,semx.c: Regenerate.
1009 * m32r.c (m32r_h_cr_set, m32r_h_cr_get): Shadow control register 6
1010 in the backup PC register.
1011 * m32rx.c (m32r_h_cr_set, m32r_h_cr_get): Shadow control register 6
1012 in the backup PC register.
1016 * m32r.c (do_lock,do_unlock): Delete.
1017 * cpu.[ch],decode.[ch],extract.c,model.c: Regenerate.
1018 * sem.c,sem-switch.c: Regenerate.
1019 * cpux.[ch],decodex.[ch],readx.c,semx.c: Regenerate.
1023 * Makefile.in (M32R_OBJS): Add cpu.o.
1024 (cpu.o): Add rule for.
1025 (NL_TARGET): Define.
1026 * configure.in: Add AC_CHECK_PROG(SCHEME).
1028 * cpuall.h,cpu.h,decode.c,decode.h,extract.c,model.c: Regenerate.
1029 * sem-switch.c,sem.c: Regenerate.
1030 * mloop.in (execute): Update call to semantic fn.
1031 (M32RX_OBJS): Add cpux.o.
1032 (cpux.o): Add rule for.
1034 * cpux.h,decodex.c,decodex.h,modelx.c,readx.c,semx.c: Regenerate.
1035 * m32rx.c (m32rx_h_accums_{get,set}): Rewrite.
1036 (m32rx_h_cr_{get,set}): New functions.
1037 (m32rx_h_accums_{get,set}): New functions.
1038 * mloopx.in: Rewrite main loop.
1040 * m32r.c (do_trap): Move from here.
1041 * sim-if.c (do_trap): To here, and rewrite to use CB_SYSCALL support.
1042 (sim_create_inferior): Use h_pc_set.
1043 (h_pc_{get,set}): New functions.
1044 (h_gr_{get,set}): New functions.
1045 (syscall_{read,write}_mem): New functions.
1046 * sim-main.h (h_{gr,pc}_{get,set}): Declare.
1050 * sim-if.c (sim_store_register, sim_fetch_register): Pass in
1051 length parameter. Return -1.
1052 (sim_create_inferior): Pass 4 sim_store_register.
1056 * sim-main.h (CIA_GET,CIA_SET): Provide dummy definitions for now.
1058 * decode.c, decode.h, sem.c, sem-switch.c, model.c: Regenerate.
1059 * cpux.c, decodex.c, decodex.h, readx.c, semx.c, modelx.c: Regenerate.
1063 * decode.c, sem.c: Regenerate.
1064 * cpux.h, decodex.c, readx.c, semx.c: Regenerate.
1065 * m32rx.c (m32rx_h_accums_set): New function.
1066 (m32rx_model_mark_[gs]et_h_gr): New function.
1067 * mloopx.in: Rewrite.
1068 * Makefile.in (mloopx.o): Build with -parallel.
1069 * sim-main.h (_sim_cpu): Delete member `par_exec'.
1070 * tconfig.in (WITH_SEM_SWITCH_FULL): Define as 0 for m32rx.
1074 * Makefile.in (m32r.o): Depend on cpu.h
1075 (extract.o): Pass -DSCACHE_P.
1076 * mloop.in (extract{16,32}): Update call to m32r_decode.
1077 * arch.h,cpu.h,cpuall.h,decode.[ch]: Regenerate.
1078 * extract.c,model.c,sem-switch.c,sem.c: Regenerate.
1079 * sim-main.h: #include "ansidecl.h".
1080 Don't include cpu-opc.h, done by arch.h.
1081 * Makefile.in (M32RX_OBJS): Build m32rx support now.
1082 (m32rx.o): New rule.
1083 * m32r-sim.h (m32rx_h_cr_[gs]et): Define.
1084 * m32rx.c (m32rx_{fetch,store}_register): Update {get,set} of PC.
1085 (m32rx_h_accums_get): New function.
1086 * mloopx.in: Update call to m32rx_decode. Rewrite exec loop.
1087 * cpux.h,decodex.[ch],modelx.c,readx.c,semx.c: Regenerate.
1091 * configure: Regenerated to track ../common/aclocal.m4 changes.
1095 * configure: Regenerated to track ../common/aclocal.m4 changes.
1099 * Makefile.in (M32RX_OBJS): Comment out until m32rx port working.
1100 * arch.h (HAVE_CPU_M32R{,X}): Delete, moved to m32r-opc.h.
1101 * arch.c (machs): Check ifdef HAVE_CPU_FOO for each entry.
1105 * cpux.h: Fix duplicate definition of h_accums field for
1106 fmt_53_sadd structure.
1110 * Makefile.in: Add m32rx objs, and rules to build them.
1111 * cpux.h, decodex.h, decodex.c, readx.c, semx.c, modelx.c: New files.
1112 * m32rx.c, mloopx.in: New files.
1114 Mon Jan 19 22:26:29 1998 Doug Evans <devans@seba>
1116 * configure: Regenerated to track ../common/aclocal.m4 changes.
1120 * arch.c, arch.h, cpuall.h: New files.
1121 * arch-defs.h: Deleted.
1122 * mloop.in: Renamed from mainloop.in.
1123 * Makefile.in: Update.
1124 * sem-ops.h: Deleted.
1125 * mem-ops.h: Deleted.
1126 (arch): Renamed from CPU.
1130 * extract.c: Redone.
1132 * sem-switch.c: Redone.
1133 * sem.c: Renamed from semantics.c, and redone.
1134 * m32r-sim.h (PROFILE_COUNT_FILLNOPS): Update.
1135 (GETTWI,SETTWI,BRANCH_NEW_PC): Define.
1136 * m32r.c (WANT_CPU,WANT_CPU_M32R): Define.
1137 (m32r_{fetch,store}_register): New functions.
1138 (model_mark_{get,set}_h_gr): Prefix with m32r_.
1139 (m32r_model_mark_{busy,unbusy}_reg): Prefix with m32r_.
1140 (h_cr_{get,set}): Prefix with m32r_.
1141 (do_trap): Fetch state from current_cpu, not current_state.
1142 Call sim_engine_halt instead of engine_halt.
1143 * sim-if.c (alloc_cpu): New function.
1144 (free_state): New function.
1145 (sim_open): Call sim_state_alloc, and malloc space for selected cpu
1146 type. Call sim_analyze_program.
1147 (sim_create_inferior): Handle selected cpu type when setting PC.
1148 (sim_resume): Handle m32rx.
1149 (sim_stop_reason): Deleted.
1150 (print_m32r_misc_cpu): Update.
1151 (sim_{fetch,store}_register): Handle m32rx.
1152 (sim_{read,write}): Deleted.
1153 (sim_engine_illegal_insn): New function.
1154 * sim-main.h: Don't include arch-defs.h,sim-core.h,sim-events.h.
1155 Include arch.h,cpuall.h. Include cpu.h,decode.h if m32r.
1156 Include cpux.h,decodex.h if m32rx.
1157 (_sim_cpu): Include member appropriate cpu_data member for the cpu.
1158 (M32R_MISC_PROFILE): Renamed from M32R_PROFILE.
1159 (sim_state): Delete members core,events,halt_jmp_buf.
1160 Change `cpu' member to be a pointer to the cpu's struct, rather than
1161 record inside the state struct.
1162 * tconfig.in (WITH_DEVICES): Define here.
1163 (WITH_FAST,WITH_SEM_SWITCH_{FULL,FAST}): Define for the cpu.
1167 * arch-defs.h (INSN_NAME): Fix typo.
1171 * configure: Regenerated to track ../common/aclocal.m4 changes.
1176 * m32r-sim.h (MSPR_ADDR): New macro.
1177 (m32r_mspr_device): Declare.
1178 (struct _device): Define.
1179 * m32r.c (m32r_mspr_device): New global.
1180 (device_{io_{read,write}_buffer,error}): New functions.
1181 * mem-ops.h (SETMEM*): Use sim_core_write_map, not read map.
1182 * sim-if.c: Delete redundant inclusion of cpu-sim.h.
1183 (sim_open): Attach device to handle MSPR register.
1184 * sim-main.h (WITH_DEVICES): Define as 1.
1187 * configure: Regenerated to track ../common/aclocal.m4 changes.
1191 * configure.in (SIM_AC_OPTION_ENVIRONMENT): Call.
1192 * configure: Regenerated.
1196 * mem-ops.h: Rename SIM_SIG{ACCESS,ALIGN} to SIM_SIG{SEGV,BUS}.
1197 * sim-if.c (sim_open): Call sim_config.
1198 (sim_stop_reason): Update call to sim_signal_to_host.
1202 * Makefile.in (SIM_OBJS): Use $(SIM_NEW_COMMON_OBJS).
1206 * sim-if.c (sim_open): Delete dead call to sim_core_attach.
1210 * sem-ops.h (U{DIV,MOD}[BHSD]I): Use unsigned division.
1214 * configure: Regenerated to track ../common/aclocal.m4 changes.
1218 * configure: Regenerated to track ../common/aclocal.m4 changes.
1222 * configure: Regenerated to track ../common/aclocal.m4 changes.
1226 * Makefile.in (SIM_ENDIAN, SIM_HOSTENDIAN, SIM_SCACHE,
1227 SIM_DEFAULT_MODEL): Delete, moved to common.
1228 (SIM_EXTRA_CFLAGS): Update.
1232 * configure.in (sim_link_links): Configure non-strict memory
1235 * configure: Regenerated to track ../common/aclocal.m4 changes.
1239 * configure: Regenerated to track ../common/aclocal.m4 changes.
1243 * sim-if.c (sim_open): Allocate memory under sim-memopt module
1244 using sim_do_commandf.
1245 (sim_open): Set magic-number at the start.
1246 (sim_do_command): Implement.
1248 * sim-main.h (sim_engine_halt): Map onto engine_halt.
1252 * configure: Regenerated to track ../common/aclocal.m4 changes.
1254 Thu Sep 4 17:21:23 1997 Doug Evans <dje@seba>
1256 * configure: Regenerated to track ../common/aclocal.m4 changes.
1260 * Makefile.in (SIM_OBJS): Add sim-memopt.o module.
1264 * sim-if.c (sim_open): Pass zero modulo arg to sim_core_attach.
1268 * configure: Regenerated to track ../common/aclocal.m4 changes.
1273 * sim-if.c (sim_kill): Delete.
1274 (sim_create_inferior): Add ABFD argument.
1275 (sim_load): Move setting of PC from here.
1276 (sim_create_inferior): To here.
1277 (sim_load): Delete, use sim-hload.c instead.
1279 * Makefile.in (SIM_OBJS): Add sim-hload.o module.
1283 * configure: Regenerated to track ../common/aclocal.m4 changes.
1288 * sim-if.c (sim_open): Add ABFD argument.
1292 * sim-main.h (M32R_DEFAULT_MEM_SIZE): New macro.
1293 * sim-if.c (sim_open): Use it.
1297 * sim-main.h (WITH_ENGINE): Disable the common engine for now.
1301 * sim-if.c (sim_read): Pass NULL cpu to sim_core_read_buffer.
1302 (sim_write): Ditto for write.
1304 * m32r.c (do_trap): Ditto for read/write.
1308 * sim-if.c (sim_open): Add callback argument.
1309 (sim_set_callbacks, sim_callback): Delete.
1310 (sim_load): Set STATE_LOADED_P.
1314 * Makefile.in (SIM_OBJS): Link in sim-abort.o as a stub for
1319 * sim-if.c (sim_open): Update to reflect changes to core in
1321 * mem-ops.h (GETMEMQI, GETMEMHI, GETMEMSI, GETMEMDI, GETMEMUQI,
1322 GETMEMUHI, GETMEMUSI, GETMEMUDI, SETMEMQI, SETMEMHI, SETMEMSI,
1323 SETMEMDI, SETMEMUQI, SETMEMUHI, SETMEMUSI, SETMEMUDI): Ditto.
1327 * decode.c (decode): Add computed goto support.
1331 * mem-ops.h: Stub additional core read/write arguments.
1333 * sim-main.h: Declare sim_cia - type SI.
1334 (struct _sim_cpu): Move base type to end per common.
1335 (struct _sim_state): Ditto.
1339 Merge from branch into devo. CGEN generic files moved to common
1340 directory. K&R C support is no longer provided.
1344 * configure: Regenerated to track ../common/aclocal.m4 changes.
1348 * Makefile.in, seman-cache.c: new file, for wingdb build.
1349 * sim-alloca.h: fixed for wingdb.
1353 * decode.c (*): m32r_cgen_insn_table renamed to ..._entries.
1354 * mainloop.in: Use CGEN_INSN_INDEX instead of CGEN_INSN_TYPE.
1355 * simdefs.h (INSN_NAME): m32r_cgen_insn_table renamed to ..._entries.
1359 * cgen-utils.in (ex_illegal): Fill in abuf->length, abuf->addr.
1360 (exc_illegal): Likewise.
1361 * decode.c (decode_vars): Add decode_illegal.
1362 * genmloop.sh: #include "cpu-opc.h".
1363 * sem-switch.c (case_INSN_ILLEGAL): Declare.
1364 (labels): Add case_INSN_ILLEGAL.
1365 (SWITCH): Add INSN_ILLEGAL case.
1369 * model.c (model_module): Use 0 not NULL.
1371 * genmloop.sh (sim_main_loop): Handle k&r c.
1373 * sem-switch.c: Regenerate to get k&r c support.
1374 * semantics.c: Likewise.
1376 * m32r.c (ADD_{OV,CA}_SI,SUB_{OV,CA}_SI): Renamed to {ADD,SUB}[OC]FSI.
1377 (ADDCSI,SUBCSI): New functions.
1378 * sem-switch.c (addv,addv3,addx,subv,subx): Fix carry bit handling.
1379 * semantics.c (addv,addv3,addx,subv,subx): Fix carry bit handling.
1381 * simcache.c (simcache_{install,init,uninstall}): Use
1382 DECLARE_MODULE_INSTALL_HANDLER.
1383 (simcache_option_handler): Use DECLARE_OPTION_HANDLER.
1385 * utils.c: #include "semops.h".
1389 * profile.c (profile_print_simcache): Fix thinko in printf text.
1391 * simdefs.h (struct argbuf): Add member to fmt_20 so it's not empty.
1395 * m32r.c (h_cr_get): Rewrite.
1396 (h_cr_set): Rewrite.
1397 * sem-switch.c (rte): bcarry renamed to bcond.
1398 * semantics.c (rte): Likewise.
1399 * simdefs.h (CPU_STATE): Likewise.
1401 * config.in (HAVE_SYS_TIME_H): Add.
1402 * configure.in: Check for sys/time.h.
1403 * configure: Regenerated.
1404 * utils.c: Include sys/time.h if present.
1406 * common.c (sim_parse_args): Account for NULL terminating entry
1407 in long_options table.
1409 * genmloop.sh (RUN_FAST_P): Don't run fast if tracing.
1410 Always use cache if configured in.
1411 * mainloop.in (do_extract_insn{16,32}): New functions.
1412 (normal,fast): Call them. Handle starting in left slot.
1413 * simcache.c (simcache_option_handler): Disallow -c0.
1414 * sem-switch.c (TRACE_RESULT): Redefine so no tracing.
1416 * profile.c (profile_print_simcache): Fix percentage calc.
1418 * Makefile.in (INCLUDE_DEPS): Delete simcommon.h.
1422 * Makefile.in (COMMON_{PRE,POST}_CONFIG_FRAG): Add delimiters for.
1423 (M32R_INCLUDE_DEPS): Use cpu-sim.h instead of m32r-sim.h.
1425 (mrun.o): Don't depend on M32R_INCLUDE_DEPS.
1426 (sim-if.o,m32r.o,utils.o): Likewise.
1427 (common.o): Don't explicitly depend on mod-list.h.
1428 (mainloop.c): Pass CPU to genmloop.sh.
1429 (stamp-modules): Depend on configure.
1430 (decode.o): Depend on decode,h, memops.h, semops.h, cpu-opc.h.
1431 (extract.o): Depend on decode.h, memops.h, semops.h.
1432 (semantics.o,seman-cache.o): Likewise.
1433 (model.o,ops.o): Depend on memops.h.
1434 (extr-cache.o): Disable building for the moment.
1436 * simcommon.h: Delete, move contents into cgen-sim.h.
1437 * cgen-sim.h: Don't include ansidecl.h,bfd.h,simfns.h.
1438 (UINT,CGEN_CAT3): Define.
1439 ({extract,semantic}_fn_t): Renamed to {EXTRACT,SEMANTIC}_FN.
1440 (decode_t): Renamed to DECODE.
1442 * simfns.h: Delete, contents moved to memops.h,semops.h.
1443 * memops.h: New file.
1444 * semops.h: New file.
1445 * decode.h: Renamed from semantics.h.
1447 * sim-argv.h: New file.
1448 * Makefile.in (memory.o,trace.o,profile.o,simcache.o,common): Add
1449 dependency of sim-argv.h.
1451 * sim-alloca.h: New file.
1452 * common.c: Include it.
1453 * Makefile.in (common.o): Add dependency.
1455 * config.in (HAVE_TIME_H,HAVE_SYS_RESOURCE_H): Add.
1456 (HAVE_GETRUSAGE,HAVE_TIME): Add.
1457 * configure.in: sinclude ../common/aclocal.m4.
1458 Check for headers time.h, sys/resource.h.
1459 Check for functions time, getrusage.
1460 (sim_link_{files,links}): Add link cpu-opc.h.
1461 (sim_profile): Add simcache.
1462 (SIM_AC_PROFILE): Add simcache, profile.o.
1463 (simcache module): Delete extr-cache.o for now.
1464 (--enable-sim-cache): Allow specification of default cache size.
1465 * configure: Regenerated.
1467 * decode.c: #include cgen-sim.h,memops.h,semops.h,decode.h,
1468 cpu-sim.h,cpu-opc.h. Don't include m32r-sim.h.
1471 * extract.c: #include cgen-sim.h,decode.h,cpu-sim.h.
1472 Don't include m32r-sim.h.
1473 (*): Define/Undef FLD macro. Use it to reference ARGBUF.
1474 Simplify profiling test with PROFILE_MODEL_P.
1475 (mvfc,mvtc): Fix access of control registers.
1476 * semantic.c: #include cgen-sim.h,memops.h,semops.h,decode.h,cpu-sim.h.
1477 Don't include m32r-sim.h.
1478 (*): Define/Undef FLD macro. Use it to reference ARGBUF.
1479 Simplify profiling test with PROFILE_MODEL_P.
1480 (mvfc,mvtc): Fix access of control registers.
1482 * sem-switch.c: New file, for GCC computed goto support.
1484 * genmloop.sh: Add #include's of bfd.h,callback.h,cgen-sim.h,
1485 memops.h,semops.h,trace.h,cpu-sim.h.
1486 (RUN_FAST_P): Change default to run fast if cache size > 0
1488 (sim_main_loop): Record execution time.
1489 Record instruction count even in fast mode.
1490 (init): Allow cpu to provide init code in mainloop.in.
1491 (FAST): Define as 0 or 1 depending on fast mode.
1492 * mainloop.in (normal): Combine with fast case.
1493 Add support for GCC computed gotos. Count simcache hits/misses.
1494 (init): Initialize "switch" labels if GNUC.
1496 * cgen-utils.in: Don't include opcode/cgen.h.
1497 Include cgen-sim.h, cpu-opc.h.
1498 * common.c: Don't include simcommon.h,mod-list.h. Include cgen-sim.h.
1499 * m32r-sim.h: Don't include mod-list.h
1500 (RUN_FAST_P): Delete.
1501 * m32r.c: Don't include profile.h. #include ansidecl.h,cgen-sim.h,
1502 semops.h,memory.h,trace.h
1503 (h_cr_get,h_cr_set): New functions.
1504 * memory.c: #include cgen-sim.h,callback.h.
1505 * ops.c: Don't include profile.h,m32r-sim.h.
1506 Include cgen-sim.h,memops.h,cpu-sim.h.
1507 (MEMOPS_DEFINE_INLINE): Renamed from SIMFNS_DEFINE_INLINE.
1508 * trace.c: Include cgen-sim.h,cpu-opc.h.
1509 * trace.h (trace_insn_{init,fini}): Declare.
1511 * model.c: Don't include signal.h,stdlib.h,m32r-sim.h.
1512 Include cgen-sim.h,cpu-sim.h,cpu-opc.h.
1513 Regenerate to get new insn aliases.
1515 * mrun.c: #include "ansidecl.h".
1516 (STATE): Use struct sim_state instead.
1518 * profile.c: Surround #include <stdlib.h> with HAVE_STDLIB_H.
1519 Don't include simcommon.h. Include cgen-sim.h,cpu-opc.h.
1520 (PROFILE_{READ,WRITE}_MASK): Replace with PROFILE_MEMORY_MASK.
1521 (profile_print_simcache): New function.
1522 (profile_print): Call it. Print simulator speed stats.
1523 * profile.h (PROFILE_{READ,WRITE}_MASK): Replace with
1524 PROFILE_MEMORY_MASK.
1525 (MODULE_PROFILE_SIMCACHE_P): Define.
1526 (PROFILE_SIMCACHE_MASK): Define.
1527 (PROFILE_COUNT): New members total_insn_count,exec_time.
1528 New members simcache_hits,simcache_misses.
1529 (PROFILE_SIMCACHE_{HITS,MISSES}): Define.
1530 (PROFILE_MODEL_P): New macro.
1531 (PROFILE_COUNT_SIMCACHE_{HIT,MISS}): New macros.
1533 * sim-if.c: Surround #include <stdlib.h> with HAVE_STDLIB_H.
1534 Don't include simcommon.h,m32r-sim.h. Include cgen-sim.h,cpu-sim.h.
1535 (sim_resume): Use USING_SIMCACHE_P instead of RUN_FAST_P.
1536 (sim_info): Pass verbose to profile_print.
1538 * simcache.c: Include cgen-sim.h,callback.h.
1539 (USING_SIMCACHE_P): Replace with SIMCACHE_P.
1540 (simcache_option_handler): Ensure cache size at least 2.
1541 Allow config time specification of default cache size.
1542 * simcache.h (struct simcache): Support GCC computed gotos.
1543 (SIMCACHE_DEFAULT_CACHE_SIZE): USe CONFIG_SIM_CACHE_SIZE if defined.
1544 (USING_SIMCACHE_P): New macro.
1546 * simdefs.h: Don't include m32r-opc.h.
1547 (CGEN_MAX_SIM_INSNS): Define.
1548 (CPU_STATE): Regenerate.
1549 (ARGBUF): Regenerate.
1550 (extract,semantic handler decls): Delete, moved to decode.h.
1552 * tconfig.in: Don't include cgen-sim.h,m32r-sim.h.
1553 (USE_SEM_SWITCH): Define.
1555 * utils.c: Include bfd.h,time.h,sys/resource.h.
1556 (sim_time_get,sim_time_elapsed): New functions.
1557 * cgen-sim.h (SIM_TIME,sim_time_get,sim_time_elapsed): Declare.
1561 * configure.in (AC_CHECK_HEADERS): Handle i386-windows.
1562 * configure: Regenerated.
1563 * model.c: #include <stdlib.h>.
1564 * simcache.c: #include "libiberty.h".
1565 * simcommon.h (alloca): Handle i386-windows.
1567 * common.c: #include libiberty.h.
1568 (sim_signal_to_host): Return 5 if wingdb.
1572 * configure.in (sim_cache): Enabled by default now, pass default
1573 cache size to --enable-sim-cache.
1574 * simcache.c (simcache_option_handler): Allow -c 0.
1576 * simdefs.h,simfns.h: Regenerate
1577 * decode.c,extract.c,model.c,ops.c,semantics.c: Regenerate.
1581 Add model profiling support.
1582 * configure.in: Handle --enable-sim-model.
1583 (sim_profile): Add model.
1584 * Makefile.in (model.o): Add rule.
1585 * cgen-sim.h (UNIT,INSN_TIMING,MACH,MODEL): New types.
1586 * extract.c (*): Add model profiling support.
1587 * m32r.c (model_mark_{get,set}_h_gr): New functions.
1588 (model_mark_{busy,unbusy}_reg): New functions.
1589 * profile.c (profile_option_handler): Recognize --profile model.
1590 (profile_print_model): New function.
1591 (profile_print): Call it.
1592 * profile.h (MODULE_profile_model,MODULE_PROFILE_MODEL_P): Define.
1593 (PROFILE_MODEL_MASK,PROFILE_LABEL_WIDTH): Define.
1594 (PROFILE_COUNT): New members cycle_count,cti_stall_count,
1595 load_stall_count,taken_count,untaken_count.
1596 * semantics.c (*): Add model profiling support.
1597 * simcommon.h (struct sim_state): New members mach,model.
1598 * simdefs.h (CPU_PROFILE,MODEL_TYPE,UNIT_TYPE): New type.
1599 (MAX_MODELS,MAX_UNITS): Define.
1600 * tconfig.in (STATE_EXTRA_MEMBERS): Add cpu_profile.
1602 * Makefile.in (INCLUDE_DEPS): Add $(SIM_MODULES_HDRS).
1603 (stamp-modules): Depend on genmodlist.sh.
1604 * common.c (standard_options): Add --max-insns.
1605 (copy_argv): New function.
1606 * tconfig.in (SIM_HAVE_MAX_INSNS): Define.
1607 * genmloop.sh: Allow mainloop.in to contain support code.
1608 * mainloop.in: Move do_insn16,do_insn32 here.
1609 * m32r.c (do_trap): Handle SYS_argvlen,SYS_argv,SYS_read.
1610 * sim-if.c (sim_open): Don't set max insn count.
1611 (sim_create_inferior): Save argv,envp.
1612 * simcommon.h (struct sim_state): New members argv,envp.
1613 * simdefs.h ([GS]ETTWI,[GS]ETTUWI,[GS]ETTAI): Define.
1614 ([GS]ETMEMWI,[GS]ETMEMUWI,[GS]ETMEMAI): Define.
1615 (ARGBUF): New members h_gr_get, h_gr_set.
1616 * trace.c (trace_insn_init,trace_insn_fini): New functions.
1617 (trace_printf): Print to buffer, output later by trace_insn_fini.
1618 * trace.h (TRACE_INSN_{INIT,FINI}): Define.
1622 * configure.in (AC_FUNC_ALLOCA): Call.
1623 * configure: Regenerate.
1624 * config.h (HAVE_ALLOCA_H): Add.
1625 * simcommon.h: Add alloca support.
1626 (DECLARE_MODULE_INSTALL_HANDLER): Define.
1627 (DECLARE_OPTION_HANDLER): Define.
1628 (MEM_FN): Declare using PARAMS.
1629 (DECLARE_MEM_FN): Define.
1630 * trace.c (trace_result): Tweak for !STDC.
1631 * cgen-sim.h (UDI_FN_SUPPORT): Define if ! HAVE_LONGLONG.
1632 * cgen-utils.in (disasm_sprintf): Fix va_arg call in !STDC case.
1633 * common.c (sim_print_help_fn): Use PARAMS.
1634 (standard_option_handler): Fix decl for !STDC systems.
1635 * memory.c: #include <stdio.h>
1636 (mem_flat_{install,init,uninstall}): Fix decl for !STDC systems.
1637 (mem_flat_{read,write},mem_flat_option_handler): Likewise.
1638 * profile.c (profile_install): Likewise.
1639 (profile_option_handler): Likewise.
1643 * semantics.c (*): Don't suffix big unsigned numbers with "U".
1644 Prefix them with 0x instead.
1646 * cgen-sim.h (DI_FN_SUPPORT): Define if ! HAVE_LONGLONG.
1647 (SLADI,SRADI,CONVSIDI,CONVDISI): Delete, moved to simfns.h.
1648 * semantics.c (machi,maclo,macwhi,macwlo,mulhi,mullo): Implement.
1649 (mulwhi,mulwlo,mvtachi,mvtaclo,rac,rach): Implement.
1650 * simfns.h: Add decls for functional DI,UDI,SF,DF,XF,TF support.
1651 Add support for boolean and/or.
1652 * utils.c: Redo naming of DI functional support.
1653 (ANDDI,ORDI,ADDDI,MULDI,GEDI,LEDI,CONVHIDI): New functions.
1657 * Directory created.