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
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
643878d017
* sim-hw.c: Include ctype.h.
...
(do_hw_poll_read): Do not assume EAGAIN.
1998-05-21 08:17:31 +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
6f1cadd0ce
* cgen-ops.h (ADDCFSI): Fix typo.
1998-05-20 07:01: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
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
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
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
109e611125
* sim-io.c: #include <errno.h>.
1998-05-06 17:13:25 +00:00
Andrew Cagney
844f40d393
Copy polling code in PSIM simulator into common directory. Will
...
need rewrite later. Use in mn10300 simulator.
1998-05-06 03:32:12 +00:00
Doug Evans
ca118edaff
Fix sanitization.
1998-05-05 00:24:16 +00:00
Andrew Cagney
03f3bfdb7a
*) Delete CPU and CIA arguments from hw_io_*_buffer transfers.
...
Instead save them in the sim_hw structure.
*) Route sim-core accesses to hw devices through the sim_hw module.
*) Route hw device requests to abort/halt through the sim_hw module.
*) Add print parameter to hw_tree_print() function.
*) Add sim_engine_vabort () function.
1998-05-01 07:58:47 +00:00
Andrew Cagney
e7439596fc
Add 2-result FP trace macro.
...
Dump hex value of floating-point numbers
1998-04-30 10:55:09 +00:00
Geoffrey Noer
9d45df1b8c
Tue Apr 28 18:28:58 1998 Geoffrey Noer <noer@cygnus.com>
...
* common/aclocal.m4: call AM_EXEEXT in SIM_AC_COMMON, define
AM_CYGWIN32 and AM_EXEEXT.
* common/Make-common.in: set EXEEXT, add missing EXEEXTs
to run and install-common rules.
* common/configure: regenerate
And update all subdirectory ChangeLogs and configure files.
1998-04-29 01:44:23 +00:00
Andrew Cagney
f68cdf65e8
Clean up cell types.
1998-04-27 07:13:00 +00:00
Tom Tromey
56df89bcf6
* configure: Regenerated to track ../common/aclocal.m4 changes.
...
* config.in: Ditto.
* acconfig.h (NEED_DECLARATION_PRINTF): Removed.
1998-04-26 21:39:16 +00:00
Tom Tromey
fc4198bbb5
* configure: Regenerated to track ../common/aclocal.m4 changes.
...
* config.in: Ditto.
* acconfig.h: New file.
* Make-common.in (top_builddir): New macro.
(INTL_LIB): Removed.
(INTLLIBS): New macro.
(INTLDEPS): Likewise.
(LIBDEPS): Use INTLDEPS.
(EXTRA_LIBS): Use INTLLIBS.
* aclocal.m4 (SIM_AC_COMMON): Call CY_GNU_GETTEXT.
(CY_WITH_NLS, CY_GNU_GETTEXT, AM_PATH_PROG_WITH_TEST,
AM_LC_MESSAGES): New macros from GNU gettext.
1998-04-24 20:51:56 +00:00
Andrew Cagney
d32658fe26
Drop leading `_' from macros.
1998-04-24 09:59:22 +00:00
Doug Evans
1e114b0add
Delete sky sim-base.h entries (required sanitization).
1998-04-22 21:05:19 +00:00
James Lemke
aefd02b523
Move target specific stuff from sim/common/sim-base.h to sim/mips/sim-main.h
1998-04-22 20:41:04 +00:00
Michael Meissner
3618a6e972
Add intl support
1998-04-22 18:19:01 +00:00
James Lemke
bd3aa7cbc7
sim-base.h: Add configure option --with-sim-funit.
1998-04-21 21:19:45 +00:00
Doug Evans
8bb5064edd
* cgen-ops.h (ADDCFSI): Fix.
...
(SUBCFSI): Tweak.
PR 15741.
1998-04-21 19:52:02 +00:00
Doug Evans
404d4ee153
* cgen-types.h (GETHIDI,MAKEDI): Tweak.
1998-04-21 19:49:42 +00:00
Andrew Cagney
97f4d18341
Implement ERET instruction.
...
Add {signed,unsigned}_address type.
1998-04-21 04:30:27 +00:00
Andrew Cagney
7d93d53871
o CVT.S.W and CVT.W.S were reversed
...
o When unpacking an r5900 FP value,
was not treating IEEE-NaN's as very
large values.
o When packing an r5900 FP result from an infinite
precision intermediate value was saturating
to IEEE-MAX instead of r5900-MAX
o The least significant bit of the FP status
register did not stick to one.
1998-04-16 07:49:58 +00:00
Andrew Cagney
ea5d84f5dc
Add EXTEND11().
1998-04-15 13:50:50 +00:00
Andrew Cagney
7acc4e98d2
Define EXTEND15().
1998-04-15 06:45:19 +00:00
Andrew Cagney
93f967158f
Define EXTEND4() and EXTEND5().
1998-04-15 00:06:50 +00:00
John Metzler
5d71b4bc92
Tue Apr 14 16:31:35 1998 John Metzler <jmetzler@cygnus.com>
...
* sim-memopt.c (parse_addr): Sunos 4.5 does not hane strtol
declared so we need this cast to prevent long long addresses
from being misconfigures. Results in access to unmapped memory.
1998-04-14 23:36:19 +00:00
Doug Evans
b42e7eb361
* Make-common.in (RUNTESTFLAGS): Define.
...
(check): Pass RUNTESTFLAGS to recursive make.
1998-04-14 20:22:07 +00:00
Andrew Cagney
7bf341f4a8
* sim-info.c (sim_info): Be verbose when either VERBOSE or STATE_VERBOSE_P.
1998-04-14 05:16:31 +00:00
Andrew Cagney
64ed8b6a8c
aclocal.m4: Don't enable inlining when cross-compiling.
...
mips/*: Tune mips simulator - allow all memory transfer code to be inlined.
1998-04-05 07:16:54 +00:00
Andrew Cagney
278bda4050
Cleanup INLINE support for simulators using common framework.
...
Make IGEN responsible for co-ordinating inlining of generated files.
By default, aclocal.m4 disabled all inlining.
1998-04-04 12:33:11 +00:00
Andrew Cagney
72a08ce565
Don't bother generating trace prefix string when not tracing.
1998-04-03 17:13:40 +00:00
Andrew Cagney
a1e4dc0db4
* run.c (main): Handle all alternatives of enum sim_stop.
...
(main): Delete unused `asection *s'.
1998-03-30 13:30:10 +00:00
Andrew Cagney
d8f5304972
Do top level sim-hw module for device tree.
...
Add to aclocal.m4, update all configure files.
1998-03-27 11:42:16 +00:00
Andrew Cagney
82ea14fd9d
Define CPU_INDEX. Initialize.
...
For mips_options, iterate over MAX_NR_PROCESSORS when setting options.
1998-03-27 04:25:45 +00:00
Andrew Cagney
6d133cc9df
Add sanitize-am30 markers. Keep details of AM30 implementation of
...
mn10300 out of the public eye.
Do something with top-level cgen directory.
1998-03-27 03:10:53 +00:00
Andrew Cagney
98f1f62cb4
* dv-pal.c (enum hw_pal_address_mask): From Stu Grossman, was 0x2f
...
needs to be 0x3f.
1998-03-25 23:48:14 +00:00
Andrew Cagney
04cdafa7a4
* hw-tree.c (hw_tree_find_property): Return NULL when device is not found.
...
(hw_tree_find_*_property): Clean up error message when property is not found.
* dv-pal.c (hw_pal_io_read_buffer): Check the smp property is present before
looking for it.
1998-03-25 22:37:33 +00:00
Ian Carmichael
8d0bd9889c
* Added HAVE_FPU_CONTROL_H and HAVE___SETFPUCW to fix non-linux builds.
1998-03-25 21:54:06 +00:00
Andrew Cagney
05d7918e53
* dv-pal.c (hw_pal_countdown, hw_pal_countdown_value,
...
hw_pal_timer, hw_pal_timer_value): Define.
(hw_pal_io_read_buffer, hw_pal_io_write_buffer): Add timer support
(do_counter_event, do_counter_read, do_counter_value,
do_counter_write): new functions.
* hw-tree.c (hw_printf): Send tree dump to stderr, same as other
trace output.
* hw-base.c (hw_create): Stop searching for a device when one is
found.
1998-03-25 03:44:37 +00:00
Andrew Cagney
d89fa2d80a
Re-do --enable-sim-hardware so that each simulator can specify the devices
...
it wants built.
Generate hw-config.h.
1998-03-25 01:41:33 +00:00
Stu Grossman
63330b2e2e
* Make-common.in: Get SHELL from configure.
...
* (stamp-tvals sim-inline.c): Use $(SHELL) when invoking
move-if-change. Fixes NT native build problem.
* Makefile.in (nltvals.def): Use $(SHELL) when invoking
move-if-change. Fixes NT native build problem.
* configure: Regenerate with autoconf 2.12.1 to fix shell issues for
NT native builds.
1998-03-24 17:48:58 +00:00
Andrew Cagney
7c130f2971
New function hw_strdup() - use memory tied to hw device.
...
Tidy up hw-properties error messages.
New device dv-glue.c (copied from ../ppc/hw_glue.)
Only attach a port after a devices initialization has finished.
1998-03-22 22:33:34 +00:00
Andrew Cagney
b2846e630d
Fix typos: Setting trace in wrong function, ME vs HW.
1998-03-22 05:51:57 +00:00
Andrew Cagney
775b309a4e
Copy function ../ppc/device_table.c:generic_device_init_address() to
...
hw-base.c:do_hw_attach_regs(). Use in dv-pal.
Add hw_tree_delete to hw-tree.c.
1998-03-22 05:49:30 +00:00
Andrew Cagney
937a4bdc12
Add function hw_trace() and macro HW_TRACE - provides trace support
...
for HW devices.
1998-03-22 05:33:41 +00:00
Andrew Cagney
e5f0d498af
Add hw_{malloc,zalloc,free} functions to hw_device. Any memory
...
allocated using these functions is reclaimed when the corresponding
device is deleted.
1998-03-22 05:06:27 +00:00
Andrew Cagney
b1e9223cee
Replace *attach_address() arguments SPACEMASK:ADDR with SPACE:ADDR.
...
Add notes to hw-device.h that discuss the interpretation of SPACE:ADDR
on a BUS.
1998-03-22 04:18:52 +00:00
Andrew Cagney
ae7c344679
Prototype common device framework. Plenty more work to go.
1998-03-18 04:08:21 +00:00
Andrew Cagney
9a8e61f1d4
* aclocal.m4 (SIM_AC_OPTION_HARDWARE): Set sim_hw_obj, sim_dv_obj,
...
sim_dv_src in Makefile. Take list of devices as parameter to m4
macro..
* configure: Regenerated to track ../common/aclocal.m4 changes.
1998-03-18 02:07:56 +00:00
Andrew Cagney
a8ff502679
Pass sim_cia cia into trace_prefix()
1998-03-16 03:44:33 +00:00
Doug Evans
84c6d152d1
* dv-sockser.c, dv-sockser.h: New files.
...
* Make-common.in (dv-sockser.o): Add rule for.
* aclocal.m4: Check for fcntl.h.
* config.h: Add HAVE_FCNTL_H.
* sim-break.c (remove_breakpoint): Fix thinko.
* sim-hload.c (sim_load): Provide default value of SIM_HANDLES_LMA.
Use SIM_HANDLES_LMA for lma_p arg to sim_load_file.
1998-03-15 02:43:00 +00:00
Fred Fish
93f75411f6
* sim-base.h (struct sim_state_base): Add prog_syms and
...
define macro STATE_PROG_SYMS.
* sim-trace.c (trace_one_insn): Add variables abfd, symsize,
symbol_count, and asymbols. Call bfd_get_symtab_upper_bound
and bfd_canonicalize_symtab, to get symbol table on first use
and preserve it via STATE_PROG_SYMS for future calls to
bfd_find_nearest_line.
1998-03-13 20:39:00 +00:00
Angela Marie Thomas
2b9cac47f5
massive sanitization fixes
1998-03-13 13:09:32 +00:00
Andrew Cagney
eefc25e592
Allow more than just read, write and exec memory spaces in the core
...
module.
1998-03-11 12:18:39 +00:00
Doug Evans
bda9d8a33c
* sim-base.h (sim_state_base): New member environment.
...
(STATE_ENVIRONMENT): New macro.
* sim-config.c (current_environment): Delete.
(sim_config_default): New function.
(sim_config): Set STATE_ENVIRONMENT, not current_environment.
* sim-config.h (current_environment,CURRENT_ENVIRONMENT): Delete.
(sim_config_default): Add prototype.
* sim-module.c (sim_pre_argv_init): Call sim_config_default.
* sim-options.c (standard_option_handler, case OPTION_ENVIRONMENT):
Set STATE_ENVIRONMENT, not current_environment.
1998-03-09 21:04:28 +00:00
Jim Wilson
c391655e30
Patch to fix irix6-x-mips64-elf simulator failures.
...
* sim-fpu.c (NR_GUARDS64): Change NR_PAD32 to NR_PAD64.
1998-03-09 19:59:52 +00:00
Doug Evans
e4726e6dfc
* sim-core.c (sim_core_attach): Use xmalloc instead of zalloc.
...
Use 0xa5 as initial value.
(sim_core_map_detach): Use free instead of zfree.
Back out this change.
1998-03-04 02:05:06 +00:00
Andrew Cagney
3cdda79a7c
* sim-types.h (SIGNED32, SIGNED64): Pacify GCC.
...
* sim-alu.h (ALU64_BEGIN): Make alu64_r unsigned.
1998-03-03 05:34:31 +00:00
Doug Evans
aca1adeee5
Fix typos.
1998-03-03 01:54:22 +00:00
Doug Evans
40d160dd18
* Make-common.in (TAGS): Make smarter.
...
* Makefile.in (TAGS): Ditto.
1998-03-03 01:05:23 +00:00
Doug Evans
3d4e34140a
* Make-common.in (TAGS): Make smarter.
1998-03-03 01:04:00 +00:00
Doug Evans
2307e0ee98
Good grief. Detailed function descriptions should accompany their definition.
1998-03-03 00:45:10 +00:00
Doug Evans
84fc6bd9df
(sim_core_attach): Add a comment describing its function.
...
Tweak switch() sanity check.
1998-03-03 00:30:24 +00:00
Doug Evans
b9bcce6732
Improve comment.
1998-03-03 00:10:34 +00:00
Doug Evans
0471756934
* sim-core.c (sim_core_attach): Revise last patch.
...
Use 0xa5 as initial value.
1998-03-02 23:03:32 +00:00
Doug Evans
de13b4cbdb
* sim-core.c (sim_core_attach): Use xmalloc instead of zalloc.
...
(sim_core_map_detach): Use free instead of zfree.
1998-03-02 18:20:39 +00:00
Ron Unrau
aac9328044
(find_match): recheck argv[argi] in multi-word match. Fixes crash when
...
subset words are alone on the command line.
1998-03-01 14:49:50 +00:00
Doug Evans
b0df95bbb3
* sim-module.c (*): Fix typos in assertion tests.
1998-02-28 03:01:52 +00:00
Andrew Cagney
baf8377df8
Pacify GCC: const char * passed to asprintf; int function returning
...
void; unused variable.
1998-02-28 03:01:51 +00:00
Andrew Cagney
0e701ac37b
Add generic sim-info.c:sim_info() function using module mechanism.
...
Clean up compile probs in mips/vr5400.
1998-02-28 02:51:06 +00:00
Doug Evans
966df5804d
* sim-base.h (sim_cpu_base): New members name, options.
...
(sim_cpu_lookup): Add prototype.
* sim-module.c (sim_pre_argv_init): Provide default names for cpus.
* sim-options.h (DECLARE_OPTION_HANDLER): New argument `cpu'.
(sim_add_option_table): Update prototype.
* sim-options.c (sim_add_option_table): New argument `cpu'.
(standard_option_handler,standard_install): Update.
(sim_parse_args): Handle cpu specific options.
(print_help): New static function.
(sim_print_help): Call it. Print cpu specific options.
(find_match): New static function.
(sim_args_command): Call it. Handle cpu specific options.
* sim-utils.c (sim_cpu_lookup): New function.
* sim-memopt.c (memory_option_handler): Update.
(sim_memopt_install): Update.
* sim-model.c (model_option_handler): Update.
(model_install): Update.
* sim-profile.c (profile_option_handler): Update.
(profile_install): Update.
* sim-trace.c (trace_option_handler): Update.
(trace_install): Update.
* sim-watch.c (watchpoint_option_handler): Update.
(sim_watchpoint_install): Update.
* cgen-scache.c (scache_option_handler): Update.
(scache_install): Update.
1998-02-27 18:39:22 +00:00
Doug Evans
6cd37f1563
* Make-common.in (check): Run `make check' in testsuite dir.
1998-02-25 15:15:09 +00:00
Andrew Cagney
390ffa8935
Extend TRACE macros to include more cases.
...
Add MAX/MIN floating point functions.
Add max32, min32 floating point contstants.
1998-02-25 15:15:08 +00:00
Doug Evans
c248113005
delete FIXME
1998-02-25 08:37:11 +00:00
Doug Evans
b500809f33
* genmloop.sh (engine_resume): Update insn_count before exiting.
...
(engine_resume_full): Keep accurate core profile data.
* cgen-utils.c (sim_disassemble_insn): Don't use
sim_core_read_aligned_N, it messes up profiling results.
1998-02-25 08:25:11 +00:00
Doug Evans
ab062d2278
(profile_print_core): Simplify by calling sim_core_map_to_str.
...
* sim-core.h (sim_core_map_to_str): Declare.
* sim-core.c (sim_core_map_to_str): Make non-static.
1998-02-25 07:47:32 +00:00
Doug Evans
751197f231
(profile_print_core): Simplify by calling sim_core_map_to_str.
...
* sim-core.h (sim_core_map_to_str): Declare.
* sim-core.c (sim_core_map_to_str): Make non-static.
1998-02-25 07:36:23 +00:00
Doug Evans
3910fb4a51
* sim-profile.c (profile_print): Delete duplicate test of
...
PROFILE_INSN_IDX.
(profile_print_pc): Exit early if data collection not set up.
1998-02-25 07:16:09 +00:00
Mark Alexander
845a591785
* nltvals.def: Regenerate with MN10300 additions.
1998-02-24 05:00:53 +00:00
Andrew Cagney
d3e1d59414
Add tracing to r5900 p* instructions.
1998-02-24 03:42:27 +00:00
Doug Evans
93f34464a3
* cgen-sim.h (SEM_NEXT_PC): New arg `len'.
1998-02-23 21:28:14 +00:00
Doug Evans
36dbc8bb7c
* sim-xcat.h: Delete.
...
* cgen-mem.h: Delete inclusion of sim-xcat.h.
* cgen-sim.h: Ditto.
* sim-alu.h: Replace sim-xcat.h with symcat.h.
* sim-n-bits.h: Ditto.
* sim-n-core.h: Ditto.
* sim-n-endian.h: Ditto.
1998-02-23 18:21:14 +00:00
Michael Meissner
3aeca4624a
Handle short reads and EOF
1998-02-23 18:21:13 +00:00
Andrew Cagney
0325f2dc89
Add tracing of booleans and addresses.
1998-02-23 16:43:34 +00:00
Andrew Cagney
bdfe5c0439
* sim-fpu.h (enum sim_fpu_class): Add sim_fpu_class_denorm.
...
(sim_fpu_fpto, sim_fpu_tofp): Define.
1998-02-23 09:18:30 +00:00
Michael Meissner
ca0e29d12b
fix typo
1998-02-20 21:54:06 +00:00
Andrew Cagney
9655c43963
Implement sim_fpu_is() and sim_fpu_cmp(). Note problem with detecting
...
denorms.
1998-02-20 07:20:53 +00:00
Andrew Cagney
d147d3844f
Backout of revision 1.35. Abort may be valid operation.
1998-02-20 03:20:49 +00:00
Andrew Cagney
8dcc896d0e
Extend sim-trace.[hc] to include a generic set of macro's for tracing
...
ALU/... inputs/outputs.
Base implementation on original v850 code.
Update igen to generate code interfacing with newer sim-trace.[hc].
1998-02-18 04:11:09 +00:00
Doug Evans
5bd0ca8616
* Make-common.in (CGEN_MAIN_SCM): Update.
...
* aclocal.m4 (USE_MAINTAINER_MODE): New variable.
1998-02-18 02:05:54 +00:00
Doug Evans
4f071e3056
* cgen-sim.h (SEMANTIC_CACHE_FN): Delete.
...
(SEMANTIC_FN): Rewrite declaration.
(DECODE): Update type of semantic_fast member.
({EX,SEM}_FN_NAME): Have only one version.
* cgen.sh: Support building cpu.c.
* sim-base.h (sim_state_base): Delete conditionals surrounding
member scache_size.
1998-02-18 01:30:04 +00:00
Andrew Cagney
e0deacd295
* sim-load.c (sim_load_file): Print LMA/VMA according to value
...
used.
1998-02-11 21:10:23 +00:00
Doug Evans
6b373fab44
(PAREXEC): Renamed from PARALLEL_EXEC. All uses updated.
...
(SEMANTIC{,_CACHE}_FN): Fix return type.
1998-02-10 03:37:49 +00:00
Doug Evans
e61871cedc
* cgen-sim.h (DECODE): Always use switch for `read' for now.
...
* cgen.sh (decode): Add s/@arch@/$arch/.
* genmloop.sh (@cpu@_engine_run): Delete `current_state'.
(engine_resume): Likewise. Make `engine' volatile. Save copy
of cpu pointer in volatile object. Initialize read switch if
-parallel.
1998-02-10 01:43:42 +00:00
Doug Evans
dde54cb845
* genmloop.sh (@cpu@_engine_run): Delete `current_state'.
...
(engine_resume): Likewise. Make `engine' volatile. Save copy
of cpu pointer in volatile object.
1998-02-09 22:51:21 +00:00
Doug Evans
61b62559ba
* cgen-sim.h (EX_FN_NAME): _exc_ -> _ex_.
...
(SEM_INSN): New macro.
1998-02-05 21:29:18 +00:00
Andrew Cagney
37379a256b
IGEN - Replace IMEM (IMEM_IMMED) macro with IMEM<insn-size> macro,
...
update v850, tic80 and mips simulators.
IGEN - Prepend prefix to more generated symbols and macros
(idecode_issue, instruction_word).
IGEN - Add -Wnowith option to supress warnings about word size
inflicts in input files.
MIPS - Clean up Makefile.in, m16.igen, m16.dc (new), m16run.c (new) so
that a mips16 simulator built using IGEN can be compiled.
1998-02-03 05:39:15 +00:00
Andrew Cagney
a97f304b04
Add support for configuring the size of the floating point unit (fp_word).
...
For mips, move fp_registers into a separate array of type fp_word[].
1998-02-02 14:06:52 +00:00
Andrew Cagney
01737f42d8
mips: Add multi-processor support for r5900. Others might work.
...
common, igen: Fix MP related bugs.
1998-02-01 03:29:48 +00:00
Andrew Cagney
412c4e940e
Add config support for the size of the target address and OF cell.
1998-01-31 14:07:23 +00:00
Andrew Cagney
9ec6741b17
igen: Fix SMP simulator generator support.
...
Use the bfd-processor name in the sim-engine switch.
Add nr_cpus argument to sim_engine_run.
tic80, v850, d30v, mips, common:
Update
mips: Fill in bfd-processor field of model records so that
they match ../bfd/archures.
1998-01-31 06:23:41 +00:00
Doug Evans
7caebec6f6
* cgen.sh: Portably read parms past $9.
1998-01-29 12:14:10 +00:00
Doug Evans
ed6f14718b
* Make-common.in (stamp-tvals): New rule.
...
(targ-vals.h,targ-map.c): Depend on it.
(clean): Remove stamp-tvals.
1998-01-23 22:22:23 +00:00
Michael Meissner
e9ae18efdb
#if 0 unused variable
1998-01-21 02:38:09 +00:00
Doug Evans
462cfbc4eb
* aclocal.m4: Recognize --enable-maintainer-mode.
...
*/configure: Regenerated.
1998-01-20 06:37:00 +00:00
Doug Evans
4a44afd5c7
* Make-common.in (cgen-run.o,cgen-scache.o): Delete cgen-scache.h dep.
1998-01-20 03:57:14 +00:00
Doug Evans
36de6f40d4
sanitize keep-cygnus cgen generation
1998-01-20 02:36:21 +00:00
Doug Evans
189e2694ad
* Make-common.in (cgen-{arch,cpu,decode}): New targets.
...
* cgen.sh: New file.
* cgen-scache.h: Deleted.
* cgen-scache.c: Only compile contents if WITH_SCACHE.
(scache_init): Use runtime computed size of SCACHE.
(scache_flush): Likewise.
* cgen-mem.h (GETIMEMU[QHSD]I): Declare.
([GS]ETT{QI,UQI,HI,UHI,SI,USI,DI,UDI}): Declare.
* cgen-sim.h: Scache support moved here.
(PC): Redo definition.
(ARGBUF,SCACHE,PARALLEL_EXEC): Provide forward decls.
(DECODE): Add parallel execution support.
Only include semantic label members if using switch.
(SWITCH,CASE,BREAK,DEFAULT,ENDSWITCH): Portable computed goto support.
(CGEN_CPU): Delete members exec_state, halt_sigrc, halt_jmp_buf.
(IADDR,CIA,SEM_ARG,EX_FN_NAME,SEM_FN_NAME,RECORD_IADDR,SEM_ARGBUF,
SEM_NEXT_PC,SEM_BRANCH_VIA_{CACHE,ADDR},SEM_NEW_PC_ADDR): Moved here
from cgen-types.h.
(engine_{stop,run,resume,halt,signal}): Delete decls.
* cgen-types.h (CGEN_{XCAT3,CAT3}): Delete.
(argbuf,scache): Delete forward decls.
(STATE): Delete decl.
* cgen-utils.c: Don't include decode.h, mem-ops.h, sem-ops.h.
Include cgen-mem.h, cgen-ops.h.
(engine_halt,engine_signal): Delete.
({ex,exc,sem,semc}_illegal): Delete.
(sim_disassemble_insn): Result of extract fn is in bits.
* genmloop.sh: Rewrite.
1998-01-19 21:14:14 +00:00
Doug Evans
8cc6a83b83
* sim-base.h (sim_state_base): Delete member `model'.
...
(sim_cpu_base): Add member `model'.
* sim-model.h (IMP_PROPERTIES): New type.
(MACH): New members imp_props, models.
(models): Delete decl.
* sim-model.c (set_model): Update.
* sim-profile.c (profile_print_model): Update.
1998-01-19 21:11:00 +00:00
Doug Evans
7e13b93461
* sim-utils.c (sim_state_alloc): Delete setting of cpu backlink here.
1998-01-19 21:09:43 +00:00
Doug Evans
76da664703
Fix comment.
1998-01-19 14:13:30 +00:00
Nick Clifton
ef13d3e3ed
replaced call to CGEN_INSN_SYNTAX()->mnemonic with CGEN_INSN_MNEMONIC()
1998-01-16 20:36:07 +00:00
Doug Evans
9bb68e2096
* Make-common.in (sim-core.o): Depend on $(sim_main_headers).
...
* sim-config.h (WITH_TREE_PROPERTIES): Define as 0.
* sim-config.c (sim_config): Replace WITH_DEVICES with
WITH_TREE_PROPERTIES.
1997-12-05 00:04:46 +00:00
Doug Evans
6e51f990a2
Regenerate configure files.
1997-12-04 17:26:06 +00:00
Doug Evans
22469a10e8
* Make-common.in (SIM_ENVIRONMENT): New variable.
...
(CONFIG_CFLAGS): Add it.
* aclocal.m4 (SIM_AC_OPTION_ENVIRONMENT): Handle
--enable-sim-environment option.
* configure: Regenerated.
* sim-config.h (environment support): Rewrite.
* sim-config.c (current_environment): Define as enum, unconditionally.
(current_alignment): Define unconditionally.
(config_environment_to_a): Update.
(config_alignment_to_a): Fix type of argument. Define unconditionally.
(sim_config): Handle environment and alignment determination
unconditionally. Delete sanity checks of current_environment,
unnecessary.
(print_sim_config): Update.
* sim-options.c (STANDARD_OPTIONS enum): Add OPTION_ENVIRONMENT.
(standard_options): Add --environment.
(standard_option_handler): Likewise.
1997-12-04 02:04:42 +00:00
Michael Meissner
97b25f990d
Delete sim_io_syscalls and sim_io_getstring
1997-11-30 22:42:08 +00:00
Michael Meissner
f2907f7425
Switch to using cb_syscall; Fix bug in cb_syscall write
1997-11-29 01:29:20 +00:00
Michael Meissner
465db791ec
Fix problems with d30v addc/subb
1997-11-29 01:14:58 +00:00
Doug Evans
1294727e84
* gennltvals.sh: Redo syscall support to allow sanitization.
...
* nltvals.def: Regenerated.
And add d30v sanitization.
1997-11-28 19:18:01 +00:00
Doug Evans
6be035091a
* Make-common.in (run.o): Depend on remote-sim.h.
...
(nrun.o,sim-hload.o,sim-hrw.o): Likewise.
(sim-io.o,sim-reason.o,sim-resume.o): Likewise.
1997-11-26 22:11:31 +00:00
Michael Meissner
ac07041378
Flush writes to stdout, stderr
1997-11-26 21:52:16 +00:00
Andrew Cagney
3885125c8e
* sim-io.c (sim_io_getstring): Delete unused len2. (sim_io_syscalls):
...
Ditto for sys_errno.
1997-11-26 21:35:53 +00:00
Doug Evans
6b8d6a1c49
Delete magic number FIXME.
1997-11-26 19:53:26 +00:00
Doug Evans
4123aca810
Undo last change. callback.h changed instead.
...
Plus:
* syscall.c (cb_syscall): Test CB_SYSCALL struct magic number.
1997-11-26 19:52:34 +00:00
Doug Evans
fc63d75ab3
* syscall.c (cb_syscall, cases stat, fstat): Handle -Wall -Werror.
1997-11-26 19:19:58 +00:00
Michael Meissner
69628a60ea
nuke lseek
1997-11-26 01:13:40 +00:00
Doug Evans
4ee2892be8
Add comment.
1997-11-25 18:43:29 +00:00
Doug Evans
f33673061f
* callback.c (os_stat): Make 3rd arg a host struct stat ptr.
...
(os_fstat): Likewise. Validate fd argument.
(cb_host_to_target_stat): Delete big_p arg. If HS arg is NULL,
just compute target stat struct length.
* syscall.c: #include "libiberty.h", <sys/types.h>, <sys/stat.h>.
(ENOSYS,ENAMETOOLONG): Provide definitions if missing.
(get_string): Return host errno values so they can be properly
translated later.
(cb_syscall): Likewise.
(cb_syscall, cases open,unlink): Use get_path instead of get_string.
(cb_syscall, case read): Use read_stdin for file descriptor 0.
(cb_syscall, case write): Use write_stderr for file descriptor 2.
(cb_syscall): Add cases for lseek, unlink, stat, fstat, time.
(get_path): New function.
1997-11-25 09:33:34 +00:00
Doug Evans
c76e66831a
* gennltvals.sh: Generate syscall values for d30v.
...
Use libgloss/syscall.h for sparc.
* nltvals.def: Regenerate.
1997-11-25 08:18:57 +00:00
Michael Meissner
3445e1cefb
Add sim_io_syscalls to do common system call emulation
1997-11-24 23:59:20 +00:00
Doug Evans
091521c48b
* sim-trace.c (trace_option_handler): Set state trace file
...
for --trace-file in addition to cpu's values.
(trace_vprintf): If cpu == NULL, try state's trace file.
1997-11-24 22:21:51 +00:00
Doug Evans
8f3cfc0efb
Entries for .gdbinit additions and sim-model.c option fix.
1997-11-24 22:09:12 +00:00
Doug Evans
4b5545c9f0
* sim-model.c (model_options): Use '\0' for `shortopt'.
1997-11-24 20:43:38 +00:00
Doug Evans
f375dd7d0e
* Make-common.in (all): Add .gdbinit.
...
* gdbinit.in: Add dump command.
1997-11-24 20:14:35 +00:00
Doug Evans
f2ea891349
* sim-core.c (sim_core_signal): Fix spelling error in message.
...
* sim-hrw.c (sim_read): Use read map, not write map.
1997-11-24 20:11:02 +00:00
Andrew Cagney
4ba8d09fe2
Change MIPS simulator so that it uses the (software) module sim_fpu
...
for floating point operations. Eliminates all dependencies the
simulator had on the hosts FP implemantation.
Add sim_fpu_{inv,abs,neg} functions to sim_fpu.[hc]
1997-11-23 03:34:15 +00:00
Andrew Cagney
aaa11abe42
Clarify meaning of sim_signalled's SIGRC argument. Document that this
...
isn't possible in sim-reason.c and just return the target SIGRC
instead.
For simulators that rely on sim-reason.c, replace SIG* with SIM_SIG*.
Hack nrun.c so that when it is executed (ARGV[0]) as `step' instead
of `run' it single steps the simulator. Allows testing of single step
without full GDB.
1997-11-22 12:52:44 +00:00
Andrew Cagney
a1cf18dc76
Pacify GCC - SIM_SIGNONE missing in enum, xmalloc/free VS ZALLOC/zfree.
1997-11-20 22:56:11 +00:00
Andrew Cagney
232156dee9
o Add SIM_SIGFPE to sim-signals
...
o Start SIM_SIG* at 64 so that the use of host signal numbers can be
detected and reported.
o Update MIPS simulator to use sim-signal.
1997-11-20 09:50:36 +00:00
Doug Evans
c6475c41bb
(enosys): Delete.
1997-11-20 00:50:40 +00:00
Doug Evans
ac1d2660b2
* callback.c (cb_host_to_target_stat): Fix return values.
1997-11-20 00:47:02 +00:00
Doug Evans
998d2c8275
* cgen-sim.h (enum_signal_type): Delete.
...
(engine_signal): Update prototype.
* cgen-utils.c: Don't include <signal.h>.
(sim_signal_to_host): Delete, lives in sim-signal.c now.
(engine_signal): Update.
1997-11-19 20:44:35 +00:00
Doug Evans
398057b722
* sim-utils.c (sim_state_alloc): Call SIM_STATE_ALLOC if defined.
...
(sim_state_free): Call SIM_STATE_FREE if defined.
* sim-module.c (sim_module_install): Don't leave any modules
installed if one fails to install.
1997-11-19 20:13:11 +00:00
Michael Meissner
e163bbbf2a
Do not include alloca-conf.h since alloca is not used.
1997-11-19 18:40:49 +00:00
Michael Meissner
eb5f3fcd1a
Fix carry/overflow problems
1997-11-19 18:30:47 +00:00
Doug Evans
fccbeeb639
(sim_stop_reason): Add comment.
1997-11-19 08:10:40 +00:00
Doug Evans
a4b44a2b08
* sim-core.c (sim_core_signal): Use sim_stopped instead of
...
sim_signalled.
1997-11-19 08:03:53 +00:00
Doug Evans
1ebc7e0e24
* sim-signal.c, sim-signal.h: New files.
...
* Make-common.in (sim-signal.o): Add rule for.
(SIM_NEW_COMMON_OBJS): Add sim-signal.o.
* sim-abort.c: Don't include <signal.h>.
* sim-basics.h: #include "sim-signal.h".
* sim-break.c: Don't include <signal.h>.
(sim_handle_breakpoint): Replace SIGTRAP with SIM_SIGTRAP.
* sim-core.c: Don't include <signal.h>.
(SIGBUS): Delete definition.
(sim_core_signal): Replace SIGSEGV,SIGBUS with SIM_SIGSEGV,SIM_SIGBUS.
* sim-engine.c: Don't include <signal.h>.
(sim_engine_abort): Replace SIGABRT with SIM_SIGABRT.
* sim-reason.c (sim_stop_reason): Call sim_signal_to_host.
* sim-resume.c: Don't include <signal.h>.
(SIGTRAP): Delete definition.
(has_stepped): Replace SIGTRAP with SIM_SIGTRAP.
* sim-stop.c: Don't include <signal.h>.
(control_c_simulation): Replace SIGINT with SIM_SIGINT.
* sim-watch.c: Don't include <signal.h>.
(handle_watchpoint): Replace SIGINT with SIM_SIGINT.
1997-11-19 08:00:37 +00:00
Doug Evans
13c9499d4e
* sim-core.c (sim_core_signal): Use CIA_ADDR to fetch value.
...
* sim-break.c (sim_handle_breakpoint): Likewise.
1997-11-19 02:37:58 +00:00
Doug Evans
340d8e209e
* sim-core.c (sim_core_signal): Use CIA_ADDR to fetch value.
1997-11-18 23:59:29 +00:00
Doug Evans
e5ce1670c1
* Make-common.in (SIM_NEW_COMMON_OBJS): New variable.
...
* sim-base.h (CIA_ADDR): Provide default definition.
1997-11-18 23:55:33 +00:00
Doug Evans
38377b3a48
* Make-common.in (srccom): New variable.
1997-11-18 07:14:20 +00:00
Doug Evans
9b51b3ddd3
Tweak comment.
1997-11-17 23:17:31 +00:00
Doug Evans
f7abc1ca0c
* Make-common.in (DEP, COMMON_DEP_CFLAGS): Define.
...
(LIB_OBJS): Add syscall.o.
(gentmap): Pass $(NL_TARGET) to $(CC).
(syscall.o): Add rule for.
(sim_main_headers): Add $(SIM_EXTRA_DEPS).
(sim-bits.o): Depend on $(sim-n-bits_h).
(sim-load.o): Depend on callback.h.
* Make-common.in (cgen-*.o): Update dependencies, mem-ops.h renamed to
cgen-mem.h, sem-ops.h renamed to cgen-ops.h.
* cgen-mem.h, cgen-ops.h: New files.
* aclocal.m4 (--enable-sim-scache): Pass -DWITH_SCACHE=0 for "=no".
* Makefile.in (nltvals.def): Depend on gennltvals.sh.
Rewrite build rule.
* callback.c: #include string.h or strings.h.
#include sys/types.h and sys/stat.h.
(cb_init_syscall_map,cb_init_errno_map,cb_init_open_map): Declare.
(enosys): New function.
(os_get_errno,os_open): Update.
(os_stat,os_fstat): New functions.
(os_init): Initialize syscall_map, errno_map, open_map.
(default_callback): Add entries for os_stat, os_fstat, syscall_map,
errno_map, open_map, signal_map, stat_map.
(cb_read_target_syscall_maps): New function.
(cb_target_to_host_syscall): New function.
(cb_host_to_target_errno): Renamed from host_to_target_errno.
(cb_target_to_host_open): Renamed from target_to_host_open.
(store): New function.
(cb_host_to_target_stat): New function.
* gentmap.c (sys_tdefs): New global.
(gen_targ_vals_h): Output target syscall numbers.
(gen_targ_map_c): Update. Output target syscall translation map.
* gentvals.sh: New first argument `target'. Preface table with
#ifdef NL_TARGET_$target if non-null target passed.
* gennltvals.sh: New file.
* nltvals.def: Regenerated.
1997-11-17 23:09:08 +00:00
Doug Evans
cf02c13ce2
(sim_core_signal): Add missing "\n" in message.
...
Forgot to check in yesterday.
1997-11-14 21:52:04 +00:00
Doug Evans
9e8a900adf
* sim-base.h (sim_state_base): Move `magic' to end of struct.
...
* sim-base.h (sim_state_base): Add member trace_data.
(STATE_TRACE_DATA): New macro.
* sim-trace.h (TRACE_DEBUG_IDX,TRACE_debug): New macros.
({WITH_,}TRACE_DEBUG_P): New macros.
(STATE_TRACE_FLAGS,STRACE_P,STRACE_DEBUG_P): New macros.
(_sim_cpu): Delete forward reference.
(debug_printf): Update.
* sim-trace.c (OPTION_TRACE_DEBUG): Define.
(trace_options): Add --trace-debug.
(set_trace_options): Handle it.
(trace_option_handler): Likewise.
(trace_install): Init state trace_data struct.
(trace_uninstall): Close state trace file.
* sim-events.c (ETRACE): Only print source file and number if
--trace-debug.
* sim-n-core.h (sim_core_trace_M): Likewise.
* sim-core.c (sim_core_signal): Add missing "\n" in message.
1997-11-13 21:18:14 +00:00
Felix Lee
c7e3f734a7
* sim-n-core.h (sim_core_read_unaligned_N): illegal empty
...
initializer.
* sim-types.h (unsigned128,signed128): fix typo for MSVC.
1997-11-13 18:45:21 +00:00
Doug Evans
5dcf955d46
* Make-common.in (BUILT_SRC_FROM_COMMON): Remove files no longer
...
built this way.
(sim-config.o): Remove non-existent $(sim-nconfig_h) dependency.
(clean): Don't delete $(BUILT_SRC_FROM_COMMON) if building in
source tree.
1997-11-12 20:29:53 +00:00
Doug Evans
15f5035c7d
* aclocal.m4 (SIM_AC_OPTION_SCACHE): Fix typo.
...
Updating of configure's left for later.
1997-11-12 20:19:34 +00:00
Andrew Cagney
f445a8902d
* sim-events.c (sim_events_process): Re-compute the time -
...
update_time_from_event - as each event is processed. Reverses
previous change.
1997-11-11 07:48:05 +00:00
Andrew Cagney
8cb060b6b0
* callback.c (os_poll_quit): Replace _WIN32 with _MSC_VER.
1997-11-10 02:08:50 +00:00
Andrew Cagney
549bf95051
Fix computation of sim_events_time when sim_events_slip is loosing it.
1997-11-06 14:14:33 +00:00
Andrew Cagney
864519b9fd
Allow separate single character and long options.
...
Avoid overflow of options buffer.
Provide examples of sim-options use.
1997-11-06 05:00:09 +00:00
Andrew Cagney
63be8febf7
Rewrite the MIPS simulator's memory model so that it uses the generic
...
common/sim-core.
Add support for 3, 5, 6, 7 byte transfers to sim core.
1997-11-05 08:17:26 +00:00
Andrew Cagney
a26ecda4ec
* sim-endian.h (U16_8): Implement
...
* sim-endian.c (sim_endian_split_16, sim_endian_join_16): New functions
* sim-endian.h (VL8_16, VH8_16): Implement.
* sim-memopt.c (memory_option_handler): Typecast 64bit value to long in printf.
(memory_option_handler): Only zalloc modulo bytes when non-zero.
(memory_option_handler): Skip comma in alias address list
1997-11-04 23:59:41 +00:00
Andrew Cagney
fcc86d82f7
Make memory regions layered (just like existing device regions) so
...
that overlapping regions can be defined.
Allow the layer (level) of a memory region to be specified as part of
an address parameter to memory options.
Update simulators.
1997-10-31 08:49:10 +00:00
Doug Evans
d048b52dbb
* sim-core.h (sim_core_write_8): Define.
1997-10-30 21:45:12 +00:00
Andrew Cagney
01b9cd49ca
common/sim-bits.h: Document ROTn macro.
...
igen/{igen.c,ld-insns.h}: Document mnemonic string formats.
mips/Makefile.in: Add dependencies for files included by mips.igen
mips/vr5400.igen: checkpoint vr5400 instructions.
1997-10-29 04:02:30 +00:00
Andrew Cagney
89d0973831
Add support for 16 byte quantities to sim-endian macro H2T.
...
Add model-filter field to option, include, model anf function igen records
1997-10-28 07:10:36 +00:00
Andrew Cagney
a86809d323
Implement sim_core_{read,write}_word using sim_core_{read,write}_<N>.
1997-10-28 02:13:09 +00:00
Doug Evans
c3e3e4ad2f
* sim-endian.h: Disable 16 byte support.
...
So things will build.
1997-10-27 19:47:24 +00:00
Doug Evans
374b95c1b0
* sim-n-endian.h: Add TAGS entrys for 16 byte versions.
1997-10-27 19:25:59 +00:00
Doug Evans
2fc2f8d8a4
Fix typo.
1997-10-27 19:25:05 +00:00
Andrew Cagney
f45dd42b32
Add 128 bit transfers to sim core.
1997-10-27 03:00:12 +00:00
Andrew Cagney
4a203fbae2
Add function sim_events_slip()
...
Clear work_pending flag as part of processing any pending work.
1997-10-24 05:53:01 +00:00
Andrew Cagney
9e03a68f13
Add LMA_P and DO_WRITE arguments to sim/common/sim-load.c:sim_load_file().
...
Update all simulators.
Clarify behavour of sim_load in remote-sim.h
1997-10-22 05:26:27 +00:00
Doug Evans
2328ef1c98
* nrun.c (main): Exit if bfd_openr fails.
...
Call bfd_check_format after bfd_openr.
1997-10-22 02:12:41 +00:00
Doug Evans
897a1d7863
* nrun.c (main): Remove useless test of name != NULL.
1997-10-22 01:38:49 +00:00
Andrew Cagney
b7432f0f27
Pacify GCC -Wall
1997-10-21 07:41:46 +00:00
Andrew Cagney
e2f8ffb736
Delete profile support from MIPS simulator, use sim/common/sim-profile
...
module instead.
Generate a "gmon.out" (gprof) when profiling the target PC.
Add target PC profiling option --profile-pc-granularity (bucket size)
1997-10-21 03:41:21 +00:00
Andrew Cagney
293a0876f8
Have single bit macros return an unsigned result. Avoids risk (and
...
need) of sign extending results.
1997-10-20 07:27:55 +00:00
Andrew Cagney
0a0ecb2120
Add 8 bit arithmetic to sim-alu.
...
Fix flags (Carry, oVerflow) for negate and subtract.
Add ALU*_RESULT macros for accessing final result of ALU op.
1997-10-20 02:03:06 +00:00
Andrew Cagney
fd89abc204
Handle core regions which start at a poorly aligned address.
1997-10-14 23:45:52 +00:00
Andrew Cagney
7456a10d9b
* sim-alu.h (ALU64_HAD_OVERFLOW): Define.
...
(ALU64_SUB): Define.
* Make-common.in (all): Build SIM_EXTRA_ALL first.
(.gdbinit): Remove dependencies, generate once per build.
1997-10-14 09:39:05 +00:00
Andrew Cagney
1b217de0f3
Correct type of address argument for sim_core_{read,write}
1997-10-14 09:24:57 +00:00
Andrew Cagney
63fe2cc799
Fix typo, WITH_TARGET_WORD_BITSIZE not WITH_TARGET_BITSIZE.
1997-10-02 23:37:30 +00:00
Stu Grossman
68f92f98ac
* sim-break.c (sim_set_breakpoint sim_clear_breakpoint): Use ZALLOC
...
and zfree instead of xmalloc and free. Prevents warnings.
1997-09-25 18:22:46 +00:00
Andrew Cagney
af51b8d56d
Add/use SIM_AC_OPTION_BITSIZE.
1997-09-25 07:19:05 +00:00
Stu Grossman
b9d580a4b0
* Make-common.in: New files sim-break.c, sim-break.h.
...
* sim-base.h: Add point to breakpoint list to sim_state_base.
* sim-break.c sim-break.h: New modules that implement intrinsic
breakpoint support.
* sim-module.c: Add breakpoint module.
1997-09-25 00:51:17 +00:00
Felix Lee
34d07b7867
* sim-events.c (SIM_EVENTS_POLL_RATE): poll more often than once
...
an hour.
* sim-n-core.h (WITH_XOR_ENDIAN): MSVC barfs on
if (0) { 1 % 0; }
* sim-core.c (sim_core_xor_write_buffer): WITH_XOR_ENDIAN + 1.
(SIGBUS) define for Windows.
* sim-trace.c (trace_printf,debug_printf): added ALMOST_STDC.
* sim-resume.c: define SIGTRAP for windows.
* sim-xcat.h: use token pasting if ALMOST_STDC.
1997-09-23 18:08:09 +00:00
Andrew Cagney
4141b1c63d
* Make-common.in (SIM_SCACHE, SIM_DEFAULT_MODEL): Assign configured values.
...
(CONFIG_CFLAGS): Add same.
1997-09-23 04:05:50 +00:00
Felix Lee
9f4fd82344
* sim-types.h (SIGNED64): ##i64 when _MSC_VER, not _WIN32.
...
(SIGNED32): use ##i32.
1997-09-23 03:51:33 +00:00
Andrew Cagney
92f91d1ff0
Remove need to update <targ>/Makefile.in when adding optional options
...
to <targ>/configure.in.
Simplify logic used to select target [default] endianness.
1997-09-23 01:25:26 +00:00
Andrew Cagney
8d332f9c1a
Enable --alignment option, stop sim-options.c hardwiring the alignment.
1997-09-22 09:34:28 +00:00
Andrew Cagney
4ca7d6d25b
Fix disabling of model code when simulator does not support modeling.
...
Stops `-p' crashing simulators.
1997-09-22 09:16:14 +00:00
Andrew Cagney
794e9ac96a
Simplify logic behind the generic configuration option --enable-sim-alignment.
1997-09-22 02:49:57 +00:00
Andrew Cagney
b45caf050c
Add support for --enable-sim-alignment to simulator common aclocal.m4
...
Add support for --alignment={strict,nonstrict,forced} to simulator common
run-time options.
For v850 use, make the default NONSTRICT_ALIGNMENT.
1997-09-22 00:24:46 +00:00
Andrew Cagney
175c6fd375
* sim-events.c (ETRACE): Use trace_printf not sim_io_printf for
...
trace output.
* sim-core.c (sim_core_signal): When bad access halt simulator
SIGSEGV / SIGBUS instead of aborting.
(signal.h): Include.
* sim-watch.c (sim_watchpoint_install): Handler for watchpoint
options was missing.
1997-09-17 08:13:07 +00:00
Andrew Cagney
dfa5c0ca02
Define MOVED macro, move sub-bitfield from XXX to YYY.
1997-09-17 05:28:32 +00:00
Andrew Cagney
b52e58c24f
Add/test 8bit bit manipuation macros.
...
Test LS and MS versions of SEXT macro.
Simplify/test macro returning a single bit.
1997-09-17 03:25:54 +00:00
Andrew Cagney
aa5e6a5a78
Add {LS,MS}SEXT and {LS,MS}INSERTED macros. Eliminates bug in SEXT.
1997-09-16 07:04:46 +00:00
Andrew Cagney
08547b1f1d
Determine ARCHITECTURE from program if possible.
...
Rename common's generated config.h to cconfig.h.
1997-09-15 08:11:50 +00:00
Andrew Cagney
4bdab45adb
* callback.c (os_write): divert stdout and stderr to their
...
respective hooks.
1997-09-15 08:02:23 +00:00
Andrew Cagney
93e7a1b5b7
Add profiling support to v850*.
1997-09-12 02:44:03 +00:00
Andrew Cagney
cad7297e80
o Wordwrap usage messages from sim-options
...
o Clarify how to use alias options
o use in sim-watch (better usage message)
o Don't pass something on the stack into the
watch-point interrupt hander.
1997-09-10 22:47:12 +00:00
Andrew Cagney
d0b59aa593
Add option architecture-info to list supported architectures.
1997-09-10 05:16:34 +00:00
Felix Lee
31dda65aff
* sim-core.h (sim_cpu_core): [WITH_XOR_ENDIAN + 1], to avoid
...
illegal zero-sized array.
* sim-core.c (sim_core_xor_read_buffer): same.
1997-09-10 04:46:37 +00:00
David Edelsohn
7b4aeebabe
* nltvals.def: Regenerate.
1997-09-09 18:20:57 +00:00
Andrew Cagney
75b3697d5f
Add/use LSEXTRACTED, MSEXTRACTED macros.
...
Add CPU_CIA macro to extract the PC.
1997-09-08 17:21:13 +00:00
Andrew Cagney
1bba340afe
Redo watchpoint code so that it target can specify interrupt names.
...
Replace v850 interrupt code with this common watchpoint code.
Other minor fixes to core.
1997-09-05 08:16:23 +00:00
Andrew Cagney
1b465b54e1
Add sim_do_commandf - printf version of sim_do_command.
1997-09-05 07:57:27 +00:00
Andrew Cagney
30efae3acd
Define SIGNED64 and UNSIGNED64 macros - handle MSC/GCC LL issue.
1997-09-05 00:30:38 +00:00
Andrew Cagney
6dbaff8f60
Finish implementation of sim-memopt.
...
Use in d30v and tic80.
Make available a generic sim_read, sim_write implementation.
1997-09-04 10:08:44 +00:00
Andrew Cagney
a34abff813
o Add modulo argument to sim_core_attach
...
o Add sim-memopt module - memory option processing.
1997-09-04 03:47:39 +00:00
David Edelsohn
600d83316c
* sim-hload.c (sim_load): Add assert for SIM_MAGIC_NUMBER.
1997-09-04 00:57:21 +00:00
David Edelsohn
88d5f8e854
* gdbinit.in: New file.
...
* aclocal.m4 (SIM_AC_OUTPUT): Build .gdbinit.
* Make-common.in (distclean): Delete .gdbinit.
(.gdbinit): Add rule for.
* configure: Regenerated to track ../common/aclocal.m4 changes.
1997-09-04 00:49:57 +00:00
Andrew Cagney
fdd64f952d
Add support for suspending/resumeing the simulator in sim-modules.
...
Use in sim-events.
1997-09-03 07:26:11 +00:00
Andrew Cagney
80c651f02d
Stanify error reporting memory overlaps.
1997-09-03 04:06:27 +00:00
David Edelsohn
645ab3ec42
(TAGS): Add support for "/* TAGS: foo */" marker.
1997-09-02 22:03:41 +00:00
David Edelsohn
74db699d1d
* Makefile.in (TAGS): Add support for "/* TAGS: foo */" marker.
...
* sim-n-bits.h: Add TAGS comments for all functions.
* sim-n-core.h: Likewise.
* sim-n-endian.h: Likewise.
1997-09-02 21:58:58 +00:00
Andrew Cagney
4b2a6aed84
Use sim_state_alloc to create common sim object.
1997-09-01 03:26:31 +00:00
Andrew Cagney
f90b720ba1
Passify GCC. Convert 0x0LL to something more portable in the FP code.
1997-08-30 00:02:19 +00:00
David Edelsohn
36db8e64ab
* sim-options.c (standard_option_handler): Use xstrdup, not strdup.
1997-08-28 17:37:30 +00:00
Andrew Cagney
18c319ae59
Add --target=BFDTARGET and --architecture=MACHINE options.
1997-08-28 09:44:42 +00:00
Andrew Cagney
8811705410
Fix doco on enable-sim-inline.
1997-08-27 22:43:18 +00:00
Andrew Cagney
d6fea803dc
Add MSBIT* and LSBIT* macro's to sim-bits.h
...
Add more macro's for extracting sub word quantites to sim-endian.h
1997-08-27 07:56:27 +00:00
Andrew Cagney
230a95ce5a
New file - generic implementation of sim_load for hardware only
...
simulators.
1997-08-27 04:45:59 +00:00
Andrew Cagney
fafce69ab1
Add ABFD argument to sim_create_inferior. Document.
...
Add file sim-hload.c - generic load for hardware only simulators.
Review each simulators sim_open, sim_load, sim_create_inferior so that
they more closely match required behavour.
1997-08-27 04:44:41 +00:00
Andrew Cagney
d07dddd2b2
Save a copy of argv, not just a pointer.
1997-08-27 00:35:34 +00:00
Andrew Cagney
247fccdeb5
Add ABFD argument to sim_open call. Pass through to sim_config so
...
that image properties such as endianness can be checked.
More strongly document the expected behavour of each of the sim_*
interfaces.
Add default endian argument to simulator config macro
SIM_AC_OPTION_ENDIAN. Use in sim_config.
1997-08-25 23:14:25 +00:00
David Edelsohn
dddbd8c586
Add comment.
1997-08-14 20:36:00 +00:00
David Edelsohn
052d7984df
* callback.c (os_poll_quit): Make static.
...
Call sim_cb_eprintf, not p->eprintf.
(sim_cb_printf, sim_cb_eprintf): New functions.
1997-08-14 19:53:10 +00:00
David Edelsohn
5697f15271
Keep sim-watch.[ch].
1997-07-22 19:05:13 +00:00
David Edelsohn
e6609d8f2a
* sim-n-core.h (sim_core_write_unaligned_N): Add missing break
...
to FORCED_ALIGNMENT case.
1997-07-22 17:36:23 +00:00
Andrew Cagney
84e8cd0fcf
Open in binary mode when available.
1997-06-06 02:34:55 +00:00