Doug Evans
47a2144503
lose fr30 for now
1998-11-06 00:17:34 +00:00
Dave Brolley
168c5ef4ef
Wed Nov 4 19:11:43 1998 Dave Brolley <brolley@cygnus.com>
...
* configure.in: Added case for fr30-*-*.
* configure: Regenerated.
1998-11-05 20:25:22 +00:00
Frank Ch. Eigler
1995094e7f
* r5900 sim test case fix
...
Thu Nov 5 10:37:40 EST 1998 Frank Ch. Eigler <fche@cygnus.com>
* t-prot3w.s: Correct test of prot3w insn.
1998-11-05 15:42:02 +00:00
Frank Ch. Eigler
210a903baf
* build fix
...
Thu Nov 5 10:29:42 EST 1998 Frank Ch. Eigler <fche@cygnus.com>
* r5900.igen (r59fp_opdiv): Correct erroneous FGR[FD] reference.
1998-11-05 09:42:06 +00:00
Andrew Cagney
dd0f610960
PR 16522
...
Fix RSQRT.S instruction, add test case.
1998-11-05 09:42:05 +00:00
Doug Evans
8de434bf89
* sim-main.h: Delete inclusion of config.h, include sim-basics.h
...
before cgen-types.h.
* tconfig.in: Guard against multiple inclusion.
* cpu.h: Delete decls moved to genmloop.sh.
* cpux.h: Ditto.
1998-11-05 07:56:02 +00:00
Doug Evans
8c7dc9ffc8
* genmloop.sh (eng.hin): Rename HAVE_PARALLEL_EXEC to
...
HAVE_PARALLEL_INSNS, define as 0 or 1. Emit decls of fns in mloop.cin.
* cgen-engine.h: Typedefs of IADDR,CIA,SEM_ARG,SEM_PC moved ...
* cgen-sim.h: ... to here.
1998-11-05 07:53:37 +00:00
Doug Evans
d4df1e3023
add some comments
1998-11-04 19:27:20 +00:00
Frank Ch. Eigler
fd0e83b604
* adding missing ChangeLog header line
1998-11-02 11:51:27 +00:00
Frank Ch. Eigler
0ec51df9ef
* build fix for tx39 sim; caused by sky->devo merge
...
* dv-tx3904cpu.c (deliver_tx3904cpu_interrupt): Add dummy
interrupt level number to match changed SignalExceptionInterrupt
macro.
1998-10-30 09:49:18 +00:00
Frank Ch. Eigler
2fee67aeb8
* Updated sanitization
...
- remove memories of old sim/testsuite/sky directory
- add new dir sim/testsuite/mips64el-elf to "always-keep" list
1998-10-30 07:03:14 +00:00
Felix Lee
baa791ae9b
* lib/sim-defs.exp (sim_run): download target program to remote
...
host, if necessary. for unix-driven win32 testing.
1998-10-30 00:39:44 +00:00
Michael Snyder
eeb89805cb
fix minor typo.
1998-10-29 18:24:04 +00:00
Frank Ch. Eigler
271f091db7
* Test cases for PR 18015.
...
Thu Oct 29 12:07:06 1998 Frank Ch. Eigler <fche@cygnus.com>
* t-psrlvw.s (test_psrlvw): Add test for sign-extension in insn.
* t-padsbh.s: New test.
* t-mult1.s: New test.
* Makefile.in: Run them.
1998-10-29 17:28:18 +00:00
Frank Ch. Eigler
fd6e6422c8
* sky->devo merge, continued -- left out the r5900 TLB last time!
...
* includes a small PR 17224 tweak
1998-10-29 13:44:37 +00:00
Frank Ch. Eigler
0d51822e3b
* monster sky->devo merge -- sky sim test suites
1998-10-29 12:59:50 +00:00
Frank Ch. Eigler
afacff5074
* sky->devo merge; dummy test suite directory for mips64el-skyb-elf target.
1998-10-29 12:07:51 +00:00
Frank Ch. Eigler
3ac7980b23
* Fixes for PR 18015, from customer.
...
Thu Oct 29 11:06:30 EST 1998 Frank Ch. Eigler <fche@cygnus.com>
* r5900.igen: Fix PSRLVW, MULTU1, PADSBH instructions,
as per customer patch.
1998-10-29 09:30:11 +00:00
Doug Evans
3afece8646
* sim-if.c (sim_do_command): Handle "sim info reg {bbpsw,bbpc}".
...
Bring over from branch.
1998-10-28 22:45:11 +00:00
Drew Moseley
84e42e1daf
For cygwin hosts, we need to use the return value from the read
...
routine as the number of bytes to process. This apparently is due to
text-mode vs binary-mode. If the mounts are done text-mode, then the
size returnedby fstat() may be different than the number of bytes
"read" in text mode.
1998-10-28 21:16:44 +00:00
Andrew Cagney
b9a9cde40b
Unify (well almost) --enable-build-warnings configuration option
...
across GDB and SIM directories.
1998-10-28 02:01:32 +00:00
Frank Ch. Eigler
fe146542dd
* Fix for testcase for checking PR 17362.
...
Tue Oct 27 15:20:16 EST 1998 Frank Ch. Eigler <fche@cygnus.com>
* t-prot3w.s: Test changed spec of prot3w insn.
1998-10-27 21:49:15 +00:00
Frank Ch. Eigler
fda83b6795
* MONSTER sky -> devo merge
...
* ChangeLog / ChangeLog.sky entries were merged with original time stamps;
a few were moved between the files
1998-10-27 12:48:08 +00:00
Doug Evans
9c5da58d59
* sim-main.h: #include cpu-opc.h.
...
* arch.c,arch.h,decode.c,extract.c,model.c,sem.c: Regenerate
to get #include cleanup.
* decodex.c,extractx.c,modelx.c: Ditto.
1998-10-19 23:33:40 +00:00
Doug Evans
48ffd442f6
* Makefile.in (SIM_EXTRA_DEPS): Replace cgen headers with
...
CGEN_INCLUDE_DEPS.
(M32RBF_INCLUDE_DEPS): Define.
(m32r .o's): Depend on it.
(mloop.c): Update call to genmloop.sh.
* cpu.h,cpuall.h: Regenerate.
* sim-main.h: Delete inclusion of cpu.h,decode.h, moved to cpuall.h.
#include cgen-scache.h,cgen-cpu.h.
* tconfig.in (WITH_FOO semantic macros): Delete.
* Makefile.in (M32RXF_INCLUDE_DEPS): Define.
(m32rx .o's): Depend on it.
(mloopx.c): Update call to genmloop.sh.
* cpux.h: Regenerate.
1998-10-19 21:14:14 +00:00
Doug Evans
b35179cb0b
* Make-common.in (CGEN_INCLUDE_DEPS): Define.
...
(sim-core.o): Delete duplicate dependence on $(SIM_EXTRA_DEPS).
(sim-cpu.o,sim-endian.o,sim-hw.o): Ditto.
(cgen-run.o,cgen-scache.o,cgen-trace.o,cgen-utils.o): Delete
explicit cgen header dependencies, require SIM_EXTRA_DEPS to include
CGEN_INCLUDE_DEPS.
* cgen-cpu.h: New file.
* cgen-engine.h: New file.
* cgen-scache.h: New file.
* cgen-sim.h: Delete portions moved to new files.
* genmloop.sh: Generate two files eng.hin,mloop.cin explicitly,
rather than sending result to stdout.
1998-10-19 21:00:59 +00:00
Doug Evans
3b5f425750
* interp.c: #include "itable.h" if WITH_IGEN.
...
(get_insn_name): New function.
(sim_open): Initialize CPU_INSN_NAME,CPU_MAX_INSNS.
* sim-main.h (MAX_INSNS,INSN_NAME): Delete.
1998-10-10 01:07:15 +00:00
Doug Evans
bb51b65d68
Add pseudo-basic-block execution support.
...
* 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-10-09 23:43:28 +00:00
Doug Evans
0b517b9cf2
* Make-common.in (sim-reg.o): New rule.
...
(cgen-run.o): New rule.
* cgen-ops.h: Delete many BI macros. Change all UBI -> BI.
* cgen-run.c (prime_cpu): New function.
* cgen-scache.c: Add pseudo-basic-block (pbb) scaching support.
(scache_option_handler, case OPTION_PROFILE_SCACHE): Handle explicitly
mentioned cpu.
(scache_flush_cpu,scache_lookup,scache_lookup_or_alloc): New fns.
* cgen-sim.h (CGEN_INSN_VIRTUAL_TYPE): New enum.
(CGEN_INSN_VIRTUAL_P): New macro.
(SEM_PC): New typedef.
(SEMANTIC_FN): Change type of result to SEM_PC.
(SEM_SET_FULL_CODE,SEM_SET_FAST_CODE,SEM_SET_CODE): New macros.
(IDESC_CTI_P,IDESC_SKIP_P): New macros.
(SCACHE_MAP): New typedef.
(CPU_SCACHE): Add pbb support.
(scace_lookup,scache_lookup_or_alloc,scache_flush_cpu): Declare.
(SEM_BRANCH_INIT_EXTRACT,SEM_BRANCH_INIT,SEM_BRANCH_FINI): New macros.
(CGEN_CPU): New members running_p,insn_count,{fast,full}_engine_fn,
max_slice_insns.
(INSN_NAME): Delete.
(cgen_insn_name): Declare.
(sim_engine_invalid_insn): Renamed from sim_engine_illegal_insn.
* cgen-trace.c (trace_buf): Shrink from 1024 to 256 bytes.
(first_insn_p): Make static.
(trace_insn): Handle virtual insns specially.
(cgen_trace_printf): Ensure we haven't overflowed the buffer.
* cgen-types.h (UBI): Delete.
(MODE_TYPE): New enum.
(HOSTINT,HOSTUINT,HOSTPTR): Delete.
* cgen-utils.c (mode_names): Delete UBI. Add INT,UINT,PTR.
(cgen_virtual_opcode_table): New global.
(cgen_insn_name): New function.
(sim_disassemble_insn): Ignore virtual insns.
* genmloop.sh: Delete top level loop generation. Add pbb support.
* sim-cpu.h (CPU_INSN_NAME_FN): New typedef.
(sim_cpu_base): New members max_insns,insn_name,model_data.
(CPU_PC_GET,CPU_PC_SET): New macros.
(sim_pc_get,sim_pc_set): Declare.
* sim-model.c (model_set): Call model init fn.
* sim-model.h (MODEL_FN): New typedef.
(INSN_TIMING): New member model_fn.
(MODEL): New members num,init.
* sim-profile.c (sim_profile_print_bar): Renamed from print_bar.
All callers updated.
(profile_insn_init): New fn.
(profile_print_insn): Update, INSN_NAME -> CPU_INSN_NAME.
Exit early if insn profiling not supported.
(profile_print_memory): Update, MAX_MODES -> MODE_TARGET_MAX.
(profile_install): Record profile_insn_init as init fn.
(profile_uninstall): Free PROFILE_INSN_COUNT if non-null.
* sim-profile.h: Update, MAX_MODES -> MODE_TARGET_MAX.
(PROFILE_DATA): Delete member exec_time.
Change insn_count to pointer to array, rather than the array.
(sim_profile_print_bar): Declare.
1998-10-09 22:43:05 +00:00
Doug Evans
99bc9a6984
cgen-run.c: new mainloop for cgen
...
sim-reg.c: generic sim_fetch/store_register interface fns
1998-10-07 23:55:42 +00:00
Nick Clifton
1ee490ca0b
Fix PR 17387: ignore auto increment for loads where the destination register
...
and the address register are the same.
1998-09-30 17:15:14 +00:00
Doug Evans
ff8c385ab3
* m32r-sim.h (GET_H_SM): New macro.
...
(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-15 22:16:08 +00:00
Nick Clifton
043333a61a
define SIM_HAVE_BIENDIAN
1998-09-14 16:58:00 +00:00
Doug Evans
4d87923eb3
* r5900.igen (plzcw): Make `i' signed.
...
PR 17191.
1998-09-10 19:00:46 +00:00
Doug Evans
190659a22d
* m32r-sim.h (m32r_trap): Update prototype.
...
* traps.c (m32r_trap): New arg `pc'.
* sem.c,sem-switch.c: Regenerated.
* cpux.h,readx.c,semx.c: Regenerated.
1998-09-09 22:34:09 +00:00
Doug Evans
3efbfbebdc
* sim/sky/pr17191.s: New file.
...
* sim/sky/pr17191.brn: New file.
* sim/sky/t-macros.inc: New file.
1998-09-09 21:50:10 +00:00
Ron Unrau
323f833daf
Branch merge for GDB:
...
* sim-main.h: track COP0 registers
* interp.c (sim_{fetch,store}_register): read/write COP0 registers
* sky-gdb.[ch]: add sim pipeorder command
1998-09-09 17:30:31 +00:00
Frank Ch. Eigler
9ade226a42
* Patch for PR 17142, brought over from sky branch.
...
Fri Sep 4 10:37:57 1998 Frank Ch. Eigler <fche@cygnus.com>
* r5900.igen (mtsab): Correct typo in input register.
* sim-main.h (TMP_*): New macros for accessing local 128-bit
temporary for multimedia instructions.
* r5900.igen (*): Convert most instructions to use new TMP
macros to store output result during computation.
1998-09-08 11:09:45 +00:00
Frank Ch. Eigler
78b871ec81
* Build fixes for tx39 sim hosted on strange Linux boxen.
...
[common/ChangeLog]
Tue Sep 1 15:36:52 1998 Frank Ch. Eigler <fche@cygnus.com>
* sim-config.h: Remove reference to linux kernel header.
[mips/ChangeLog]
Tue Sep 1 15:39:18 1998 Frank Ch. Eigler <fche@cygnus.com>
* dv-tx3904sio.c: Include sim-assert.h.
1998-09-01 13:19:57 +00:00
Ken Raeburn
83e29d5263
Change sanitization of vrXXXX to cygnus, so redact might work on it.
...
This means using keep-vr4320 without keep-cygnus probably won't work.
1998-08-26 17:29:06 +00:00
Joyce Janczyn
cf83964e6f
Regress yesterday's change to jmp instn implementation in mn10300.igen.
1998-08-26 13:37:56 +00:00
Joyce Janczyn
ef4d20e915
Regress yesterday's change to jmp instruction -- it has deceiving syntax.
...
Also tidy up some code to match documentation and fix div, divu by 0.
1998-08-26 13:31:38 +00:00
Joyce Janczyn
59587664ab
* mn10300.igen (OP_F0F4): Need to load contents of register AN0
...
for jmp.
1998-08-25 20:49:35 +00:00
Frank Ch. Eigler
36e838d13b
* eCos tx3904sio sim - devo part 2/2
...
Tue Aug 25 12:49:46 1998 Frank Ch. Eigler <fche@cygnus.com>
* dv-tx3904sio.c: New file: tx3904 serial I/O module.
* configure.in: Add dv-tx3904sio, dv-sockser for tx39 target.
Reorganize target-specific sim-hardware checks.
* configure: rebuilt.
* interp.c (sim_open): For tx39 target boards, set
OPERATING_ENVIRONMENT, add tx3904sio devices.
* tconfig.in: For tx39 target, set SIM_HANDLES_LMA for loading
ROM executables. Install dv-sockser into sim-modules list.
* dv-tx3904irc.c: Compiler warning clean-up.
* dv-tx3904tmr.c: Compiler warning clean-up. Remove particularly
frequent hw-trace messages.
1998-08-25 14:16:58 +00:00
Frank Ch. Eigler
8d6ed1b768
* eCos tx3904sio sim - devo part 1/2
...
Tue Aug 25 12:45:27 1998 Frank Ch. Eigler <fche@cygnus.com>
* dv-sockser.c (sockser_addr): Make variable non-static.
1998-08-25 13:58:35 +00:00
Joyce Janczyn
c1802bfd60
* sim-main.h (SIM_HANDLES_LMA): Define SIM_HANDLES_LMA.
1998-08-24 15:52:43 +00:00
Joyce Janczyn
fb37fdcb89
* sim-hw.{c,h} (sim_hw_parse): Return struct hw pointer.
1998-08-24 15:48:45 +00:00
Ken Raeburn
aeeb756dee
fix broken sanitization
1998-08-18 18:58:10 +00:00
Ken Raeburn
3d759c53c9
sanitize-vr5400 -> sanitize-cygnus, for 98r2
1998-08-12 10:50:35 +00:00
Ron Unrau
d333eeedde
* sim-main.h: track COP2 register definitions, define VIO_BASE
...
* interp.c (sim_{fetch,store}_register): read/write VU0/1 control regs
* sky-gdb.c: use VIO_BASE
* sky-pke.h: move GDB_COMM area
1998-08-06 20:02:47 +00:00
Doug Evans
d68bc3cb16
Rename cpu m32r to m32rb to distinguish from architecture name.
...
* Makefile.in (mloop.c): cpu m32r renamed to m32rb.
(stamp-cpu): Ditto.
* sim-main.h (WANT_CPU_M32RB): Renamed from WANT_CPU_M32R.
* tconfig.in (WANT_CPU_M32RB): Ditto.
* m32r.c (WANT_CPU_M32RB): Ditto.
(*): m32r_ cpu fns renamed to m32rb_.
* sim-if.c (sim_stop,sim_sync_stop,sim_resume): Update.
* arch.h,arch.c: Regenerate.
* cpu.c,cpu.h,decode.c,decode.h,extract.c,model.c: Regenerate.
* sem-switch.c,sem.c: Regenerate.
* sim-if.c (sim_open): Don't allocate memory on top of any user
specified memory.
(h_gr_get,h_gr_set): Delete.
* sim-main.h (h_gr_get,h_gr_set): Delete.
* traps.c (m32r_trap): Replace calls to h_gr_[gs]et with
a_m32r_h_gr_[gs]et.
1998-08-04 02:52:16 +00:00
Doug Evans
13ccace0ca
* Makefile.in (INCLUDE_DEPS): Add include/opcode/cgen.h.
...
* sim-if.c (sim_open): Open opcode table.
(sim_close): Close it.
1998-08-03 19:58:36 +00:00
Doug Evans
39813256da
* cgen-sim.h (cgen_state): New member opcode_table.
...
* cgen-utils.c (sim_disassemble_insn): Use it.
1998-08-03 18:45:06 +00:00
Ron Unrau
b8140a08bf
* sim-main.h: shadow NUM_CORE_REGS from tm-txvu.h
...
* interp.c: use NUM_CORE_REGS
* sky-gdb.c (set_fifo_breakpoints): use VIF interrupt bit for break
* sky-pke.c (pke_issue): use interrupt bit for break points
1998-07-31 22:02:12 +00:00
Jeff Holcomb
acf38b4e4a
fix sanitization
1998-07-31 05:23:28 +00:00
Jeff Law
e1160daac2
Fix sanitize misspellings.
1998-07-29 18:28:29 +00:00
Andrew Cagney
8d3580d090
Fix incorrect calculation of conditional field when being extracted
...
from a previous decode.
1998-07-29 00:14:29 +00:00
Doug Evans
d846a17c70
Add support for new versions of mulwhi,mulwlo,macwhi,macwlo that
...
accept an accumulator choice.
* cpux.c,decodex.c,decodex.h,modelx.c,readx.c,semx.c: Regenerate.
1998-07-28 20:09:10 +00:00
Doug Evans
fe63ffef0a
New testcases for PR 16547 (new instructions added).
1998-07-28 18:43:52 +00:00
Andrew Cagney
f6b7bfcfa0
Add note about limitations of insn_field_cmp().
1998-07-28 08:58:23 +00:00
Andrew Cagney
07c2bd1455
Problems with conditional instruction-table fields (N!M, N=M, ...).
...
Was restricting `M' to opcode fields in the current word.
1998-07-28 08:08:54 +00:00
Jeff Law
3e20223154
* am33.igen: Detect cases where two operands must not match in
...
non-DSP instructions.
1998-07-27 18:05:43 +00:00
Andrew Cagney
60f9cd07d0
For vr* processors start using vr.igen.
...
Sanitize out README.Cygnus.
1998-07-25 07:49:29 +00:00
Andrew Cagney
e1b20d3048
Add new file vr.igen which is a merge of vr5400.igen and vr4320.igen.
...
Hack sanitize so that it doesn't sanitize vrXXX when either of
keep-vr5400 or keep-vr4320 are specified.
Move two basic vr4100 instructions from mips.igen to vr.igen.
1998-07-25 06:45:18 +00:00
Joyce Janczyn
a2f93b6758
Fri Jul 24 18:15:21 1998 Joyce Janczyn <janczyn@cygnus.com>
...
* op_utils.c (do_syscall): Rewrite to use common/syscall.c.
(syscall_read_mem, syscall_write_mem): New functions for syscall
callbacks.
* mn10300_sim.h: Add prototypes for syscall_read_mem and
syscall_write_mem.
* mn10300.igen: Change C++ style comments to C style comments.
Check for divide by zero in div and divu ops.
1998-07-24 22:22:35 +00:00
Doug Evans
431e4f86ad
* m32r.c: Include cgen-mem.h.
...
* traps.c (m32r_trap): Tweak for -Wall.
* m32rx.c: Include cgen-mem.h.
* semx.c: Regenerate, get -Wall cleanups.
1998-07-24 20:03:56 +00:00
Doug Evans
63542cbcc0
* cgen-mem.h (DECLARE_SETT): Fix return type.
1998-07-24 19:44:04 +00:00
Jeff Law
6d254a2d5f
* am33.igen (translate_xreg): New function. Use it as needed.
1998-07-24 18:50:12 +00:00
Doug Evans
f3ccb5a785
* sim-model.c (model_option_handler): Remove unused variable `n'.
1998-07-24 17:16:02 +00:00
Doug Evans
fa653bc01e
* Makefile.in (clean,mostlyclean): Change leading spaces to a tab.
1998-07-24 16:44:43 +00:00
Ian Lance Taylor
965f532708
remove d30v sanitization
1998-07-24 04:38:45 +00:00
Jeff Law
4b6651c925
* am33.igen: Add some missing instructions.
...
Missed a few last week... Grrr.
1998-07-23 16:31:41 +00:00
Jeff Law
6ae1456eb5
* am33.igen: Autoincrement loads/store fixes.
1998-07-23 16:06:50 +00:00
Doug Evans
7422fa0cc8
* cpu.h,extract.c: Regenerate. pc-rel calcs done on f_dispNN now.
...
* cpux.h,readx.c,semx.c: Ditto.
1998-07-21 23:54:10 +00:00
Doug Evans
cac4e5a481
* cgen-utils.c: Include bfd.h.
...
(sim_disassemble_insn): Update call to CGEN_EXTRACT_FN.
1998-07-21 23:26:53 +00:00
Jeff Law
0a78550778
* am33.igen: Add most am33 DSP instructions.
1998-07-21 15:50:14 +00:00
Jillian Ye
27de7e18c4
Forward fit sky-branch updates to devo.
1998-07-17 18:43:30 +00:00
Jeff Holcomb
7034215bc6
fix sanitization; add trap.S
1998-07-14 23:00:31 +00:00
Jeff Law
4b987239ea
Fix goof.
1998-07-14 03:59:11 +00:00
Jeff Law
080ee2ba75
* am33.igen: Fix Z bit for remaining addc/subc instructions.
...
Do not sign extend immediate for mov imm,XRn.
More random mul, mac & div fixes.
Remove some unused variables.
Sign extend 24bit displacement in memory addresses.
Whee, more fixes.
1998-07-09 19:41:47 +00:00
Jeff Law
4e86afb85f
* mn10300.igen: Fix Z bit for addc and subc instructions.
...
Minor fixes in multiply/divide patterns.
start-sanitize-am33
* am33.igen: Fix Z bit for addc Rm,Rn and subc Rm,Rn. Various
fixes to 2 register multiply, divide and mac instructions. Set
Z,N correctly for sat16. Sign extend 24 bit immediate for add,
and sub instructions.
* am33.igen: Add remaining non-DSP instructions.
end-sanitize-am33
1998-07-09 19:04:22 +00:00
Jeff Law
1f0ba346eb
* am33.igen: Add remaining non-DSP instructions.
...
Lots of work still remains. PSW handing is probably broken badly and the
mul/mac classes of instructions are probably not handled correctly.
1998-07-09 16:09:24 +00:00
Jeff Law
9c55817e66
* am33.igen (translate_rreg): New function. Use it as appropriate.
1998-07-09 00:24:57 +00:00
Jeff Law
377e53bb6b
* am33.igen: More am33 instructions. Fix "div".
1998-07-08 22:33:35 +00:00
Andrew Cagney
9483af2c61
Add a printf fmt style version of sim_events_schedule.
...
This allows the caller to specify extra trace information that is
only evaluated when tracing is enabled.
1998-07-08 08:00:36 +00:00
Jeff Law
d2b02ab22d
* mn10300.igen: Add am33 support.
1998-07-06 22:02:02 +00:00
Jeff Law
135431cd7e
* Makefile.in: Use multi-sim to support both a mn10300 and am33
...
simulator.
1998-07-06 21:57:22 +00:00
Jeff Law
658fb0c743
* sim-bits.h (EXTEND24): Define.
1998-07-06 21:55:37 +00:00
Jeff Law
3e75ff7efd
* am33.igen: Add many more am33 instructions.
1998-07-06 21:41:06 +00:00
Doug Evans
039fa2c847
* cgen-sim.h (CPU_SCACHE): Make size unsigned.
...
(CPU_SCACHE_HASH_MASK): New macro.
(SCACHE_HASH_PC): Rewrite.
* genmloop.sh (engine_resume_{full,fast}): Move some of hash
computation out of main loop.
1998-07-03 00:14:49 +00:00
James Lemke
0a3ec14442
Add a test case for PR16213.
1998-07-02 20:20:32 +00:00
Doug Evans
1148b104ae
* Makefile.in: cgen_maint -> CGEN_MAINT.
...
* 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-07-02 01:42:38 +00:00
Doug Evans
6de2add29f
* Make-common.in (SCHEME,SCHEMEFLAGS): Delete.
...
(CGENDIR,CGEN): New variables.
(CGEN_VERBOSE): Renamed to CGENFLAGS.
(cgen-arch,cgen-cpu,cgen-decode): Update.
(CGEN_CPU_WRITE): New variable.
(CGEN_CPU_SEMSW): -W -> -X.
(CGEN_FLAGS_TO_PASS): Delete SCHEME. Add CGEN,CGENFLAGS.
* cgen.sh: Delete args scheme,schemeflags. New arg cgen.
* cgen-sim.h (RECORD_IADDR): Delete.
* cgen-types.h (HOSTINT,HOSTUINT,HOSTPTR): New types.
* genmloop.sh (engine_resume_{full,fast}): Delete icount.
1998-07-01 23:47:50 +00:00
Jeff Law
ee61616c43
Tweak.
1998-07-01 23:15:55 +00:00
Jeff Law
0f7d73858c
* am33.igen: New file with some am33 support.
...
Checking in work-to-date.
1998-07-01 23:13:14 +00:00
Jeff Law
de2adf7070
* mn10300_sim.h (FETCH24): Define.
...
* mn10300_sim.h: Add defines for some registers found on the AM33.
1998-07-01 23:11:59 +00:00
Doug Evans
8686807e30
* sim/m32r/hw-trap.ms: New testcase.
1998-07-01 22:57:07 +00:00
Doug Evans
9ae0ae657f
* sim/sky/vureloc{.brn,-main.c,.dvpasm}: New files.
1998-07-01 21:37:10 +00:00
Jeff Law
a6cbaa652a
* mn10300_sim.h: Include bfd.h
...
(struct state): Add more room for processor specific registers.
start-sanitize-am33
(REG_E0): Define.
end-sanitize-am33
1998-06-30 17:28:54 +00:00
Gavin Romig-Koch
46eb9e5a57
* interp.c (OPTION_BRANCH_BUG_4011): Add.
...
(mips_option_handler): Handle OPTION_BRANCH_BUG_4011.
(mips_options): Define the option.
* mips.igen (check_4011_branch_bug): New.
(mark_4011_branch_bug): New.
(all branch insn): Call mark_branch_bug, and check_branch_bug.
* sim-main.h (branchbug4011_option, branchbug4011_last_target,
branchbug4011_last_cia, BRANCHBUG4011_OPTION,
BRANCHBUG4011_LAST_TARGET, BRANCHBUG4011_LAST_CIA,
check_branch_bug, mark_branch_bug): Define.
1998-06-29 13:30:01 +00:00
Gavin Romig-Koch
aaa2c9082c
* mips.igen (check_mf_hilo): Correct check.
1998-06-29 13:22:31 +00:00
Michael Meissner
16a88df71e
Do not try to include sys/mount.h anymore
1998-06-26 18:22:48 +00:00
Patrick Macdonald
80b86d36b3
* sky-pke.c (pke_issue): use default trace file name if the
...
--log-file option not used
1998-06-25 18:58:10 +00:00
Joyce Janczyn
5eb78d70cc
Thu Jun 25 10:12:03 1998 Joyce Janczyn <janczyn@cygnus.com>
...
* dv-mn103tim.c: Include sim-assert.h
* dv-mn103ser.c (do_polling_event): Check for incoming data on
serial line and schedule next polling event.
(read_status_reg): schedule events to check for incoming data on
serial line and issue interrupt if necessary.
1998-06-25 14:17:47 +00:00
Frank Ch. Eigler
56b6d49ae0
* Bringing over SKY PKE disassembler feature from sky branch.
1998-06-25 11:41:20 +00:00
Frank Ch. Eigler
dcf63a62ea
* Bringing sky pke disasm from sky branch.
1998-06-25 11:35:43 +00:00
James Lemke
7e3459149e
* sim/sky/t-int.c, sim/sky/t-int-handler.c:
...
Testcase errors: two in the former file, one in the latter.
1998-06-24 22:19:38 +00:00
James Lemke
2a7392656c
Updated sim/sky/t-dma.c: It missed check-in earlier today.
1998-06-24 21:55:45 +00:00
James Lemke
b8f4ecc8d6
Updated sim/sky/t-dma.{brn|dmaexpect} because a warning msg being checked
...
for, contains an address that differs between -mhard-float and -msoft-float.
1998-06-24 16:02:01 +00:00
Jillian Ye
f915cc9125
configure.in: Add -lXext to mips_extra_libs
1998-06-23 17:59:31 +00:00
Patrick Macdonald
f439ad5f17
* sky-dma.h, sky-gpuif.[c|h], sky-gs.h, sky-pke.[c|h],
...
sky-vu.h: use _IOLBF on debug files, _IOFBF on trace files
* sky-gdb.[c|h] (sky_open_file()): add buffer mode to
parameter list
1998-06-22 15:08:58 +00:00
Jillian Ye
f4f78bcc9c
Remove the directory, all sky sim testcases are now in sim/sky/
1998-06-19 20:26:23 +00:00
Joyce Janczyn
0df90cd8e4
Fri Jun 19 11:59:26 1998 Joyce Janczyn <janczyn@cygnus.com>
...
* interp.c (board): Rename am32 to stdeval1 as this is the name
consistently used to refer to the mn1030002 board.
1998-06-19 16:02:51 +00:00
Joyce Janczyn
f0ce242fcd
Thu June 18 14:37:14 1998 Joyce Janczyn <janczyn@cygnus.com>
...
* interp.c (sim_open): Fix typo in address of EXTMD register
(0x34000280, not 0x3400280).
1998-06-18 18:43:11 +00:00
Frank Ch. Eigler
5630c289dc
* Adapt to changed R5900 SQC2 opcode.
...
Thu Jun 18 17:48:01 1998 Frank Ch. Eigler <fche@cygnus.com>
* mips.igen (SDC2): Removed R5900 alternative.
* r5900.igen (SQC2): Updated bit pattern to
match changed R5900 specs.
1998-06-18 15:11:28 +00:00
release
c773c22617
fix sanitization; add t-ldl.s t-ldr.s t-lwl.s t-lwr.s t-sdr.s t-sub.s t-swl.s t-swr.s
1998-06-18 06:52:03 +00:00
Patrick Macdonald
be53145e44
* second phase of the --sky-debug, --sky-debug-file stuff
...
* only outstanding issue is vu0/vu1 to file (phase 3_
* please see ChangeLog.sky for complete details
1998-06-18 00:28:06 +00:00
Jeff Law
7c8a2969e6
* simops.c (syscall): Handle change in opcode # for syscall.
...
* mn10300.igen (syscall): Likewise.
1998-06-18 00:03:00 +00:00
Patrick Macdonald
c0e7453d60
* sky-pke.h: PKE_REG_SET_MASK / PKE_MEM_WRITE macros updated
...
to check/open the debug trace file
1998-06-17 14:54:11 +00:00
Andrew Cagney
67574b9cea
Re-do sim-inline's handling of external functions and variables so
...
that there really is only one instance of them.
1998-06-17 07:42:53 +00:00
Jillian Ye
419997a6d4
*** empty log message ***
1998-06-16 22:39:28 +00:00
Patrick Macdonald
7159249bbc
* support for the --sky-debug, sky-debug-file options
...
* support for the --log, --log-file options
* GIF disassembly
* please view ChangeLog.Sky for details
1998-06-16 21:02:33 +00:00
Ron Unrau
2905d173c5
* sky-pke.c(read_pke_pc): return source address of current pc
...
* sky-pke.c(read_pke_pcx): return index of current pc
* sky-pke.h: export read_pke_pcx
* interp.c(sim_fetch_registers): read pke pc/pcx
* sky-libvpe.c: track name change from GDB
* sim-main.h: add vif memory based pc
- extend gdb comm area for fifo breakpoints
- define SIM_ENGINE_RESTART_HOOK
* sky-gdb.c: add support for VIF breakpoints
1998-06-16 20:30:20 +00:00
Jillian Ye
d80e0c96ef
*** empty log message ***
1998-06-16 19:47:31 +00:00
Frank Ch. Eigler
702968c54b
* ECC (tx39) and sky changes.
...
[ChangeLog]
start-sanitize-tx3904
Tue Jun 16 14:39:00 1998 Frank Ch. Eigler <fche@cygnus.com>
* dv-tx3904tmr.c: Deschedule timer event after dispatching.
Reduce unnecessarily high timer event frequency.
* dv-tx3904cpu.c: Ditto for interrupt event.
end-sanitize-tx3904
start-sanitize-sky
Tue Jun 16 14:12:09 1998 Frank Ch. Eigler <fche@cygnus.com>
* interp.c (decode_coproc): Removed COP2 branches.
* r5900.igen: Moved COP2 branch instructions here.
* mips.igen: Restricted COPz == COP2 bit pattern to
exclude COP2 branches.
end-sanitize-sky
1998-06-16 18:13:47 +00:00
James Lemke
1106213c56
Fix unresolved external error for sky_cpcond0 on non-SKY builds.
1998-06-16 18:13:46 +00:00
Frank Ch. Eigler
a2d12e4971
* sky testsuite fixes
...
Tue Jun 16 09:03:37 1998 Frank Ch. Eigler <fche@cygnus.com>
* t-cop2.s: Reorder instruction blocks to prevent "Out of bounds"
messages during test execution. Added dummy branch labels for BC2*
instructions.
* t-cop2.brn: Use --sky-debug option instead of env var.
* t-cop2.vuexpect: Updated for with new disassembly format.
* sky_sce_fast.exp: Don't compare GIF outputs for
--float-type=fast.
* sce_test{17,33,49}.dvpasm: Use ".DmaPackVif 1" option to
exercise assembler / PKE.
* rw-vureg.c: Cast memcpy operand to allay warning.
1998-06-16 16:53:49 +00:00
Doug Evans
1a1f786125
cangelog entries moved here from sim/sky/ChangeLog
1998-06-16 16:53:48 +00:00
Ian Carmichael
8ea23ea4bb
* Implement remaining bits in VPU_STAT, CMSAR0, CMSAR1, FBRST. Fix COP2 interface
...
* to VI registers (CFC2/CTC2).
*
* Modified Files:
* ChangeLog.sky interp.c sim-main.c sky-pke.h sky-vu.c sky-vu.h
1998-06-16 16:02:04 +00:00
Joyce Janczyn
f14defcc75
Tue June 16 09:36:21 1998 Joyce Janczyn <janczyn@cygnus.com>
...
* dv-mn103int.c (mn103int_finish): Regular interrupts (not NMI or
reset) are not enabled on reset.
1998-06-16 13:43:34 +00:00
James Lemke
05faca8731
Implement CPCOND0 and insns BC0F/BC0FL/BC0T/BC0TL.
1998-06-15 17:36:23 +00:00
Joyce Janczyn
2a62f119fa
Updates to dv-mn103iop.c, dv-mn103ser.c and inter.c
1998-06-14 21:19:53 +00:00
Ron Unrau
f083fff397
* sky-engine.c: Set ordering of device issues to match enumerated type
...
txvu_cpu_context (sim-main.h tm-txvu.h). This also allowed the issue
structure to be simplified to an array of functions.
1998-06-14 17:01:02 +00:00
Doug Evans
b4cbaee405
* m32r-sim.h (M32R_MISC_PROFILE): New members insn_cycles, cti_stall,
...
load_stall,biggest_cycles.
* m32r.c (m32r_model_mark_get_h_gr): Update.
(m32r_model_init_insn_cycles,m32r_model_update_insn_cycles): New fns.
(m32r_model_record_cti,m32r_model_record_cycles): New functions.
* mloop.in: Call cycle init/update fns.
* model.c: Regenerate.
* m32rx.c (m32rx_model_mark_get_h_gr): Update.
* mloopx.in: Call cycle init/update fns.
* modelx.c: Regenerate.
1998-06-13 14:56:28 +00:00
Doug Evans
403bed787e
* cgen-trace.c (trace_insn_fini): Redo cycle handling.
...
* sim-profile.h (PROFILE_DATA): Rename cycle handling members.
* sim-profile.c (profile_print_model): Update.
1998-06-13 14:47:51 +00:00
Doug Evans
af2b0c8593
* gennltvals.def (m32r): Use common syscall.h now.
...
(mn10300): Add entry.
* nltvals.def: Regenerate.
1998-06-13 01:39:44 +00:00
Joyce Janczyn
55a7ce4ea8
Fri June 12 16:24:00 1998 Joyce Janczyn <janczyn@cygnus.com>
...
* dv-mn103iop.c: New file for handling am32 io ports.
* configure.in: Add mn103iop to hw_device list.
* configure: Re-generate.
* interp.c (sim_open): Create io port device.
1998-06-12 20:46:23 +00:00
Joyce Janczyn
199cb74149
Add dv-mn103iop.
1998-06-12 20:15:43 +00:00
Doug Evans
68096722d9
* sim-engine.c (sim_engine_get_run_state): New function.
...
* sim-engine.h (sim_engine_get_run_state): Declare it.
1998-06-12 20:08:50 +00:00
Joyce Janczyn
64d4b21972
New file for handling mn1030002 io ports.
1998-06-12 20:07:33 +00:00
Joyce Janczyn
c7dd0ea6bc
Add dv-mn103iop.c to list of files to sanitize out.
1998-06-12 20:05:08 +00:00
Patrick Macdonald
ff94f10401
* interp.c: added call to sky_command_options_end() to close
...
any open file handles before exiting
* sky-gpuif.[c|h]: add disassembly on the fly code, log and log
file option support
* sky-gdb.[c|h] (sky_command_options_close()): new function, added
some body to the log and log file option sections
1998-06-12 18:58:26 +00:00
Doug Evans
1be932424c
* Makefile.in (stamp-{arch,cpu,decode}): Pass CGEN_FLAGS_TO_PASS
...
to recursive makes.
(stamp-{xcpu,xdecode}): Ditto.
1998-06-12 06:40:41 +00:00
Doug Evans
b8f9289f19
* lib/sim-defs.exp (sim_run): Argument env_vals renamed to options,
...
which is now a list of options controlling the behaviour of sim_run.
* sim/sky/sky-defs.tcl (run_trc_test): Update to new way of
environment variables to sim_run.
1998-06-12 01:08:57 +00:00
Doug Evans
2a62c9b87b
* lib/sim-defs.exp (sim_run): Argument env_vals renamed to options,
...
which is now a list of options controlling the behaviour of sim_run.
1998-06-12 01:08:26 +00:00
Doug Evans
bee3033d5a
* sim/sky/sky-defs.tcl (run_brn_test): Fix handling of dvpasm_flags.
1998-06-11 22:52:40 +00:00
Doug Evans
cfedac2213
* sim/sky/sky-defs.tcl (run_brn_test): Fix `options' arg to
...
sim_compile.
1998-06-11 22:50:51 +00:00
Doug Evans
42d9651198
(sim_compile): Tweak output text.
1998-06-11 22:49:25 +00:00
Doug Evans
21ba2ab4c6
* sim/sky/vu.h (VU0_MEM1_WINDOW_START): New macro.
...
(VU0_MEM1_SIZE): New macro.
1998-06-11 22:28:03 +00:00
Doug Evans
072ba14861
* sim/sky/vu01reg-main.c: New file.
...
* sim/sky/vu01reg.dvpasm: New file.
* sim/sky/vu01reg.brn: New file.
1998-06-11 22:27:01 +00:00
Frank Ch. Eigler
95caab7df2
* Moving some sky-specific ChangeLog entries into ChangeLog.sky
1998-06-11 13:50:28 +00:00
Doug Evans
169c74762a
* sim-core.h (SIM_CORE_SIGNAL_FN): New typedef.
...
* sim-core.c (sim_core_signal): Make extern, always define.
1998-06-11 07:55:29 +00:00
Doug Evans
a28ad776ad
Regenerate, gets a_m32r_trap -> m32r_trap renaming.
1998-06-11 01:19:28 +00:00
Doug Evans
83e4ce8df2
* m32r-sim.h (m32r_trap): Declare.
1998-06-11 01:18:13 +00:00
Doug Evans
496cf06b76
* Makefile.in (SIM_OBJS): Add traps.o
1998-06-11 01:06:05 +00:00
Doug Evans
7e92721894
* traps.c: New file. Trap support moved here from sim-if.c.
...
* Makefile.in (SIM_OBJS): Add traps.o
* sim-if.c: Don't include targ-vals.h.
(sim_engine_illegal_insn): Moved to traps.c
* sim-main.h (SIM_CORE_SIGNAL): Define.
(m32r_core_signal): Declare.
* devices.c (device_io_read_buffer): Handle cache purging via MCCR
register.
* m32r-sim.h (M32R_MISC_PROFILE): Move here from sim-main.h.
(PROFILE_COUNT_SHORTINSNS,PROFILE_COUNT_LONGINSNS): New macros.
(TRAP_SYSCALL,TRAP_BREAKPOINT): New macros.
1998-06-11 01:05:21 +00:00
Doug Evans
a040908c40
Regenerate. Updates from cgen for better VoidMode handling.
1998-06-11 01:04:47 +00:00
Doug Evans
a27a2a8de4
* Make-common.in (CGEN_FLAGS_TO_PASS): New variable.
...
* cgen-ops.h (ANDIF): New macro.
(ANDIF[BQHSD]I): Delete.
1998-06-10 23:03:55 +00:00
Joyce Janczyn
8c2de2aa33
Wed June 10 14:34:00 1998 Joyce Janczyn <janczyn@cygnus.com>
...
* dv-mn103int.c (external_group): Use enumerated types to access
correct group addresses.
* dv-mn103tim.c (do_counter_event): Underflow of cascaded timer
triggers an interrupt on the higher-numbered timer's port.
1998-06-10 18:47:09 +00:00
Frank Ch. Eigler
f337710aff
* SKY hardware interrupt tests.
...
Wed Jun 10 15:56:10 1998 Frank Ch. Eigler <fche@cygnus.com>
* sim/sky/t-int.c: New file to test sky hardware
interrupts.
* sim/sky/t-int-handler.s: New file for null interrupt
handler.
* sim/sky/t-int.brn: New file to build new test.
1998-06-10 17:56:19 +00:00
Doug Evans
f3c7eb69df
* sim/m32r/addx.cgs: Add another test.
...
* sim/m32r/jmp.cgs: Add another test.
* sim/m32r/bra8-2.cgs: New testcase.
* sim/m32r/hello.ms: Run on m32rx too.
1998-06-10 17:56:18 +00:00
Frank Ch. Eigler
b879096335
* Support for sky hardware interrupts. The sky-dma cannot trigger
...
interrupts properly yet (jlemke TODO).
Wed Jun 10 13:22:32 1998 Frank Ch. Eigler <fche@cygnus.com>
* interp.c (decode_coproc): For TX39, add stub COP0 register #7 ,
to allay warnings.
(interrupt_event): Made non-static.
start-sanitize-tx3904
* dv-tx3904tmr.c (deliver_tx3904tmr_tick): Correct accidental
interchange of configuration values for external vs. internal
clock dividers.
end-sanitize-tx3904
start-sanitize-sky
* sky-device.c (sky_signal_interrupt): New function to generate
interrupt event.
* sky-device.h: Declare it.
* sky-dma.c (check_int1): Call it.
* sky-pke.c (pke_begin_interrupt_stall): Call it.
end-sanitize-sky
1998-06-10 17:07:10 +00:00
Patrick Macdonald
a4377bf7bd
* Updated several files to place all sky specific runtime options
...
in sky-gdb.c.
* Added two new runtime options --sky-debug and --screen-refresh
* ChangeLog.sky contains a detailed description of the mods
1998-06-10 17:07:09 +00:00
Frank Ch. Eigler
e1b5df344e
* Typo fix for tx3904tmr use of configuration parameters.
...
(ChangeLog entry coming later.)
1998-06-10 08:58:42 +00:00
Ian Carmichael
0001bce1f8
* Handle 10 and 20-bit versions of Break instruction. Move handling
...
* of special values from signal_exception() in interp.c into mips.igen.
*
* Modified: ChangeLog gencode.c interp.c mips.igen sim-main.h
1998-06-09 22:11:24 +00:00
Frank Ch. Eigler
cc9bc93202
* Updates to tx3904 peripheral simulations for ECC.
...
Tue Jun 9 12:29:50 1998 Frank Ch. Eigler <fche@cygnus.com>
* dv-tx3904cpu.c (deliver_*_interrupt,*_port_event): Set the CAUSE
register upon non-zero interrupt event level, clear upon zero
event value.
* dv-tx3904irc.c (*_port_event): Handle deactivated interrupt signal
by passing zero event value.
(*_io_{read,write}_buffer): Endianness fixes.
* dv-tx3904tmr.c (*_io_{read,write}_buffer): Endianness fixes.
(deliver_*_tick): Reduce sim event interval to 75% of count interval.
* interp.c (sim_open): Added jmr3904pal board type that adds PAL-based
serial I/O and timer module at base address 0xFFFF0000.
1998-06-09 16:54:09 +00:00
Ian Carmichael
895a7dc2aa
* Handle 10 and 20-bit versions of Break instruction. Move handling
...
* of special values from signal_exception() in interp.c into mips.igen.
*
* Modified: gencode.c interp.c mips.igen sim-main.h
1998-06-09 16:54:08 +00:00
Doug Evans
5724515d03
* sim/sky/dma.h: New file.
...
* sim/sky/vif.h: New file.
* sim/sky/vu.h: New file.
* sim/sky/sce_main.c: Move magic numbers to .h files.
1998-06-09 16:01:59 +00:00
James Lemke
a77734aa1e
sky.ld: Remove big endian stuff in OUTPUT_FORMAT
1998-06-09 15:55:49 +00:00
Gavin Romig-Koch
2b5d87dfa4
* mips.igen (SWC1) : Correct the handling of ReverseEndian
...
and BigEndianCPU.
1998-06-09 15:54:05 +00:00
Gavin Romig-Koch
55ad270f9a
* configure.in (mips_fpu_bitsize) : Set this correctly for 32-bit mips
...
parts.
* configure: Update.
1998-06-09 15:42:04 +00:00
Doug Evans
cacc867752
* sim/m32r/trap.cgs: Test trap 2.
1998-06-08 23:09:54 +00:00
Doug Evans
02c6148370
Test trap 2.
1998-06-08 23:08:49 +00:00
Joyce Janczyn
3d64946ded
Support for timers for mn103002. Still needs more testing/debugging.
1998-06-08 21:57:42 +00:00
David Taylor
e62b6fed2a
add test to verify that changes made to the PSW in-parallel-with a trap
...
instruction end up in the bPSW and not in the PSW. (PR 16026).
1998-06-08 19:18:21 +00:00
Joyce Janczyn
d38f2372a0
Add dv-mn103tim.c and dv-mn103ser.c
1998-06-08 18:09:40 +00:00
Joyce Janczyn
d3f76d42ac
Add timer and serial devices (mn103tim and mn103ser), support
...
--board=am32 for runtime control of device simulation, and adjust
interrupt settings to support am32 instead of am30.
1998-06-08 17:46:25 +00:00
Joyce Janczyn
7cb5d42660
Skeleton file for mn1030002 serial device implementation.
1998-06-08 17:34:04 +00:00
Joyce Janczyn
5f69de151a
Fix typo.
1998-06-08 17:28:08 +00:00
Joyce Janczyn
7146013910
Fix interrupt settings for mn103002, not mn10300 implementation.
1998-06-08 17:27:10 +00:00
Joyce Janczyn
6adf5185c1
* interp.c: (mn10300_option_handler): New function parses arguments
...
using sim-options.
start-sanitize-am30
* (board): Add --board option for specifying am32.
* (sim_open): Create new timer and serial devices and control
configuration of other am32 devices via board option.
end-sanitize-am30
1998-06-08 17:23:11 +00:00
Joyce Janczyn
7f1e9a13b2
Add new devices: mn103tim and mn103ser.
1998-06-08 17:18:02 +00:00
James Lemke
037f29c526
Added support for the VU insn D (debug) & T (trace) bits.
1998-06-04 20:50:55 +00:00
Frank Ch. Eigler
da040f2a6c
* Early check-in of tx3904 timer sim implementation for ECC.
...
It is not yet properly tested.
Thu Jun 4 15:37:33 1998 Frank Ch. Eigler <fche@cygnus.com>
* dv-tx3904tmr.c: New file - implements tx3904 timer.
* dv-tx3904{irc,cpu}.c: Mild reformatting.
* configure.in: Include tx3904tmr in hw_device list.
* configure: Rebuilt.
* interp.c (sim_open): Instantiate three timer instances.
Fix address typo of tx3904irc instance.
1998-06-04 12:43:45 +00:00
Andrew Cagney
0e797366ef
The r5900 doesn't have HI/LO DIV/MUL register problems. Hobble
...
checks on hi/lo usage but retain functions so that they can be used
for HI/LO stall counting code.
1998-06-04 08:46:56 +00:00
Andrew Cagney
05f6bf9cea
Memory corruption problems - hw-event list wasn't correct
...
unlinking/freeing events. Couldn't handle the removal of a hw-event
that just been scheduled.
1998-06-04 06:33:02 +00:00
Mark Alexander
7d146b765c
* interf.c (sim_open): Use revamped memory_read, which makes
...
byte-swapping unnecessary. Add -sparclite-board option for
emulating RAM found on typical SPARClite boards. Print
error message for unrecognized option.
* erc32.c: Change RAM address and size from constants to variables,
to allow emulation of SPARClite board RAM.
(fetch_bytes, store_bytes): New helper functions for revamped
mememory_read and memory_write.
(memory_read, memory_write): Rewrite to store bytes in target
byte order instead of storing words in host byte order; this
greatly simplifies support of little-endian programs.
(get_mem_ptr): Remove unnecessary byte parameter.
(sis_memory_write, sis_memory_read): Store words in target
byte order instead of host byte order.
(byte_swap_words): Remove, no longer needed.
* sis.h ((byte_swap_words): Remove declaration, no longer needed.
(memory_read): Add new sz parameter.
* sis.c (run_sim): Use revamped memory_read, which makes
byte-swapping unnecessary.
* exec.c (dispatch_instruction): Use revamped memory_read, which
makes byte-swapping and double-word fetching unnecessary.
* func.c (sparclite_board): Declare new variable.
(get_regi): Handle little-endian data.
(bfd_load): Recognize little-endian SPARClite as having
little-endian data.
1998-06-02 22:43:46 +00:00
Nick Clifton
e3ace30a61
Allow simulator to work with Angel SWIs.
1998-06-02 22:23:52 +00:00
Ian Carmichael
4979c0a271
* Move the sanitize comments to the right place.
1998-06-02 21:04:49 +00:00
Ian Carmichael
8e3a0b599f
* SYSCALL now uses exception vector.
...
* SKY: New memory mapping rules for k1seg, k0seg.
* Modified Files: ChangeLog.sky ChangeLog interp.c sim-main.c
1998-06-02 19:53:36 +00:00
Jason Molenda
7d449b448b
Mon Jun 1 17:14:19 1998 Anthony Thompson (athompso@cambridge.arm.com)
...
* armos.c (ARMul_OSHandleSWI::SWI_Open): Handle special case
of ":tt" to catch stdin in addition to stdout.
(ARMul_OSHandleSWI::SWI_Seek): Return 0 or 1 to indicate failure
or success of lseek().
From PR 15839, modified a bit by me to appease my sense of style--but
not too much because I am lazy.
1998-06-02 00:18:31 +00:00
Frank Ch. Eigler
29b5afe9af
* Small TX39-only patch for ECC.
...
Mon Jun 1 18:18:26 1998 Frank Ch. Eigler <fche@cygnus.com>
* interp.c (decode_coproc): For TX39, add stub COP0 register #3 ,
to allay warnings.
1998-06-01 16:29:43 +00:00
Jeff Law
fb0ea2b9e1
* r5900.igen (rsqrt.s): Update based on r5900 ISA manual version 2.1.
...
(sqrt.s): Likewise.
1998-06-01 16:29:42 +00:00
Frank Ch. Eigler
22134bdb43
* sky test suite fixes.
...
Mon Jun 1 18:54:22 1998 Frank Ch. Eigler <fche@cygnus.com>
* lib/sim-defs.exp (sim_run): Add possible environment variable
list to simulator run.
start-sanitize-sky
* sim/sky/sky-defs.tcl: Use it.
* sim/sky/t-pke2.vif1out: Update to match recent word-precise
tracking table change in sim/mips/sky-pke.c.
* sim/sky/t-pke3.trc: Ditto.
* sim/sky/t-pke4.vif0expect: Ditto.
end-sanitize-sky
Mon May 18 10:37:47 1998 Doug Evans <devans@canuck.cygnus.com>
1998-06-01 16:09:52 +00:00
Andrew Cagney
df26156d68
Match mips*tx39 not mipst*tx39.
1998-05-29 01:42:20 +00:00
Andrew Cagney
451a9c0587
Pull in preliminary versions of hw instances and handles from ../ppc
1998-05-25 11:33:28 +00:00
Andrew Cagney
48f83b1a2e
Make hw-main.h the main header file for H/W devices. Like sim-main.h
...
Update dv-*.c
Replace *_callback with more correct. *_method. Update dv-*.c
1998-05-25 11:06:29 +00:00
Andrew Cagney
c14db36dbb
Add files hw-alloc.[hc] (mising from last CI)
...
Move set_* macro's from hw-base to hw-device.
1998-05-25 08:50:22 +00:00
Andrew Cagney
325a1ba876
Initialize/destory hw-properties within the hw-device.
1998-05-25 08:29:05 +00:00
Andrew Cagney
69be0d4cb8
Split out hw-alloc code. Add constructor and destructor for hw-alloc.
1998-05-25 08:18:03 +00:00
Andrew Cagney
39e953a722
Split out hw-event code. Clean up interface. Update all users.
1998-05-25 07:37:30 +00:00
Andrew Cagney
2f06c437e2
Clean up create/delete of hw-ports
1998-05-25 07:08:48 +00:00
Andrew Cagney
f675744718
* hw-device.c (hw_ioctl), hw-device.h (hw_ioctl_callback): Drop
...
PROCESSOR and CIA arguments.
1998-05-25 06:44:39 +00:00
Andrew Cagney
1e1dcdf0d9
De-sanitize simulator hw.
1998-05-25 06:20:43 +00:00
Andrew Cagney
ce82378189
Fix mips SWL on 64bit ISA when 32 bit word appears in second half of
...
64 bit bus.
Test.
1998-05-25 05:48:34 +00:00
Ron Unrau
aa81c3ca99
* Initial support for "sim list vif[01]"
1998-05-24 13:06:09 +00:00
Andrew Cagney
f872d0d643
Only enable H/W on some mips targets.
...
Move common hw-obj to Make-common
Pacify GCC
1998-05-22 05:23:04 +00:00
Andrew Cagney
32d41f6ddb
Sanity clause
1998-05-22 02:08:26 +00:00
Andrew Cagney
56833aba59
Back out of hw-main _callback -> _descriptor changes
1998-05-22 01:12:06 +00:00
Gavin Romig-Koch
5e34097b8b
gencode.c: Mark BEGEZALL as LIKELY.
1998-05-21 18:26:38 +00:00
Patrick Macdonald
fab0ee0d0b
* interp.c: modified name of GIF device
...
* sky-gpuif.[ch]: IMT burst support and queue manipulation ( see
ChangeLog.sky for complete details )
* sky-gs.c: modified name of GIF device
1998-05-21 15:41:35 +00:00
Andrew Cagney
26feb3a83d
Fix sign extension on 32 bit add/sub instructions.
1998-05-21 09:32:07 +00:00
Andrew Cagney
8404825993
* interp.c (sim_fetch_register): Convert internal r5900 regs to
...
target byte order
1998-05-21 08:18:21 +00:00
Andrew Cagney
643878d017
* sim-hw.c: Include ctype.h.
...
(do_hw_poll_read): Do not assume EAGAIN.
1998-05-21 08:17:31 +00:00
Jillian Ye
e0459470a9
c_gen.pl: Added subroutine "print_comment"
...
and on/off option for "src line #"
1998-05-20 22:14:16 +00:00
Doug Evans
66f1864d7e
* m32r-sim.h (PROFILE_COUNT_PARINSNS): New macro.
...
* mloopx.in (extract): Set abuf.addr for proper fill nop counting.
(execute): Count parallel insns.
* sim-if.c (print_m32r_misc_cpu): Print count.
* sim-main.h (M32R_MISC_PROFILE): New member parallel_count.
1998-05-20 11:59:32 +00:00
Doug Evans
6f7833f035
* cgen-trace.c (first_insn_p): New static local.
...
(trace_insn_init): Set it.
(trace_insn_fini): Use TRACE_PREFIX.
(trace_insn): Rewrite to use trace_prefix.
* sim-trace.c (trace_prefix): Don't print filename arg if NULL.
Adjust width accordingly.
* sim-profile.h (PROFILE_DATA): New member profile_any_p.
(PROFILE_ANY_P,PROFILE_INSN_P,PROFILE_MEMORY): New macros.
(PROFILE_SCACHE_P,PROFILE_PC_P,PROFILE_CORE_P): New macros.
(PROFILE_COUNT_INSN,PROFILE_COUNT_READ,PROFILE_COUNT_WRITE): Simplify.
(PROFILE_COUNT_CORE): Simplify.
* sim-profile.c (profile_option_handler): Compute profile_any_p.
1998-05-20 11:43:00 +00:00
Doug Evans
6ebf4a9559
Zero bottom two bits of pc in jmp,jl insns.
...
* sem.c,sem-switch.c: Regenerate.
* semx.c: Regenerate.
1998-05-20 07:54:31 +00:00
Doug Evans
6f1cadd0ce
* cgen-ops.h (ADDCFSI): Fix typo.
1998-05-20 07:01:05 +00:00
Doug Evans
f99354d0c0
* sim-if.c (do_trap): Treat traps 2-15 as hardware does.
1998-05-19 23:52:23 +00:00
Doug Evans
496b3694af
* sim/sky/sky.ld: Delete file.
1998-05-18 17:38:48 +00:00
Frank Ch. Eigler
3fa454e95f
* Monster patch - may destablize MIPS sims for a little while.
...
* Followup patch for SCEI PR 15853
* First check-in of TX3904 interrupt controller devices for ECC. [sanitized]
* First implementation of MIPS hardware interrupt emulation.
Mon May 18 18:22:42 1998 Frank Ch. Eigler <fche@cygnus.com>
* configure.in (SIM_AC_OPTION_HARDWARE): Added common hardware
modules. Recognize TX39 target with "mips*tx39" pattern.
* configure: Rebuilt.
* sim-main.h (*): Added many macros defining bits in
TX39 control registers.
(SignalInterrupt): Send actual PC instead of NULL.
(SignalNMIReset): New exception type.
* interp.c (board): New variable for future use to identify
a particular board being simulated.
(mips_option_handler,mips_options): Added "--board" option.
(interrupt_event): Send actual PC.
(sim_open): Make memory layout conditional on board setting.
(signal_exception): Initial implementation of hardware interrupt
handling. Accept another break instruction variant for simulator
exit.
(decode_coproc): Implement RFE instruction for TX39.
(mips.igen): Decode RFE instruction as such.
start-sanitize-tx3904
* configure.in (tx3904cpu,tx3904irc): Added devices for tx3904.
* interp.c: Define "jmr3904" and "jmr3904debug" board types and
bbegin to implement memory map.
* dv-tx3904cpu.c: New file.
* dv-tx3904irc.c: New file.
end-sanitize-tx3904
1998-05-18 15:55:05 +00:00
Doug Evans
991238c82b
* cgen-sim.h (CGEN_CPU): New members idesc_{read,sem}_init_p.
...
* genmloop.sh: Use them rather than static locals.
1998-05-17 00:50:07 +00:00
Doug Evans
17f382c9bf
* erc32.c (close_port): Don't close stdin; it kills GDB.
...
(byte_swap_words): New function.
* sis.h: (byte_swap_words): Declare.
* interf.c (run_sim): Always fetch instructions as big-endian.
* sis.c (run_sim): Ditto.
Move this c/l entry from ../ChangeLog.
1998-05-16 23:07:01 +00:00
Doug Evans
5f4c24c024
* sim-if.c (sim_stop): Update call to @cpu@_engine_stop.
...
(sim_sync_stop): New function.
1998-05-16 20:11:41 +00:00
Doug Evans
ebd58f4dde
* sim-engine.c (sim_engine_set_run_state): New function.
...
* sim-engine.h (sim_engine_set_run_state): Declare.
* genmloop.sh (pending_reason,pending_sigrc): New static locals.
(@cpu@_engine_stop): New args reason,sigrc. All callers updated.
(engine_resume): Reorganize. Allow synchronous exit from main loop.
1998-05-16 19:51:12 +00:00
Doug Evans
882d99e4b6
* sim/m32r/allinsn.exp: Pass --m32rx-enable-special to gas.
...
* sim/m32r/misc.exp: Ditto.
1998-05-16 00:32:09 +00:00
Doug Evans
a8981d6751
* Makefile.in (devices.o): Add dependencies.
...
* 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-15 23:46:24 +00:00
Doug Evans
bcb829fdbd
* cgen-trace.c (trace_insn_init): New arg first_p.
...
All callers updated.
(trace_insn_fini): New arg last_p. All callers updated.
* cgen-trace.h (trace_insn_init,trace_insn_fini): Update.
(TRACE_INSN_INIT,TRACE_INSN_FINI): Update.
* genmloop.sh (engine_resume): Update.
1998-05-15 23:31:22 +00:00
Joyce Janczyn
6cad239558
Run ranlib on installed copy of libsim.a.
1998-05-15 20:06:08 +00:00
Joyce Janczyn
08bae91baa
Install libsim.a $(exec_prefix)/lib/lib[target]-sim.a as part of install-sim.
1998-05-15 19:05:28 +00:00
Mark Alexander
f1a0162a28
* sis.h (uint64, int64): Define.
...
* exec.c (SDIV, SDIVCC, UDIV, UDIVCC): Define new opcodes.
* (mul64): Simplify calculation of negative result.
* (div64): New helper function for 64-bit division.
* (dispatch_instruction): Add emulation of SDIV, SDIVCC, UDIV,
and UDIVCC.
1998-05-15 06:23:04 +00:00
Doug Evans
02a0ec918f
Tweak last entry.
1998-05-15 00:49:37 +00:00
Doug Evans
90ef07f2e5
* config/default.exp (CC,SIM): Delete.
...
* sky-defs.tcl (LDSCRIPT,SIM): Delete.
(run_trc_test): Use sim_compile, sim_run. Only delete temp files
if testcase passed.
(run_brn_test): Ditto.
1998-05-15 00:49:24 +00:00
Doug Evans
1461afc634
* sim/sky/sky.exp: Add runtest_file_p support. Don't print
...
unsupported message if not sky.
* sim/sky/sky_sce.exp: Likewise.
1998-05-14 20:20:59 +00:00
Doug Evans
41ab9a4b7e
* lib/sim-defs.exp (sim_run): Fix handling of output redirection.
...
New arg prog_opts. All callers updated.
1998-05-14 18:50:37 +00:00
Andrew Cagney
3e8c1f2e16
More test cases.
1998-05-14 08:15:05 +00:00
Gavin Romig-Koch
7d2c0e8c97
* r5900.igen: Replace the calls and the definition of the
...
function check_op_hilo_hi1lo1 with the pair
check_mult_hilo_hi1lo1 and check_mult_hilo_hi1lo1.
1998-05-13 18:30:15 +00:00
Gavin Romig-Koch
afc5e7f23a
* tx.igen (madd,maddu): Replace calls to check_op_hilo
...
with calls to check_div_hilo.
1998-05-13 18:14:09 +00:00
Gavin Romig-Koch
94dda41a0c
* mips/mips.igen (check_op_hilo,check_mult_hilo,check_div_hilo):
...
Replace check_op_hilo with check_mult_hilo and check_div_hilo.
Add special r3900 version of do_mult_hilo.
(do_dmultx,do_mult,do_multu): Replace calls to check_op_hilo
with calls to check_mult_hilo.
(do_ddiv,do_ddivu,do_div,do_divu): Replace calls to check_op_hilo
with calls to check_div_hilo.
1998-05-13 14:00:56 +00:00
Andrew Cagney
1a89994e08
* configure.in (SUBTARGET_R3900): Define for mipstx39 target.
...
Document a replacement.
1998-05-12 05:36:47 +00:00
Frank Ch. Eigler
24abdc9d31
* Fixing typo that caused infinite loop upon PKE MPG.
1998-05-11 16:15:22 +00:00
Doug Evans
801354e772
* lib/sim-defs.exp (sim_version): Simplify.
...
(sim_run): Implement.
(run_sim_test): Use sim_run.
(sim_compile): New proc.
1998-05-08 21:42:49 +00:00
Patrick Macdonald
55470cc7ef
* Roll Alpha modifications into devo for sky-gpuif*/ sky-gs*/ interp.c
...
* Complete and informative details can be found in ChangeLog.sky
1998-05-07 19:14:28 +00:00
Frank Ch. Eigler
a1d609b4fe
* Changes to sky PKE sim to calculate word-precision source-addresses
...
for VU memory tracking tables.
Thu May 7 12:15:41 1998 Frank Ch. Eigler <fche@cygnus.com>
* sky-pke.c (pke_pcrel_operand_bits): Compute word-resolution
source address for UNPACK into VU MEM.
(pke_code_mpg): Ditto for MPG into VU uMEM.
1998-05-07 17:50:18 +00:00
Frank Ch. Eigler
53307c2301
* Finish dropping sim/txvu directory.
1998-05-07 14:39:08 +00:00
Ron Unrau
c939ffeb80
Initial Breakpoint support:
...
* sim-main.h: (struct _sim_cpu): add cur_device field.
Define cur_device values, breakpoint value, and SIM_ENGINE_HALT_HOOK
* interp.c (sim_open): initialize cur_device
* sky-engine.c (engine_run): use cur_device to set current_cpu
* sky-libvpe.c (vpecallms_cycle): add check for breakpoint
* sky-hardware.h: delete NUMBER_CPUS
* sky-hardware.c (attach_devices): create a memory mapped comm
area for GDB/SIM interactions
misc:
* sky-vu.c ({read,write}_vu_misc_reg): do default behavior for
unknown regs instead of sim_io_error. MP reg is float (was missing
cast).
1998-05-07 14:36:42 +00:00
Doug Evans
eb00d70698
* sim-main.h (INSN_NAME): New arg `cpu'.
1998-05-07 02:45:07 +00:00
Doug Evans
433a8eafaa
* Make-common (sim_main_headers): Sort.
...
(cgen-*.o): Add cgen-sim.h dependency.
* sim-cpu.h: New file. sim_cpu_base moved here.
Move sim_cpu_lookup decl here.
* sim-base.h: #include "sim-cpu.h".
* sim-cpu.c: New file.
* Make-common (sim_main_headers): Add sim-cpu.h.
(sim-cpu.o): Add rule for.
1998-05-07 02:08:05 +00:00
Doug Evans
d9fbbdfaa3
lotsa stuff, see ChangeLog
1998-05-06 22:39:35 +00:00