mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-07-15 05:01:13 +08:00
* breakpoint.c (TARGET_REGION_OK_FOR_HW_WATCHPOINT): Delete.
* config/i386/nm-i386sol2.h (TARGET_REGION_OK_FOR_HW_WATCHPOINT): New. (TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT): Delete. * config/mips/nm-irix5.h (TARGET_REGION_OK_FOR_HW_WATCHPOINT): New. (TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT): Delete. * config/sparc/nm-sol2.h (TARGET_REGION_OK_FOR_HW_WATCHPOINT): New. (TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT): Delete. * inf-ttrace.c (inf_ttrace_region_ok_for_hw_watchpoint): New. (inf_ttrace_region_size_ok_for_hw_watchpoint): Delete. (inf_ttrace_target): Delete to_region_size_ok_for_hw_watchpoint and add to_region_ok_for_hw_watchpoint. * s390-nat.c (s390_region_size_ok_for_hw_watchpoint): Delete. (s390_region_ok_for_hw_watchpoint): New. (_initialize_s390_nat): Delete to_region_size_ok_for_hw_watchpoint and add to_region_ok_for_hw_watchpoint. * target.c (default_region_size_ok_for_hw_watchpoint, debug_to_region_size_ok_for_hw_watchpoint): Delete prototype. (update_current_target): Delete to_region_size_ok_for_hw_watchpoint inheritance and default_region_size_ok_for_hw_watchpoint. (default_region_ok_for_hw_watchpoint): If len is less than or equal the length of void pointer, return ok. (default_region_size_ok_for_hw_watchpoint): Delete. (debug_to_region_size_ok_for_hw_watchpoint): Delete. (setup_target_debug): Delete to_region_size_ok_for_hw_watchpoint. * target.h (struct target_ops): Delete to_region_size_ok_for_hw_watchpoint. (TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT): Delete.
This commit is contained in:
@ -1,3 +1,33 @@
|
|||||||
|
2006-02-08 Wu Zhou <woodzltc@cn.ibm.com>
|
||||||
|
|
||||||
|
* breakpoint.c (TARGET_REGION_OK_FOR_HW_WATCHPOINT): Delete.
|
||||||
|
* config/i386/nm-i386sol2.h (TARGET_REGION_OK_FOR_HW_WATCHPOINT): New.
|
||||||
|
(TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT): Delete.
|
||||||
|
* config/mips/nm-irix5.h (TARGET_REGION_OK_FOR_HW_WATCHPOINT): New.
|
||||||
|
(TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT): Delete.
|
||||||
|
* config/sparc/nm-sol2.h (TARGET_REGION_OK_FOR_HW_WATCHPOINT): New.
|
||||||
|
(TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT): Delete.
|
||||||
|
* inf-ttrace.c (inf_ttrace_region_ok_for_hw_watchpoint): New.
|
||||||
|
(inf_ttrace_region_size_ok_for_hw_watchpoint): Delete.
|
||||||
|
(inf_ttrace_target): Delete to_region_size_ok_for_hw_watchpoint and
|
||||||
|
add to_region_ok_for_hw_watchpoint.
|
||||||
|
* s390-nat.c (s390_region_size_ok_for_hw_watchpoint): Delete.
|
||||||
|
(s390_region_ok_for_hw_watchpoint): New.
|
||||||
|
(_initialize_s390_nat): Delete to_region_size_ok_for_hw_watchpoint
|
||||||
|
and add to_region_ok_for_hw_watchpoint.
|
||||||
|
* target.c (default_region_size_ok_for_hw_watchpoint,
|
||||||
|
debug_to_region_size_ok_for_hw_watchpoint): Delete prototype.
|
||||||
|
(update_current_target): Delete to_region_size_ok_for_hw_watchpoint
|
||||||
|
inheritance and default_region_size_ok_for_hw_watchpoint.
|
||||||
|
(default_region_ok_for_hw_watchpoint): If len is less than or equal
|
||||||
|
the length of void pointer, return ok.
|
||||||
|
(default_region_size_ok_for_hw_watchpoint): Delete.
|
||||||
|
(debug_to_region_size_ok_for_hw_watchpoint): Delete.
|
||||||
|
(setup_target_debug): Delete to_region_size_ok_for_hw_watchpoint.
|
||||||
|
* target.h (struct target_ops): Delete
|
||||||
|
to_region_size_ok_for_hw_watchpoint.
|
||||||
|
(TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT): Delete.
|
||||||
|
|
||||||
2006-02-08 Ben Elliston <bje@au1.ibm.com>
|
2006-02-08 Ben Elliston <bje@au1.ibm.com>
|
||||||
Wu Zhou <woodzltc@cn.ibm.com>
|
Wu Zhou <woodzltc@cn.ibm.com>
|
||||||
|
|
||||||
|
@ -5807,11 +5807,6 @@ watch_command_1 (char *arg, int accessflag, int from_tty)
|
|||||||
in hardware. If the watchpoint can not be handled
|
in hardware. If the watchpoint can not be handled
|
||||||
in hardware return zero. */
|
in hardware return zero. */
|
||||||
|
|
||||||
#if !defined(TARGET_REGION_OK_FOR_HW_WATCHPOINT)
|
|
||||||
#define TARGET_REGION_OK_FOR_HW_WATCHPOINT(ADDR,LEN) \
|
|
||||||
(TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT(LEN))
|
|
||||||
#endif
|
|
||||||
|
|
||||||
static int
|
static int
|
||||||
can_use_hardware_watchpoint (struct value *v)
|
can_use_hardware_watchpoint (struct value *v)
|
||||||
{
|
{
|
||||||
|
@ -359,7 +359,7 @@ inf_ttrace_can_use_hw_breakpoint (int type, int len, int ot)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
inf_ttrace_region_size_ok_for_hw_watchpoint (int len)
|
inf_ttrace_region_ok_for_hw_watchpoint (CORE_ADDR addr, int len)
|
||||||
{
|
{
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
@ -1121,8 +1121,8 @@ inf_ttrace_target (void)
|
|||||||
t->to_insert_watchpoint = inf_ttrace_insert_watchpoint;
|
t->to_insert_watchpoint = inf_ttrace_insert_watchpoint;
|
||||||
t->to_remove_watchpoint = inf_ttrace_remove_watchpoint;
|
t->to_remove_watchpoint = inf_ttrace_remove_watchpoint;
|
||||||
t->to_stopped_by_watchpoint = inf_ttrace_stopped_by_watchpoint;
|
t->to_stopped_by_watchpoint = inf_ttrace_stopped_by_watchpoint;
|
||||||
t->to_region_size_ok_for_hw_watchpoint =
|
t->to_region_ok_for_hw_watchpoint =
|
||||||
inf_ttrace_region_size_ok_for_hw_watchpoint;
|
inf_ttrace_region_ok_for_hw_watchpoint;
|
||||||
t->to_kill = inf_ttrace_kill;
|
t->to_kill = inf_ttrace_kill;
|
||||||
t->to_create_inferior = inf_ttrace_create_inferior;
|
t->to_create_inferior = inf_ttrace_create_inferior;
|
||||||
t->to_follow_fork = inf_ttrace_follow_fork;
|
t->to_follow_fork = inf_ttrace_follow_fork;
|
||||||
|
@ -358,7 +358,7 @@ s390_can_use_hw_breakpoint (int type, int cnt, int othertype)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
s390_region_size_ok_for_hw_watchpoint (int cnt)
|
s390_region_ok_for_hw_watchpoint (CORE_ADDR addr, int cnt)
|
||||||
{
|
{
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
@ -380,7 +380,7 @@ _initialize_s390_nat (void)
|
|||||||
|
|
||||||
/* Add our watchpoint methods. */
|
/* Add our watchpoint methods. */
|
||||||
t->to_can_use_hw_breakpoint = s390_can_use_hw_breakpoint;
|
t->to_can_use_hw_breakpoint = s390_can_use_hw_breakpoint;
|
||||||
t->to_region_size_ok_for_hw_watchpoint = s390_region_size_ok_for_hw_watchpoint;
|
t->to_region_ok_for_hw_watchpoint = s390_region_ok_for_hw_watchpoint;
|
||||||
t->to_have_continuable_watchpoint = 1;
|
t->to_have_continuable_watchpoint = 1;
|
||||||
t->to_stopped_by_watchpoint = s390_stopped_by_watchpoint;
|
t->to_stopped_by_watchpoint = s390_stopped_by_watchpoint;
|
||||||
t->to_insert_watchpoint = s390_insert_watchpoint;
|
t->to_insert_watchpoint = s390_insert_watchpoint;
|
||||||
|
30
gdb/target.c
30
gdb/target.c
@ -50,8 +50,6 @@ static void default_terminal_info (char *, int);
|
|||||||
|
|
||||||
static int default_region_ok_for_hw_watchpoint (CORE_ADDR, int);
|
static int default_region_ok_for_hw_watchpoint (CORE_ADDR, int);
|
||||||
|
|
||||||
static int default_region_size_ok_for_hw_watchpoint (int);
|
|
||||||
|
|
||||||
static int nosymbol (char *, CORE_ADDR *);
|
static int nosymbol (char *, CORE_ADDR *);
|
||||||
|
|
||||||
static void tcomplain (void);
|
static void tcomplain (void);
|
||||||
@ -133,8 +131,6 @@ static int debug_to_stopped_data_address (struct target_ops *, CORE_ADDR *);
|
|||||||
|
|
||||||
static int debug_to_region_ok_for_hw_watchpoint (CORE_ADDR, int);
|
static int debug_to_region_ok_for_hw_watchpoint (CORE_ADDR, int);
|
||||||
|
|
||||||
static int debug_to_region_size_ok_for_hw_watchpoint (int);
|
|
||||||
|
|
||||||
static void debug_to_terminal_init (void);
|
static void debug_to_terminal_init (void);
|
||||||
|
|
||||||
static void debug_to_terminal_inferior (void);
|
static void debug_to_terminal_inferior (void);
|
||||||
@ -411,7 +407,6 @@ update_current_target (void)
|
|||||||
INHERIT (to_stopped_by_watchpoint, t);
|
INHERIT (to_stopped_by_watchpoint, t);
|
||||||
INHERIT (to_have_continuable_watchpoint, t);
|
INHERIT (to_have_continuable_watchpoint, t);
|
||||||
INHERIT (to_region_ok_for_hw_watchpoint, t);
|
INHERIT (to_region_ok_for_hw_watchpoint, t);
|
||||||
INHERIT (to_region_size_ok_for_hw_watchpoint, t);
|
|
||||||
INHERIT (to_terminal_init, t);
|
INHERIT (to_terminal_init, t);
|
||||||
INHERIT (to_terminal_inferior, t);
|
INHERIT (to_terminal_inferior, t);
|
||||||
INHERIT (to_terminal_ours_for_output, t);
|
INHERIT (to_terminal_ours_for_output, t);
|
||||||
@ -539,8 +534,6 @@ update_current_target (void)
|
|||||||
return_zero);
|
return_zero);
|
||||||
de_fault (to_region_ok_for_hw_watchpoint,
|
de_fault (to_region_ok_for_hw_watchpoint,
|
||||||
default_region_ok_for_hw_watchpoint);
|
default_region_ok_for_hw_watchpoint);
|
||||||
de_fault (to_region_size_ok_for_hw_watchpoint,
|
|
||||||
default_region_size_ok_for_hw_watchpoint);
|
|
||||||
de_fault (to_terminal_init,
|
de_fault (to_terminal_init,
|
||||||
(void (*) (void))
|
(void (*) (void))
|
||||||
target_ignore);
|
target_ignore);
|
||||||
@ -1588,13 +1581,7 @@ find_default_create_inferior (char *exec_file, char *allargs, char **env,
|
|||||||
static int
|
static int
|
||||||
default_region_ok_for_hw_watchpoint (CORE_ADDR addr, int len)
|
default_region_ok_for_hw_watchpoint (CORE_ADDR addr, int len)
|
||||||
{
|
{
|
||||||
return TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT (len);
|
return (len <= TYPE_LENGTH (builtin_type_void_data_ptr));
|
||||||
}
|
|
||||||
|
|
||||||
static int
|
|
||||||
default_region_size_ok_for_hw_watchpoint (int byte_count)
|
|
||||||
{
|
|
||||||
return (byte_count <= TYPE_LENGTH (builtin_type_void_data_ptr));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
@ -2146,20 +2133,6 @@ debug_to_region_ok_for_hw_watchpoint (CORE_ADDR addr, int len)
|
|||||||
return retval;
|
return retval;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
|
||||||
debug_to_region_size_ok_for_hw_watchpoint (int byte_count)
|
|
||||||
{
|
|
||||||
CORE_ADDR retval;
|
|
||||||
|
|
||||||
retval = debug_target.to_region_size_ok_for_hw_watchpoint (byte_count);
|
|
||||||
|
|
||||||
fprintf_unfiltered (gdb_stdlog,
|
|
||||||
"TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT (%ld) = 0x%lx\n",
|
|
||||||
(unsigned long) byte_count,
|
|
||||||
(unsigned long) retval);
|
|
||||||
return retval;
|
|
||||||
}
|
|
||||||
|
|
||||||
static int
|
static int
|
||||||
debug_to_stopped_by_watchpoint (void)
|
debug_to_stopped_by_watchpoint (void)
|
||||||
{
|
{
|
||||||
@ -2566,7 +2539,6 @@ setup_target_debug (void)
|
|||||||
current_target.to_stopped_by_watchpoint = debug_to_stopped_by_watchpoint;
|
current_target.to_stopped_by_watchpoint = debug_to_stopped_by_watchpoint;
|
||||||
current_target.to_stopped_data_address = debug_to_stopped_data_address;
|
current_target.to_stopped_data_address = debug_to_stopped_data_address;
|
||||||
current_target.to_region_ok_for_hw_watchpoint = debug_to_region_ok_for_hw_watchpoint;
|
current_target.to_region_ok_for_hw_watchpoint = debug_to_region_ok_for_hw_watchpoint;
|
||||||
current_target.to_region_size_ok_for_hw_watchpoint = debug_to_region_size_ok_for_hw_watchpoint;
|
|
||||||
current_target.to_terminal_init = debug_to_terminal_init;
|
current_target.to_terminal_init = debug_to_terminal_init;
|
||||||
current_target.to_terminal_inferior = debug_to_terminal_inferior;
|
current_target.to_terminal_inferior = debug_to_terminal_inferior;
|
||||||
current_target.to_terminal_ours_for_output = debug_to_terminal_ours_for_output;
|
current_target.to_terminal_ours_for_output = debug_to_terminal_ours_for_output;
|
||||||
|
@ -347,7 +347,6 @@ struct target_ops
|
|||||||
int to_have_continuable_watchpoint;
|
int to_have_continuable_watchpoint;
|
||||||
int (*to_stopped_data_address) (struct target_ops *, CORE_ADDR *);
|
int (*to_stopped_data_address) (struct target_ops *, CORE_ADDR *);
|
||||||
int (*to_region_ok_for_hw_watchpoint) (CORE_ADDR, int);
|
int (*to_region_ok_for_hw_watchpoint) (CORE_ADDR, int);
|
||||||
int (*to_region_size_ok_for_hw_watchpoint) (int);
|
|
||||||
void (*to_terminal_init) (void);
|
void (*to_terminal_init) (void);
|
||||||
void (*to_terminal_inferior) (void);
|
void (*to_terminal_inferior) (void);
|
||||||
void (*to_terminal_ours_for_output) (void);
|
void (*to_terminal_ours_for_output) (void);
|
||||||
@ -1037,11 +1036,6 @@ extern void (*deprecated_target_new_objfile_hook) (struct objfile *);
|
|||||||
(*current_target.to_region_ok_for_hw_watchpoint) (addr, len)
|
(*current_target.to_region_ok_for_hw_watchpoint) (addr, len)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if !defined(TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT)
|
|
||||||
#define TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT(byte_count) \
|
|
||||||
(*current_target.to_region_size_ok_for_hw_watchpoint) (byte_count)
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
/* Set/clear a hardware watchpoint starting at ADDR, for LEN bytes. TYPE is 0
|
/* Set/clear a hardware watchpoint starting at ADDR, for LEN bytes. TYPE is 0
|
||||||
for write, 1 for read, and 2 for read/write accesses. Returns 0 for
|
for write, 1 for read, and 2 for read/write accesses. Returns 0 for
|
||||||
|
Reference in New Issue
Block a user