aboutsummaryrefslogtreecommitdiff
path: root/gdb/gnu-nat.h
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/gnu-nat.h')
-rw-r--r--gdb/gnu-nat.h95
1 files changed, 50 insertions, 45 deletions
diff --git a/gdb/gnu-nat.h b/gdb/gnu-nat.h
index 42393cd..bb85fa3 100644
--- a/gdb/gnu-nat.h
+++ b/gdb/gnu-nat.h
@@ -55,41 +55,41 @@ int inf_update_procs (struct inf *inf);
/* A proc is either a thread, or the task (there can only be one task proc
because it always has the same TID, PROC_TID_TASK). */
struct proc
- {
- thread_t port; /* The task or thread port. */
- int tid; /* The GDB pid (actually a thread id). */
- int num; /* An id number for threads, to print. */
-
- mach_port_t saved_exc_port; /* The task/thread's real exception port. */
- mach_port_t exc_port; /* Our replacement, which for. */
-
- int sc; /* Desired suspend count. */
- int cur_sc; /* Implemented suspend count. */
- int run_sc; /* Default sc when the program is running. */
- int pause_sc; /* Default sc when gdb has control. */
- int resume_sc; /* Sc resulting from the last resume. */
- int detach_sc; /* SC to leave around when detaching
+{
+ thread_t port; /* The task or thread port. */
+ int tid; /* The GDB pid (actually a thread id). */
+ int num; /* An id number for threads, to print. */
+
+ mach_port_t saved_exc_port; /* The task/thread's real exception port. */
+ mach_port_t exc_port; /* Our replacement, which for. */
+
+ int sc; /* Desired suspend count. */
+ int cur_sc; /* Implemented suspend count. */
+ int run_sc; /* Default sc when the program is running. */
+ int pause_sc; /* Default sc when gdb has control. */
+ int resume_sc; /* Sc resulting from the last resume. */
+ int detach_sc; /* SC to leave around when detaching
from program. */
- thread_state_data_t state; /* Registers, &c. */
- int state_valid:1; /* True if STATE is up to date. */
- int state_changed:1;
+ thread_state_data_t state; /* Registers, &c. */
+ int state_valid : 1; /* True if STATE is up to date. */
+ int state_changed : 1;
- int aborted:1; /* True if thread_abort has been called. */
- int dead:1; /* We happen to know it's actually dead. */
+ int aborted : 1; /* True if thread_abort has been called. */
+ int dead : 1; /* We happen to know it's actually dead. */
- /* Bit mask of registers fetched by gdb. This is used when we re-fetch
+ /* Bit mask of registers fetched by gdb. This is used when we re-fetch
STATE after aborting the thread, to detect that gdb may have out-of-date
information. */
- unsigned long fetched_regs;
+ unsigned long fetched_regs;
- struct inf *inf; /* Where we come from. */
+ struct inf *inf; /* Where we come from. */
- struct proc *next;
- };
+ struct proc *next;
+};
/* The task has a thread entry with this TID. */
-#define PROC_TID_TASK (-1)
+#define PROC_TID_TASK (-1)
#define proc_is_task(proc) ((proc)->tid == PROC_TID_TASK)
#define proc_is_thread(proc) ((proc)->tid != PROC_TID_TASK)
@@ -99,18 +99,25 @@ extern int __proc_pid (struct proc *proc);
/* Return printable description of proc. */
extern char *proc_string (struct proc *proc);
-#define proc_debug(_proc, msg, args...) \
- do { struct proc *__proc = (_proc); \
- debug ("{proc %d/%d %s}: " msg, \
- __proc_pid (__proc), __proc->tid, \
- host_address_to_string (__proc) , ##args); } while (0)
+#define proc_debug(_proc, msg, args...) \
+ do \
+ { \
+ struct proc *__proc = (_proc); \
+ debug ("{proc %d/%d %s}: " msg, __proc_pid (__proc), __proc->tid, \
+ host_address_to_string (__proc), ##args); \
+ } \
+ while (0)
extern bool gnu_debug_flag;
-#define debug(msg, args...) \
- do { if (gnu_debug_flag) \
- gdb_printf (gdb_stdlog, "%s:%d: " msg "\r\n", \
- __FILE__ , __LINE__ , ##args); } while (0)
+#define debug(msg, args...) \
+ do \
+ { \
+ if (gnu_debug_flag) \
+ gdb_printf (gdb_stdlog, "%s:%d: " msg "\r\n", __FILE__, __LINE__, \
+ ##args); \
+ } \
+ while (0)
/* A prototype generic GNU/Hurd target. The client can override it
with local methods. */
@@ -118,26 +125,24 @@ extern bool gnu_debug_flag;
struct gnu_nat_target : public inf_child_target
{
void attach (const char *, int) override;
- bool attach_no_wait () override
- { return true; }
+
+ bool attach_no_wait () override { return true; }
void detach (inferior *, int) override;
void resume (ptid_t, int, enum gdb_signal) override;
ptid_t wait (ptid_t, struct target_waitstatus *, target_wait_flags) override;
enum target_xfer_status xfer_partial (enum target_object object,
- const char *annex,
- gdb_byte *readbuf,
+ const char *annex, gdb_byte *readbuf,
const gdb_byte *writebuf,
ULONGEST offset, ULONGEST len,
ULONGEST *xfered_len) override;
- int find_memory_regions (find_memory_region_ftype func, void *data)
- override;
+ int find_memory_regions (find_memory_region_ftype func, void *data) override;
void kill () override;
- void create_inferior (const char *, const std::string &,
- char **, int) override;
+ void create_inferior (const char *, const std::string &, char **,
+ int) override;
void mourn_inferior () override;
bool thread_alive (ptid_t ptid) override;
std::string pid_to_str (ptid_t) override;
@@ -155,6 +160,7 @@ struct gnu_nat_target : public inf_child_target
thread_state_t proc_get_state (struct proc *proc, int will_modify);
private:
+
void inf_clear_wait (struct inf *inf);
void inf_cleanup (struct inf *inf);
void inf_startup (struct inf *inf, int pid);
@@ -164,8 +170,7 @@ private:
void inf_validate_procinfo (struct inf *inf);
void inf_validate_task_sc (struct inf *inf);
void inf_restore_exc_ports (struct inf *inf);
- void inf_set_threads_resume_sc (struct inf *inf,
- struct proc *run_thread,
+ void inf_set_threads_resume_sc (struct inf *inf, struct proc *run_thread,
int run_others);
int inf_set_threads_resume_sc_for_signal_thread (struct inf *inf);
void inf_resume (struct inf *inf);
@@ -179,7 +184,7 @@ private:
void proc_abort (struct proc *proc, int force);
struct proc *_proc_free (struct proc *proc);
int proc_update_sc (struct proc *proc);
- kern_return_t proc_get_exception_port (struct proc *proc, mach_port_t * port);
+ kern_return_t proc_get_exception_port (struct proc *proc, mach_port_t *port);
kern_return_t proc_set_exception_port (struct proc *proc, mach_port_t port);
mach_port_t _proc_get_exc_port (struct proc *proc);
void proc_steal_exc_port (struct proc *proc, mach_port_t exc_port);