Home | History | Annotate | Download | only in gdb

Lines Matching defs:inferior

1 /* Variables that describe the inferior process running under GDB:
36 struct inferior;
60 #include "gdbsupport/common-inferior.h"
86 /* If we are restoring the inferior state due to an exception,
96 warning (_("Failed to restore inferior state: %s"), e.what ());
133 /* Collected pid, tid, etc. of the debugged inferior. When there's
134 no inferior, inferior_ptid.pid () will be 0. */
216 /* Initial inferior setup. Determines the exec file is not yet known,
260 inferior process. */
264 /* Print notices on inferior events (attach, detach, etc.), set with
265 `set print inferior-events'. */
304 /* Base class for target-specific inferior data. */
311 /* Inferior process specific part of `struct infcall_control_state'.
313 Inferior thread counterpart is `struct thread_control_state'. */
331 /* Initialize the inferior-related global state. */
334 /* Return a pointer to the current inferior. */
335 extern inferior *current_inferior ();
337 extern void set_current_inferior (inferior *);
339 /* Switch inferior (and program space) to INF, and switch to no thread
341 extern void switch_to_inferior_no_thread (inferior *inf);
343 /* Ensure INF is the current inferior.
345 If the current inferior was changed, return an RAII object that will
348 (inferior *inf);
350 /* Info about an inferior's target description. There's one of these
351 for each inferior. */
379 called an inferior. An inferior typically corresponds to a process
382 inferior, as does each attachment to an existing process.
384 target process ids. Each inferior may in turn have multiple
388 objects, being the user-selected inferior is considered a strong
389 reference and is thus accounted for in the inferior object's
391 the selected inferior to later restore it, GDB temporarily bumps
392 the inferior object's refcount, to prevent something deleting the
393 inferior object before reverting back (e.g., due to a
395 scoped_restore_current_inferior). All other inferior
397 listed exactly once in the inferior list, so placing an inferior in
398 the inferior list is an implicit, not counted strong reference. */
400 class inferior : public refcounted_object,
401 public intrusive_list_node<inferior>
404 explicit inferior (int pid);
405 ~inferior ();
407 /* Returns true if we can delete this inferior. */
410 /* Push T in this inferior's target stack. */
421 /* Unpush T from this inferior's target stack. */
424 /* Returns true if T is pushed in this inferior's target stack. */
428 /* Find the target beneath T in this inferior's target stack. */
432 /* Return the target at the top of this inferior's target stack. */
452 /* Return the target at process_stratum level in this inferior's
457 /* Return the target at STRATUM in this inferior's target stack. */
464 /* This inferior's thread list, sorted by creation order. */
471 /* Returns a range adapter covering the inferior's threads,
480 /* Returns a range adapter covering the inferior's non-exited
489 /* Like inferior::threads(), but returns a range adapter that can be
500 /* Find (non-exited) thread PTID of this inferior. */
509 of this inferior stops. Continuations are used by the attach
510 command and the remote target when a new inferior is detected. */
514 /* Set/get file name for default use for standard in/out in the inferior.
516 On Unix systems, we try to make TERMINAL_NAME the inferior's controlling
519 If TERMINAL_NAME is the empty string, then the inferior inherits GDB's
524 /* Set the argument string to use when running this inferior.
535 /* Get the argument string to use when running this inferior.
543 /* Set the inferior current working directory.
551 /* Get the inferior current working directory.
560 /* Set this inferior's arch. */
563 /* Get this inferior's arch. */
567 /* Convenient handle (GDB inferior id). Unique across all
571 /* Actual target inferior id, usually, a process id. This matches
572 the ptid_t.pid member of threads of this inferior. */
577 /* The highest thread number this inferior ever had. */
580 /* State of GDB control of inferior process execution.
584 /* True if this was an auto-created inferior, e.g. created from
585 following a fork; false, if this inferior was manually added by
590 /* The address space bound to this inferior. */
593 /* The program space bound to this inferior. */
600 /* Environment to use for running inferior,
607 /* If this inferior is a vfork child, then this is the pointer to
609 inferior *vfork_parent = NULL;
615 inferior *vfork_child = NULL;
617 /* True if this inferior should be detached when it's vfork sibling
626 /* True if we're in the process of detaching from this inferior. */
629 /* True if setup_inferior wasn't called for this inferior yet.
630 Until that is done, we must not access inferior memory or
635 /* True if the inferior is starting up (inside startup_inferior),
638 not access inferior memory or registers, as we haven't determined
642 /* True when we are reading the library list of the inferior during an
649 /* HAS_EXIT_CODE is true if the inferior exited with an exit code.
658 /* Info about an inferior's target description (if it's fetched; the
665 /* Per inferior data-pointers required by other GDB modules. */
666 registry<inferior> registry_fields;
673 /* The inferior's target stack. */
686 this inferior. */
689 /* The architecture associated with the inferior through the
693 a property of the inferior, accessed through a particular target:
696 per-inferior/target properties from
698 per-inferior/target properties should be made through
703 /* Add an inferior to the inferior list, print a message that a new
704 inferior is found, and return the pointer to the new inferior.
705 Caller may use this pointer to initialize the private inferior
707 extern struct inferior *add_inferior (int pid);
709 /* Same as add_inferior, but don't print new inferior notifications to
711 extern struct inferior *add_inferior_silent (int pid);
713 extern void delete_inferior (struct inferior *todel);
715 /* Delete an existing inferior list entry, due to inferior detaching. */
716 extern void detach_inferior (inferior *inf);
721 extern void exit_inferior (inferior *inf);
723 extern void inferior_appeared (struct inferior *inf, int pid);
725 /* Search function to lookup an inferior of TARG by target 'pid'. */
726 extern struct inferior *find_inferior_pid (process_stratum_target *targ,
729 /* Search function to lookup an inferior of TARG whose pid is equal to
731 extern struct inferior *find_inferior_ptid (process_stratum_target *targ,
734 /* Search function to lookup an inferior by GDB 'num'. */
735 extern struct inferior *find_inferior_id (int num);
737 /* Find an inferior bound to PSPACE, giving preference to the current
738 inferior. */
739 extern struct inferior *
742 /* Returns true if the inferior list is not empty. */
749 /* Returns true if there are any live inferiors in the inferior list
753 /* Save/restore the current inferior. */
768 inferior *m_saved_inf;
771 /* When reading memory from an inferior, the global inferior_ptid must
780 /* Save the current globals and switch to the given inferior and the
781 inferior's program space. inferior_ptid is set to point to the
782 inferior's process id (and not to any particular thread). */
783 explicit scoped_restore_current_inferior_for_memory (inferior *inf)
803 extern intrusive_list<inferior> inferior_list;
806 be done after struct inferior is defined. */
807 #include "inferior-iter.h"
811 currently-iterated inferior. When combined with range-for, this
814 for (inferior *inf : all_inferiors_safe ())
828 for (inferior *inf : all_inferiors ())
853 extern struct inferior *add_inferior_with_spaces (void);
855 /* Print the current selected inferior. */
858 /* Switch to inferior NEW_INF, a new inferior, and unless
863 (inferior *new_inf, bool no_connection, inferior *org_inf);
865 /* Return true if ID is a valid global inferior number. */
870 for (inferior *inf : all_inferiors ())