* config/rs6000/nm-rs6000.h (TARGET_CREATE_INFERIOR_HOOK): Remove.

* fork-child.c (fork_inferior): Don't call TARGET_CREATE_INFERIOR_HOOK.
	* rs6000-nat.c (super_create_inferior): New variable.
	(rs6000_create_inferior): Make static.  Adapt argument list.  Call
	original version of create_inferior via super_create_inferior.
	(_initialize_core_rs6000): Install to_create_inferior target method.
This commit is contained in:
Ulrich Weigand 2007-04-27 13:23:47 +00:00
parent 037a727e3d
commit 1f480a5e28
5 changed files with 19 additions and 18 deletions

View File

@ -1,3 +1,12 @@
2007-04-27 Ulrich Weigand <uweigand@de.ibm.com>
* config/rs6000/nm-rs6000.h (TARGET_CREATE_INFERIOR_HOOK): Remove.
* fork-child.c (fork_inferior): Don't call TARGET_CREATE_INFERIOR_HOOK.
* rs6000-nat.c (super_create_inferior): New variable.
(rs6000_create_inferior): Make static. Adapt argument list. Call
original version of create_inferior via super_create_inferior.
(_initialize_core_rs6000): Install to_create_inferior target method.
2007-04-27 Ulrich Weigand <uweigand@de.ibm.com>
* aix-thread.c (aix_thread_xfer_memory): Replace by ...

View File

@ -64,8 +64,3 @@ extern char *xcoff_solib_address (CORE_ADDR);
/* A normal waitstatus. Let the usual macros deal with it. */ \
0)
/* Notice when a new child process is started. */
#define TARGET_CREATE_INFERIOR_HOOK rs6000_create_inferior
extern void rs6000_create_inferior (int);

View File

@ -398,11 +398,6 @@ fork_inferior (char *exec_file_arg, char *allargs, char **env,
/* We are now in the child process of interest, having exec'd the
correct program, and are poised at the first instruction of the
new program. */
/* Allow target dependent code to play with the new process. This
might be used to have target-specific code initialize a variable
in the new process prior to executing the first instruction. */
TARGET_CREATE_INFERIOR_HOOK (pid);
}
/* Accept NTRAPS traps from the inferior. */

View File

@ -999,14 +999,18 @@ vmap_exec (void)
/* Set the current architecture from the host running GDB. Called when
starting a child process. */
void
rs6000_create_inferior (int pid)
static void (*super_create_inferior) (char *exec_file, char *allargs,
char **env, int from_tty);
static void
rs6000_create_inferior (char *exec_file, char *allargs, char **env, int from_tty)
{
enum bfd_architecture arch;
unsigned long mach;
bfd abfd;
struct gdbarch_info info;
super_create_inferior (exec_file, allargs, env, from_tty);
if (__power_rs ())
{
arch = bfd_arch_rs6000;
@ -1250,6 +1254,10 @@ _initialize_core_rs6000 (void)
t->to_fetch_registers = rs6000_fetch_inferior_registers;
t->to_store_registers = rs6000_store_inferior_registers;
t->to_xfer_partial = rs6000_xfer_partial;
super_create_inferior = t->to_create_inferior;
t->to_create_inferior = rs6000_create_inferior;
add_target (t);
/* Initialize hook in rs6000-tdep.c for determining the TOC address

View File

@ -1112,12 +1112,6 @@ extern void (*deprecated_target_new_objfile_hook) (struct objfile *);
#define target_get_thread_local_address_p() \
(target_get_thread_local_address != NULL)
/* Hook to call target dependent code just after inferior target process has
started. */
#ifndef TARGET_CREATE_INFERIOR_HOOK
#define TARGET_CREATE_INFERIOR_HOOK(PID)
#endif
/* Hardware watchpoint interfaces. */