aboutsummaryrefslogtreecommitdiff
path: root/sim/m32r/semx.c
AgeCommit message (Collapse)AuthorFilesLines
1998-10-09 Add pseudo-basic-block execution support.Doug Evans1-4299/+0
* Makefile.in (SIM_OBJS): Add sim-reg.o, cgen-run.o, sim-stop.o. (SIM_EXTRA_DEPS): Add include/opcode/cgen.h. (INCLUDE_DEPS): Delete cpu-sim.h, include/opcode/cgen.h. (mloop.c): Build pseudo-basic-block version. Depend on stamp-cpu. (stamp-decode): Delete, build decode files with other cpu files. * arch.c,arch.h,cpuall.h: Regenerate. * cpu.c,cpu.h,decode.c,decode.h,extract.c,model.c: Regenerate. * sem-switch.c,sem.c: Regenerate. * m32r-sim.h (M32R_MISC_PROFILE): New members load_regs, load_regs_pending. * m32r.c (m32rbf_fetch_register): Renamed from m32rb_fetch_register. (m32rbf_store_register,m32rbf_h_cr_get,m32rbf_h_cr_set, m32rbf_h_psw_get,m32rbf_h_psw_set,m32rbf_h_accum_get, m32rbf_h_accum_set): Likewise. (m32r_model_{init,update}_insn_cycles): Delete. (m32rbf_model_insn_{before,after}): New fns. (m32r_model_record_cti,m32r_model_record_cycles): Delete. (m32rb_model_mark_get_h_gr,m32rb_model_mark_set_h_gr): Delete. (m32rb_model_mark_busy_reg,m32rb_model_mark_unbusy_reg): Delete. (check_load_stall): New fn. (m32rbf_model_m32r_d_u_{exec,cmp,mac,cti,load,store}): New fns. (m32rbf_model_test_u_exec): New fn. * mloop.in: Rewrite, use pbb support. * sim-if.c (sim_stop,sim_sync_stop,sim_resume): Delete. (sim_fetch_register,sim_store_register): Delete. * sim-main.h (CIA_GET,CIA_SET): Fix. (SIM_ENGINE_HALT_HOOK,SIM_ENGINE_RESTART_HOOK): Delete. * tconfig.in (WITH_SCACHE_PBB): Define. (WITH_SCACHE_PBB_M32RBF): Define. * traps.c (sim_engine_invalid_insn): Renamed from ..._illegal_.... (m32r_trap): Pass pc to sim_engine_halt. * configure.in (SIM_AC_OPTION_SCACHE): Change 1024 to 16384. * configure: Regenerate. start-sanitize-m32rx * Makefile.in (M32RX_OBJS): Delete semx.o, add extract.o. (mloopx.c): Build pseudo-basic-block version. Depend on stamp-xcpu. (semx.o): Delete. (extractx.o): Add. (stamp-xdecode): Delete, build decode files with other cpu files. * cpux.c,cpux.h,decodex.c,decodex.h,modelx.c: Regenerate. * readx.c: Delete. * semx.c: Delete. * extractx.c: New file. * semx-switch.c: New file. * m32r-sim.h (BRANCH_NEW_PC): Delete. (SEM_SKIP_INSN): New macro. * m32rx.c (m32rxf_fetch_register): Renamed from m32rx_fetch_register. (m32rxf_store_register,m32rxf_h_cr_get,m32rxf_h_cr_set, m32rxf_h_psw_get,m32rxf_h_psw_set,m32rxf_h_accum_get, m32rxf_h_accum_set,m32rxf_h_accums_get,m32rxf_h_accums_set): Likewise. (m32rxf_model_insn_{before,after}): New fns. (m32rx_model_mark_get_h_gr,m32rx_model_mark_set_h_gr): Delete. (m32rx_model_mark_busy_reg,m32rx_model_mark_unbusy_reg): Delete. (check_load_stall): New fn. (m32rxf_model_m32rx_u_{exec,cmp,mac,cti,load,store}): New fns. * mloopx.in: Rewrite, use pbb support. * tconfig.in (WITH_SCACHE_PBB_M32RXF): Define. (WITH_SEM_SWITCH_FULL): Change from 0 to 1. end-sanitize-m32rx
1998-09-15 * m32r-sim.h (GET_H_SM): New macro.Doug Evans1-16/+31
(UART params): Update to msa2000. * devices.c (device_io_read_buffer): Update to msa2000. * m32r.c (m32rb_h_cr_get,m32rb_h_cr_set): Handle bbpc,bbpsw. (m32rb_h_psw_get,m32rb_h_psw_set): New functions. * arch.c,arch.h,cpu.c,cpu.h,sem-switch.c,sem.c: Regenerate. * m32rx.c (m32rx_h_cr_get,m32rx_h_cr_set): Handle bbpc,bbpsw. (m32rx_h_psw_get,m32rx_h_psw_set): New functions. * cpux.c,cpux.h,readx.c,semx.c: Regenerate. PR 15938.
1998-09-09 * m32r-sim.h (m32r_trap): Update prototype.Doug Evans1-1/+1
* traps.c (m32r_trap): New arg `pc'. * sem.c,sem-switch.c: Regenerated. * cpux.h,readx.c,semx.c: Regenerated.
1998-07-28 Add support for new versions of mulwhi,mulwlo,macwhi,macwlo thatDoug Evans1-35/+35
accept an accumulator choice. * cpux.c,decodex.c,decodex.h,modelx.c,readx.c,semx.c: Regenerate.
1998-07-24 * m32r.c: Include cgen-mem.h.Doug Evans1-119/+119
* traps.c (m32r_trap): Tweak for -Wall. * m32rx.c: Include cgen-mem.h. * semx.c: Regenerate, get -Wall cleanups.
1998-07-21 * cpu.h,extract.c: Regenerate. pc-rel calcs done on f_dispNN now.Doug Evans1-0/+119
* cpux.h,readx.c,semx.c: Ditto.
1998-07-02 * Makefile.in: cgen_maint -> CGEN_MAINT.Doug Evans1-304/+718
* configure.in: AC_SUBST cgen,cgendir. No longer look for guile. * configure: Regenerate. * arch.c,arch.h,cpuall.h: Regenerate. * cpu.c,cpu.h,decode.c,decode.h,extract.c,model.c: Regenerate. * sem-switch.c,sem.c: Regenerate. * cpux.c,cpux.h,decodex.c,decodex.h,modelx.c,readx.c: Regenerate. * semx.c: Regenerate. * mloopx.in (icount): Moved here from genmloop.sh.
1998-06-11Regenerate, gets a_m32r_trap -> m32r_trap renaming.Doug Evans1-1/+1
1998-06-11Regenerate. Updates from cgen for better VoidMode handling.Doug Evans1-13/+13
1998-05-20 Zero bottom two bits of pc in jmp,jl insns.Doug Evans1-2/+2
* sem.c,sem-switch.c: Regenerate. * semx.c: Regenerate.
1998-05-15 * Makefile.in (devices.o): Add dependencies.Doug Evans1-54/+54
* arch.h,cpu.c,cpu.h,cpuall.h: Regenerate. * sem-switch.c,sem.c: Regenerate. * mloop.in (execute): Update calls to TRACE_INSN_{INIT,FINI}. * cpux.c,cpux.h,modelx.c,semx.c: Regenerate. * m32rx.c (m32rx_model_mark_{busy,unbusy}_reg): New functions. * mloopx.in (execute): Update calls to TRACE_INSN_{INIT,FINI}.
1998-05-06 * sem-switch.c: Regenerate. Redo computed goto label handling.Doug Evans1-120/+503
* sem.c: Regenerate. Call PROFILE_COUNT_INSN. * readx.c: Regenerate. Redo computed goto label handling. * semx.c: Regenerate. Call PROFILE_COUNT_INSN. Finish profiling support. * Makefile.in (stamp-xcpu): Turn on profiling support.
1998-04-27 * cpu.c,model.c,sem-switch.c,sem.c: Regenerated. Mostly commentDoug Evans1-16/+16
and variable renaming due to macro insn additions. * mloop.in: Update to use CGEN_INSN_NUM. * cpu.x,modelx.c,readx.c,semx.c: Regenerated. * mloopx.in: Update to use CGEN_INSN_NUM.
1998-04-20 * cpu.c,sem.c,sem-switch.c: Regenerate. FromDoug Evans1-10/+10
- cgen/m32r.cpu (h-accum): Add attribute FUN-ACCESS. * m32r.c (m32r_h_accum_get,m32r_h_accum_set): New functions. #include cgen-ops.h. * cpux.c,readx.c,semx.c: Regenerate. * m32rx.c (m32r_h_accum_get,m32r_h_accum_set): New functions. #include cgen-ops.h. Delete inclusion of several unnecessary headers. (m32r_h_accums_get): Sign extend top 8 bits.
1998-04-14 * semx.c: Regenerate.Doug Evans1-1/+1
PR 15693.
1998-04-11 * cpu.h,decode.c,decode.h,extract.c,sem.c,sem-switch.c: Regenerate.Doug Evans1-359/+359
* cpux.h,decodex.c,decodex.h,readx.c,semx.c: Regenerate. Main change is to remove ordinal from format names.
1998-03-15 * config.in (HAVE_FCNTL_H): Add.Doug Evans1-4/+4
* configure: Regenerate. * Makefile.in (SIM_OBJS): Add devices.o. * m32r-sim.h (m32r_devices): Renamed from m32r_mspr_device. (UART_*): Define m32r serial port parameters. (M32R_DEVICE_ADDR,M32R_DEVICE_LEN): Define. * m32r.c (device_io_{read,write}_buffer,device_error): Move from here, * devices.c: To here. * sim-if.c: Don't include signal.h,sim-core.h. (sim_open): Use M32R_DEVICE_{ADDR,LEN} in sim_core_attach call. (sim_resume): Call sim_module_{resume,suspend}. * m32r.c (m32r_h_cr_{get,set}): Use register number enums. * tconfig.in (SIM_HANDLES_LMA): Define. * sim-if.c (do_trap): Result is new pc. Handle --environment=operating. * sem-switch.c,sem.c: Regenerate. start-sanitize-m32rx * semx.c: Regenerate. end-sanitize-m32rx
1998-03-04 * cpu.h,model.c,sem-switch.c,sem.c: Regenerate.Doug Evans1-150/+254
* cpux.h,decodex.[ch],modelx.c,readx.c,semx.c: Regenerate.
1998-02-27 * mloopx.in: Fix handling of branch in parallel with another insn.Doug Evans1-1/+1
* semx.c: Regenerate.
1998-02-23 * sim-main.h: #include symcat.h.Doug Evans1-150/+152
* m32r-sim.h (BRANCH_NEW_PC): Delete current_cpu arg. (NEW_PC_{BASE,SKIP,2,4,BRANCH_P}): New macros. * cpu.[ch],decode.[ch],extract.c,model.c: Regenerate. * sem.c,sem-switch.c: Regenerate. * m32r-sim.h (SEM_NEXT_PC): Modify to handle parallel exec. * mloopx.in: Rewrite. * cpux.[ch],decodex.[ch],readx.c,semx.c: Regenerate.
1998-02-20 * m32r.c (do_lock,do_unlock): Delete.Doug Evans1-212/+136
* cpu.[ch],decode.[ch],extract.c,model.c: Regenerate. * sem.c,sem-switch.c: Regenerate. * cpux.[ch],decodex.[ch],readx.c,semx.c: Regenerate.
1998-02-18 * Makefile.in (M32R_OBJS): Add cpu.o.Doug Evans1-323/+324
(cpu.o): Add rule for. (NL_TARGET): Define. * configure.in: Add AC_CHECK_PROG(SCHEME). * cpu.c: New file. * cpuall.h,cpu.h,decode.c,decode.h,extract.c,model.c: Regenerate. * sem-switch.c,sem.c: Regenerate. * mloop.in (execute): Update call to semantic fn. (M32RX_OBJS): Add cpux.o. (cpux.o): Add rule for. cpux.c: New file. * cpux.h,decodex.c,decodex.h,modelx.c,readx.c,semx.c: Regenerate. * m32rx.c (m32rx_h_accums_{get,set}): Rewrite. (m32rx_h_cr_{get,set}): New functions. (m32rx_h_accums_{get,set}): New functions. * mloopx.in: Rewrite main loop. * m32r.c (do_trap): Move from here. * sim-if.c (do_trap): To here, and rewrite to use CB_SYSCALL support. (sim_create_inferior): Use h_pc_set. (h_pc_{get,set}): New functions. (h_gr_{get,set}): New functions. (syscall_{read,write}_mem): New functions. * sim-main.h (h_{gr,pc}_{get,set}): Declare.
1998-02-12 * decode.c, decode.h, sem.c, sem-switch.c, model.c: Regenerate.Doug Evans1-93/+224
* cpux.c, decodex.c, decodex.h, readx.c, semx.c, modelx.c: Regenerate.
1998-02-10 * decode.c, sem.c: Regenerate.Doug Evans1-233/+230
start-sanitize-m32rx * cpux.h, decodex.c, readx.c, semx.c: Regenerate. * m32rx.c (m32rx_h_accums_set): New function. (m32rx_model_mark_[gs]et_h_gr): New function. * mloopx.in: Rewrite. * Makefile.in (mloopx.o): Build with -parallel. * sim-main.h (_sim_cpu): Delete member `par_exec'. * tconfig.in (WITH_SEM_SWITCH_FULL): Define as 0 for m32rx. end-sanitize-m32rx
1998-02-05 * Makefile.in (m32r.o): Depend on cpu.hDoug Evans1-930/+951
(extract.o): Pass -DSCACHE_P. * mloop.in (extract{16,32}): Update call to m32r_decode. * arch.h,cpu.h,cpuall.h,decode.[ch]: Regenerate. * extract.c,model.c,sem-switch.c,sem.c: Regenerate. * sim-main.h: #include "ansidecl.h". Don't include cpu-opc.h, done by arch.h. start-sanitize-m32rx * Makefile.in (M32RX_OBJS): Build m32rx support now. (m32rx.o): New rule. * m32r-sim.h (m32rx_h_cr_[gs]et): Define. * m32rx.c (m32rx_{fetch,store}_register): Update {get,set} of PC. (m32rx_h_accums_get): New function. * mloopx.in: Update call to m32rx_decode. Rewrite exec loop. * cpux.h,decodex.[ch],modelx.c,readx.c,semx.c: Regenerate. end-sanitize-m32rx
1998-01-20 * Makefile.in: Add m32rx objs, and rules to build them.Doug Evans1-0/+3188
* cpux.h, decodex.h, decodex.c, readx.c, semx.c, modelx.c: New files. * m32rx.c, mloopx.in: New files.