gdbsim_create_inferior (char *exec_file, char *args, char **env)
gdbsim_create_inferior (char *exec_file, char *args, char **env, int from_tty)
gdbsim_create_inferior (char *exec_file, char *args, char **env){  int len;  char *arg_buf, **argv;  if (exec_file == 0 || exec_bfd == 0)    warning ("No executable file specified.");  if (!program_loaded)    warning ("No program loaded.");  if (sr_get_debug ())    printf_filtered ("gdbsim_create_inferior: exec_file \"%s\", args \"%s\"\n",		     (exec_file ? exec_file : "(NULL)"),		     args);  gdbsim_kill ();  remove_breakpoints ();  init_wait_for_inferior ();  if (exec_file != NULL)    {      len = strlen (exec_file) + 1 + strlen (args) + 1 + /*slop */ 10;      arg_buf = (char *) alloca (len);      arg_buf[0] = '\0';      strcat (arg_buf, exec_file);      strcat (arg_buf, " ");      strcat (arg_buf, args);      argv = buildargv (arg_buf);      make_cleanup_freeargv (argv);    }  else    argv = NULL;  sim_create_inferior (gdbsim_desc, exec_bfd, argv, env);  inferior_ptid = pid_to_ptid (42);  insert_breakpoints ();	/* Needed to get correct instruction in cache */  clear_proceed_status ();  /* NB: Entry point already set by sim_create_inferior. */  proceed ((CORE_ADDR) -1, TARGET_SIGNAL_DEFAULT, 0);}