Commit graph

745 commits

Author SHA1 Message Date
David Edelsohn
710f55ce8a Keep sim-config.c, sim-fpu.[ch]. 1997-05-06 21:19:41 +00:00
Jeff Law
8def922034 * mn10300_sim.h: Fix ordering of bits in the PSW. 1997-05-06 19:42:17 +00:00
Michael Meissner
1ec53ef597 Remove extra : from nop, sink{1,2} tracing 1997-05-06 19:33:51 +00:00
Michael Meissner
7b167b0900 Add semantic tracing to the tic80 1997-05-06 19:27:57 +00:00
Jeff Law
baa83bcc80 * interp.c: Improve hashing routine to avoid long list
traversals for common instructions.  Add HASH_STAT support.
        Rewrite opcode dispatch code using a big switch instead of
        cascaded if/else statements.  Avoid useless calls to load_mem.
1997-05-06 19:27:22 +00:00
David Edelsohn
f4749781f9 Keep sim-utils.h. 1997-05-06 17:09:05 +00:00
Michael Meissner
d0adfefd44 Fix typo; pass trace_line request as arg; pass common stuff in static struct 1997-05-06 11:55:21 +00:00
Michael Meissner
a77241718f Enable --trace-linenum support 1997-05-06 10:21:57 +00:00
Jeff Law
26e9f63c11 * mn10300_sim.h (struct _state): Add space for mdrq register.
(REG_MDRQ): Define.
        * simops.c: Don't abort for trap.  Add support for the extended
        instructions, "getx", "putx", "mulq", "mulqu", "sat16", "sat24",
        and "bsch".
1997-05-06 00:35:42 +00:00
Michael Meissner
d23af88239 Fix problems -Wall found 1997-05-05 18:16:10 +00:00
Michael Meissner
23b04e791d Add printf attribute support 1997-05-05 18:10:05 +00:00
Andrew Cagney
7a418800c1 Start of implementation of a distributed (between processors)
simulator core object.
1997-05-05 13:21:04 +00:00
Andrew Cagney
3971886ac1 Add flakey floating-point support to the TI c80 simulator. 1997-05-05 12:46:25 +00:00
David Edelsohn
67ae5c9ac9 * decode.c (decode): Add computed goto support. 1997-05-03 15:41:24 +00:00
David Edelsohn
e6a434469b Tweak comment. 1997-05-02 16:51:04 +00:00
Andrew Cagney
1fe052808a Update devo version of m32r sim to build with recent sim/common changes. 1997-05-02 08:41:15 +00:00
Angela Marie Thomas
949fccf66b remove junk files that have been here waaaaaaaay too long 1997-05-02 06:43:07 +00:00
Andrew Cagney
d9b7594738 o Add core and event objects into simulator
base type
o	Add preliminary tracing support for same
o	trace_printf() takes both SD and CPU arguments
o	Add CIA to standard set of parameters for
	generated functions.
o	Pacify GCC
1997-05-02 05:31:34 +00:00
David Edelsohn
2317a49939 * sim-utils.c (sim_add_commas): New function.
* sim-basics.h (sim_add_commas): Add prototype.
	* cgen-scache.c (scache_print_profile): Print commas in numbers.
	* sim-profile.c (COMMAS): New macro.
	(print_*): Use it to print commas in numbers.
1997-05-02 00:32:05 +00:00
David Edelsohn
3e324f89cd cgen-{mem,sem}.h renamed to {mem,sem}-ops.h. 1997-05-01 22:36:34 +00:00
David Edelsohn
646c6f2b83 Merge from branch into devo. CGEN generic files moved to common
directory.  K&R C support is no longer provided.
1997-05-01 22:33:23 +00:00
David Edelsohn
260b2c47c9 * configure: Regenerated.
* cgen-sim.h (sim_signal_type): Add SIM_SIGINT.
	(cgen_state): New member run_fast_p.
	(cgen_init): Add prototype.
	(sim_disassemble_insn): New arg `cpu'.
	* cgen-trace.c (trace_insn): Update call to sim_disassemble_insn.
	* cgen-utils.c (cgen_init): New function.
	(sim_disassemble_insn): New arg `cpu'.  Rewrite fetching of insn.
	* genmloop.sh: Call engine_halt if loop exits.
