aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Edelsohn <dje.gcc@gmail.com>1997-04-17 09:19:45 +0000
committerDavid Edelsohn <dje.gcc@gmail.com>1997-04-17 09:19:45 +0000
commita1cb1f4b9c9169acb0b67091e35984d17309eb7f (patch)
tree1c8dd34a693c7f9f5b6daf92d5780bc6b932c266
parent87e43259f1f31bb1de748139bb56161d99c44962 (diff)
downloadgdb-a1cb1f4b9c9169acb0b67091e35984d17309eb7f.zip
gdb-a1cb1f4b9c9169acb0b67091e35984d17309eb7f.tar.gz
gdb-a1cb1f4b9c9169acb0b67091e35984d17309eb7f.tar.bz2
* remote-sim.h (struct _bfd): Declare.
(sim_load): Return SIM_RC. New arg `abfd'. (sim_create_inferior): Return SIM_RC. Delete arg `start_address'.
-rw-r--r--include/ChangeLog6
-rw-r--r--include/remote-sim.h29
2 files changed, 18 insertions, 17 deletions
diff --git a/include/ChangeLog b/include/ChangeLog
index 890c885..5fbea8e 100644
--- a/include/ChangeLog
+++ b/include/ChangeLog
@@ -1,3 +1,9 @@
+Thu Apr 17 02:17:12 1997 Doug Evans <dje@canuck.cygnus.com>
+
+ * remote-sim.h (struct _bfd): Declare.
+ (sim_load): Return SIM_RC. New arg `abfd'.
+ (sim_create_inferior): Return SIM_RC. Delete arg `start_address'.
+
Wed Apr 2 17:09:12 1997 Andrew Cagney <cagney@kremvax.cygnus.com>
* remote-sim.h (sim_trace, sim_size): Make these global. They
diff --git a/include/remote-sim.h b/include/remote-sim.h
index a18b1ef..4bc4335 100644
--- a/include/remote-sim.h
+++ b/include/remote-sim.h
@@ -50,6 +50,9 @@ typedef enum {
SIM_RC_OK = 1
} SIM_RC;
+/* The bfd struct, as an opaque type. */
+struct _bfd;
+
/* Main simulator entry points. */
/* Initialize the simulator. This function is called when the simulator
@@ -57,9 +60,8 @@ typedef enum {
KIND specifies how the simulator will be used. Currently there are only
two kinds: standalone and debug.
ARGV is passed from the command line and can be used to select whatever
- run time options the simulator provides.
- ARGV is the standard NULL terminated array of pointers, with argv[0]
- being the program name.
+ run time options the simulator provides. It is the standard NULL
+ terminated array of pointers, with argv[0] being the program name.
The result is a descriptor that must be passed back to the other sim_foo
functions. */
@@ -73,22 +75,15 @@ SIM_DESC sim_open PARAMS ((SIM_OPEN_KIND kind, char **argv));
void sim_close PARAMS ((SIM_DESC sd, int quitting));
/* Load program PROG into the simulator.
- Return non-zero if you wish the caller to handle it
- (it is done this way because most simulators can use gr_load_image,
- but defining it as a callback seems awkward). */
+ If ABFD is non-NULL, the bfd for the file has already been opened.
+ The result is a return code indicating success. */
-int sim_load PARAMS ((SIM_DESC sd, char *prog, int from_tty));
+SIM_RC sim_load PARAMS ((SIM_DESC sd, char *prog, struct _bfd *abfd, int from_tty));
/* Prepare to run the simulated program.
- START_ADDRESS is, yes, you guessed it, the start address of the program.
- ARGV and ENV are NULL terminated lists of pointers.
- Gdb will set the start address via sim_store_register as well, but
- standalone versions of existing simulators are not set up to cleanly call
- sim_store_register, so the START_ADDRESS argument is there as a
- workaround. */
+ ARGV and ENV are NULL terminated lists of pointers. */
-void sim_create_inferior PARAMS ((SIM_DESC sd, SIM_ADDR start_address,
- char **argv, char **env));
+SIM_RC sim_create_inferior PARAMS ((SIM_DESC sd, char **argv, char **env));
/* Kill the running program.
This may involve closing any open files and deleting any mmap'd areas. */
@@ -113,8 +108,8 @@ void sim_fetch_register PARAMS ((SIM_DESC sd, int regno, unsigned char *buf));
void sim_store_register PARAMS ((SIM_DESC sd, int regno, unsigned char *buf));
-/* Print some interesting information about the simulator.
- VERBOSE is non-zero for the wordy version. */
+/* Print whatever statistics the simulator has collected.
+ VERBOSE is currently unused and must always be zero. */
void sim_info PARAMS ((SIM_DESC sd, int verbose));