struct thread_suspend_state
{
/* Last signal that the inferior received (why it stopped). */
- enum target_signal stop_signal;
+ enum gdb_signal stop_signal;
};
struct thread_info
int stop_requested;
/* The initiating frame of a nexting operation, used for deciding
- which exceptions to intercept. */
+ which exceptions to intercept. If it is null_frame_id no
+ bp_longjmp or bp_exception but longjmp has been caught just for
+ bp_longjmp_call_dummy. */
struct frame_id initiating_frame;
/* Private data used by the target vector implementation. */
typedef int (*thread_callback_func) (struct thread_info *, void *);
extern struct thread_info *iterate_over_threads (thread_callback_func, void *);
+/* Traverse all threads. */
+
+#define ALL_THREADS(T) \
+ for (T = thread_list; T; T = T->next)
+
extern int thread_count (void);
/* Switch from one thread to another. */
extern void update_thread_list (void);
+extern struct thread_info *thread_list;
+
#endif /* GDBTHREAD_H */