1997-05-01 20:53:43 +00:00
David Edelsohn
968d32cc40 (cgen-utils.o): Update cgen-{mem,sem}.h dependencies. 1997-05-01 20:43:24 +00:00
David Edelsohn
6475b23404 Sigh. Put generated files with each cgen cpu. 1997-05-01 20:11:00 +00:00
David Edelsohn
c967f1874a * Makefile.in (sim-options_h): Define.
(sim-{module,options,trace,profile,utils}.o): Clean up dependencies.
	(sim-model.o): Add new rule.
	(cgen-{scache,trace,utils}.o): Add new rules.
	* aclocal.m4 (SIM_AC_OPTION_{SCACHE,DEFAULT_MODEL}): Add.
	* cgen-scache.c (scache_print_profile): Change `sd' arg to `cpu'.
	Indent output by 2 spaces.
	* cgen-scache.h (scache_print_profile): Update.
	* cgen-trace.c (trace_insn_fini): Indent output by 2 spaces.
	Use trace_printf, not fprintf.
	(trace_extract): Use trace_printf, not cgen_trace_printf.
	* genmloop.sh (!FAST case): Increment `insn_count'.
	* sim-base.h (sim_state_base): Only include scache_size if WITH_SCACHE.
	(sim_cpu_base): Rename member `sd' to `state' to be consistent with
	access macro's name.
	* sim-core.c (sim_core_init): Use EXTERN_SIM_CORE to define it.
	Change return type to SIM_RC.
	(sim_core_{install,uninstall}): New functions.
	* sim-core.h (sim_core_{install,uninstall}): Declare.
	(sim_core_init): Use EXTERN_SIM_CORE to define it.
	Change return type to SIM_RC.
	* sim-model.h (models,machs,model_install): Declare.
	* sim-module.c (modules): Add scache_install, model_install.
	(sim_post_argv_init): Set cpu->state backlinks.
	* sim-options.c (standard_options): Delete --simcache-size,--max-insns.
	(standard_option_handler): Likewise.
	* sim-profile.c (PROFILE_{HISTOGRAM,LABEL}_WIDTH): Move to
	sim-profile.h.
	(*): Assume ANSI C.
	(profile_options): Delete --profile-simcache.
	(profile_option_handler): Likewise.
	(profile_print_insn): Change `sd' arg to `cpu'.  Indent output 2
	spaces.
	(profile_print_{memory,model}): Likewise.
	(profile_print_simcache): Delete.
	(profile_print_speed): New function.
	(profile_print): Rewrite.
	* sim-profile.h (PROFILE_scache): Renamed from PROFILE_simcache.
	(WITH_PROFILE_SCACHE_P): Renamed from WITH_PROFILE_SIMCACHE_P.
	(PROFILE_DATA): Delete members simcache_{hits,misses}.
	(PROFILE_COUNT_SIMCACHE_{HIT,MISS}): Delete.
	(PROFILE_{CALLBACK,CPU_CALLBACK}): New types.
	(profile_print): Update prototype.
1997-05-01 18:05:37 +00:00
David Edelsohn
2c8f0de695 (EXTRACT_SIGNED,EXTRACT_UNSIGNED,HOST_LONGS_FOR_BITS): Move from
cgen-types.h to cgen-sim.h.
1997-05-01 17:45:25 +00:00
David Edelsohn
b9c8cd1023 * cgen-mem.h, cgen-scache.[ch], cgen-sem.h, cgen-sim.h: New files.
* cgen-trace.[ch], cgen-types.h, cgen-utils.c, genmloop.sh: New files.
	* sim-model.c: New file.
1997-05-01 01:48:27 +00:00
David Edelsohn
717dbb296e * Make-common.in (clean targets): Undo patch of Apr. 22. 1997-04-30 18:35:58 +00:00
David Edelsohn
e280e9ece1 * tconfig.in (SIM_PRE_LOAD): Delete, no longer used. 1997-04-30 17:22:51 +00:00
Andrew Cagney
c1c77d4071 Add Tick shift insn 1997-04-30 08:41:47 +00:00
Andrew Cagney
255925e912 Tidy code gen. 1997-04-30 08:39:51 +00:00
Andrew Cagney
d5e2c74e38 Numerous fixes. 1997-04-29 08:41:15 +00:00
Michael Meissner
564e2a3fe9 Allow simulators to be built on Linux 1997-04-25 19:29:31 +00:00
Andrew Cagney
abe293a0c6 Enable more instructions. 1997-04-24 12:06:27 +00:00
David Edelsohn
11c49a464f * configure: Regenerated to track ../common/aclocal.m4 changes. 1997-04-24 07:58:17 +00:00
David Edelsohn
aafb68adf6 * configure.in (m32r-*-*): New target.
* configure: Regenerate.
1997-04-24 07:54:06 +00:00
David Edelsohn
dd442a4491 * configure: Regenerated to track ../common/aclocal.m4 changes.
* Makefile.in (SIM_OBJS): Add sim-module.o, sim-profile.o.
	* sim-calls.c (sim_open): Call sim_module_uninstall if argument
	parsing fails.  Call sim_post_argv_init.
	(sim_close): Call sim_module_uninstall.
