diff options
Diffstat (limited to 'gdb/nat')
-rw-r--r-- | gdb/nat/aarch64-linux.c | 16 | ||||
-rw-r--r-- | gdb/nat/aarch64-linux.h | 2 |
2 files changed, 18 insertions, 0 deletions
diff --git a/gdb/nat/aarch64-linux.c b/gdb/nat/aarch64-linux.c index 7b4ead7..121542a 100644 --- a/gdb/nat/aarch64-linux.c +++ b/gdb/nat/aarch64-linux.c @@ -62,3 +62,19 @@ aarch64_linux_prepare_to_resume (struct lwp_info *lwp) } } } + +/* Function to call when a new thread is detected. */ + +void +aarch64_linux_new_thread (struct lwp_info *lwp) +{ + struct arch_lwp_info *info = xcalloc (1, sizeof (*info)); + + /* Mark that all the hardware breakpoint/watchpoint register pairs + for this thread need to be initialized (with data from + aarch_process_info.debug_reg_state). */ + DR_MARK_ALL_CHANGED (info->dr_changed_bp, aarch64_num_bp_regs); + DR_MARK_ALL_CHANGED (info->dr_changed_wp, aarch64_num_wp_regs); + + lwp_set_arch_private_info (lwp, info); +} diff --git a/gdb/nat/aarch64-linux.h b/gdb/nat/aarch64-linux.h index cf4e468..5cb432c 100644 --- a/gdb/nat/aarch64-linux.h +++ b/gdb/nat/aarch64-linux.h @@ -21,4 +21,6 @@ void aarch64_linux_prepare_to_resume (struct lwp_info *lwp); +void aarch64_linux_new_thread (struct lwp_info *lwp); + #endif /* AARCH64_LINUX_H */ |