aboutsummaryrefslogtreecommitdiff
path: root/gdb/remote-sim.h
diff options
context:
space:
mode:
authorDavid Edelsohn <dje.gcc@gmail.com>1993-07-30 18:57:41 +0000
committerDavid Edelsohn <dje.gcc@gmail.com>1993-07-30 18:57:41 +0000
commitb562a1861c2c19b5639f13ff5e48de26caabd23a (patch)
treec84bb8405b56383c735097e4408f058d22b4c69e /gdb/remote-sim.h
parent9be4f7b466a746abf0e846960dec4c7a31c1ce51 (diff)
downloadgdb-b562a1861c2c19b5639f13ff5e48de26caabd23a.zip
gdb-b562a1861c2c19b5639f13ff5e48de26caabd23a.tar.gz
gdb-b562a1861c2c19b5639f13ff5e48de26caabd23a.tar.bz2
remote-sim.h: New file.
remote-sp64sim.h (sim_*): External fns. (simif_*): Internal fns. sp64-tdep.c (sparc64_frame_chain, sparc64_frame_saved_pc): Deleted. (dump_ccreg, sparc_print_register_hook): New fns.
Diffstat (limited to 'gdb/remote-sim.h')
-rw-r--r--gdb/remote-sim.h87
1 files changed, 87 insertions, 0 deletions
diff --git a/gdb/remote-sim.h b/gdb/remote-sim.h
new file mode 100644
index 0000000..840457c
--- /dev/null
+++ b/gdb/remote-sim.h
@@ -0,0 +1,87 @@
+/* This file defines the interface between the simulator and gdb.
+ Copyright (C) 1993 Free Software Foundation, Inc.
+
+This file is part of GDB.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
+
+#if !defined (REMOTE_SIM_H)
+#define REMOTE_SIM_H 1
+
+/* Main simulator globals ... */
+
+extern int sim_verbose;
+
+/* Main simulator entry points ...
+
+ All functions return 0 for success and non-zero for failure. */
+
+/* Initialize the simulator. This function is called when the simulator
+ is selected from the command line. ARGS is passed from the command line
+ and can be used to select whatever run time options the simulator provides.
+ ARGS is the raw character string and must be parsed by the simulator. */
+
+int sim_open PARAMS ((char *name));
+
+/* Load program PROG into the simulator.
+ We use "void *" instead of "bfd *" to isolate this file from BFD. */
+
+int sim_load PARAMS ((void *bfd_handle, char *args));
+
+/* Set the arguments and environment for the program loaded into the
+ simulator. ARGV and ENV are NULL terminated lists of pointers.
+ If the simulator doesn't support setting arguments, print an error message
+ and return non-zero. */
+
+int sim_set_args PARAMS ((char **argv, char **env));
+
+/* Fetch register REGNO and store the raw value in BUF. */
+
+int sim_fetch_register PARAMS ((int regno, char *buf));
+
+/* Store register REGNO from BUF (in raw format). */
+
+int sim_store_register PARAMS ((int regno, char *buf));
+
+/* Kill the running program.
+ This may involve closing any open files and deleting any mmap'd areas. */
+
+int sim_kill PARAMS ((void));
+
+/* Read LENGTH bytes of the simulated program's memory and store in BUF. */
+
+int sim_read PARAMS ((CORE_ADDR mem, char *buf, int length));
+
+/* Store LENGTH bytes from BUF in the simulated program's memory. */
+
+int sim_write PARAMS ((CORE_ADDR mem, char *buf, int length));
+
+/* Print some interesting information about the simulator. */
+
+int sim_info PARAMS ((void));
+
+/* Set the simulated cpu's program counter to PC. */
+
+int sim_set_pc PARAMS ((CORE_ADDR pc));
+
+/* Fetch why the program stopped. */
+
+int sim_stop_signal PARAMS ((void));
+
+/* Run (or resume) the program. */
+
+int sim_resume PARAMS ((int step, int siggnal));
+
+#endif /* !defined (REMOTE_SIM_H) */