1997-04-24 07:50:16 +00:00
David Edelsohn
89d151904f * Makefile.in (autoconf-common, autoconf-changelog): Change $* to $@. 1997-04-24 07:48:47 +00:00
David Edelsohn
b320601b45 * sim-module.h, sim-model.h, sim-profile.h: New files.
* sim-module.c, sim-profile.c: New files.
	* Make-common.in (SIM_PROFILE): Define
	(CONFIG_CFLAGS): Add $(SIM_PROFILE).
	(sim_main_headers): Add sim-module.h, sim-model.h, sim-profile.h.
	(sim_module.o,sim-profile.o): Add rules for.
	* aclocal.m4 (--enable-sim-trace): Allow symbolic arguments.
	(--enable-sim-profile): Add.
	* configure: Regenerated.
	* sim-base.h (sim_state_base): New members init_list, uninstall_list,
	model.  Move trace and profile support to sim-{trace,profile}.h.
 	New members trace_data, profile_data.
	* sim-basics.h: #include sim-module.h, sim-model.h, sim-profile.h.
	* sim-config.h: Provide default definition of WITH_PROFILE.
	(WITH_TRACE): Change default to -1.
	(MAX_NR_PROCESSORS): Always define.
	* sim-options.c: Move trace and profile support to
	sim-{trace,profile}.h.
	(sim_pre_argv_init): Moved to sim-model.c.
	(standard_install): New function.
	* sim-options.h (sim_pre_argv_init): Move decl to sim-model.c.
	(standard_install): Declare.
	* sim-trace.c: Tracing option handling moved here from sim-options.c.
	(trace_install, trace_uninstall): New functions.
	(trace_printf): Update reference to TRACE_FILE.
	* sim-trace.h (TRACE_FOO_IDX): Moved here from sim-base.h.
	(TRACE_foo): Bit masks for symbolic arguments to --enable-sim-trace.
	(WITH_TRACE_FOO_P): Define.
	(trace_install): Declare.
	(TRACE_DATA): New struct.
1997-04-24 07:33:45 +00:00
David Edelsohn
73da4db587 * tconfig.in: New file.
* interp.c (sim_open): Handle missing arg to -E.
1997-04-24 00:56:33 +00:00
David Edelsohn
3be0e22896 * tconfig.in (SIM_HAVE_BIENDIAN): Define. 1997-04-24 00:42:50 +00:00
David Edelsohn
ef751fb06b * run.c: Undo last exec_bfd patch.
(main): Only pass -E ifdef SIM_HAVE_BIENDIAN.
1997-04-24 00:30:41 +00:00
David Edelsohn
2986085861 * interp.c (prog_bfd_was_opened_p): New static local.
(prog_bfd): New global variable.
	(sim_open): Undo patch to add -E support.
	(sim_close): Close prog_bfd if sim_load opened it.
	(sim_load): Record bfd of loaded file in prog_bfd.
	* simops.c (prog_bfd): Renamed from exec_bfd.
1997-04-24 00:22:10 +00:00
Michael Meissner
e3eba3fd0a Restore exec_bfd, needed for v850 debug code 1997-04-23 21:57:39 +00:00
Andrew Cagney
480e740cc1 More Tic80 instructions. 1997-04-23 13:56:14 +00:00
David Edelsohn
2c27ef7817 * sim-load.c (sim_load_file): #include <stdio.h> for NULL. 1997-04-22 21:44:43 +00:00
David Edelsohn
2d03fffed8 * interf.c (sim_open): Undo patch to add -E support. 1997-04-22 18:05:31 +00:00
Andrew Cagney
15c1649391 TIc80 simulator checkpoint - runs 3 instructions - trap, addu, br.a. 1997-04-22 17:46:07 +00:00
David Edelsohn
81f464815d * interp.c (sim_open): Undo patch to add -E support. 1997-04-22 17:31:11 +00:00
Stu Grossman
0f399b0c6b * Make-common.in: Change clean targets to use :: so that other
Makefiles can have their own clean targets.
	* sim-load.c (xprintf eprintf):  Use ANSI_PROTOTYPES instead of
	__STDC__ to control use of stdarg vs. varargs syntax.  Some
	systems can't use __STDC__, but require stdarg.
1997-04-22 16:00:06 +00:00