mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-10-12 10:28:59 +08:00
gdbserver/linux-low: turn 'insert_point' and 'remove_point' into methods
gdbserver/ChangeLog: 2020-04-02 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com> Turn the 'insert_point' and 'remove_point' linux target ops into methods of linux_process_target. * linux-low.h (struct linux_target_ops): Remove the ops. (class linux_process_target) <low_insert_point> <low_remove_point>: Declare. * linux-low.cc (linux_process_target::low_insert_point) (linux_process_target::low_remove_point): Define. (linux_process_target::insert_point) (linux_process_target::remove_point): Update for calls to low_insert_point and low_remove_point. * linux-x86-low.cc (class x86_target) <low_insert_point> <low_remove_point>: Declare. (x86_insert_point): Turn into... (x86_target::low_insert_point): ...this. (x86_remove_point): Turn into... (x86_target::low_remove_point): ...this. (the_low_target): Remove the op fields. * linux-aarch64-low.cc (class aarch64_target) <low_insert_point> <low_remove_point>: Declare. (aarch64_insert_point): Turn into... (aarch64_target::low_insert_point): ...this. (aarch64_remove_point): Turn into... (aarch64_target::low_remove_point): ...this. (the_low_target): Remove the op fields. * linux-arm-low.cc (class arm_target) <low_insert_point> <low_remove_point>: Declare. (arm_insert_point): Turn into... (arm_target::low_insert_point): ...this. (arm_remove_point): Turn into... (arm_target::low_remove_point): ...this. (the_low_target): Remove the op fields. * linux-crisv32-low.cc (class crisv32_target) <low_insert_point> <low_remove_point>: Declare. (crisv32_insert_point): Turn into... (crisv32_target::low_insert_point): ...this. (crisv32_remove_point): Turn into... (crisv32_target::low_remove_point): ...this. (the_low_target): Remove the op fields. * linux-mips-low.cc (class mips_target) <low_insert_point> <low_remove_point>: Declare. (mips_insert_point): Turn into... (mips_target::low_insert_point): ...this. (mips_remove_point): Turn into... (mips_target::low_remove_point): ...this. (the_low_target): Remove the op fields. * linux-ppc-low.cc (class ppc_target) <low_insert_point> <low_remove_point>: Declare. (ppc_insert_point): Turn into... (ppc_target::low_insert_point): ...this. (ppc_remove_point): Turn into... (ppc_target::low_remove_point): ...this. (the_low_target): Remove the op fields. * linux-bfin-low.cc (the_low_target): Remove the op fields. * linux-m32r-low.cc (the_low_target): Ditto. * linux-m68k-low.cc (the_low_target): Ditto. * linux-s390-low.cc (the_low_target): Ditto. * linux-sh-low.cc (the_low_target): Ditto. * linux-sparc-low.cc (the_low_target): Ditto. * linux-tic6x-low.cc (the_low_target): Ditto. * linux-tile-low.cc (the_low_target): Ditto. * linux-xtensa-low.cc (the_low_target): Ditto.
This commit is contained in:
@ -1,3 +1,68 @@
|
||||
2020-04-02 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
|
||||
|
||||
Turn the 'insert_point' and 'remove_point' linux target ops into
|
||||
methods of linux_process_target.
|
||||
|
||||
* linux-low.h (struct linux_target_ops): Remove the ops.
|
||||
(class linux_process_target) <low_insert_point>
|
||||
<low_remove_point>: Declare.
|
||||
* linux-low.cc (linux_process_target::low_insert_point)
|
||||
(linux_process_target::low_remove_point): Define.
|
||||
(linux_process_target::insert_point)
|
||||
(linux_process_target::remove_point): Update for calls to
|
||||
low_insert_point and low_remove_point.
|
||||
* linux-x86-low.cc (class x86_target) <low_insert_point>
|
||||
<low_remove_point>: Declare.
|
||||
(x86_insert_point): Turn into...
|
||||
(x86_target::low_insert_point): ...this.
|
||||
(x86_remove_point): Turn into...
|
||||
(x86_target::low_remove_point): ...this.
|
||||
(the_low_target): Remove the op fields.
|
||||
* linux-aarch64-low.cc (class aarch64_target) <low_insert_point>
|
||||
<low_remove_point>: Declare.
|
||||
(aarch64_insert_point): Turn into...
|
||||
(aarch64_target::low_insert_point): ...this.
|
||||
(aarch64_remove_point): Turn into...
|
||||
(aarch64_target::low_remove_point): ...this.
|
||||
(the_low_target): Remove the op fields.
|
||||
* linux-arm-low.cc (class arm_target) <low_insert_point>
|
||||
<low_remove_point>: Declare.
|
||||
(arm_insert_point): Turn into...
|
||||
(arm_target::low_insert_point): ...this.
|
||||
(arm_remove_point): Turn into...
|
||||
(arm_target::low_remove_point): ...this.
|
||||
(the_low_target): Remove the op fields.
|
||||
* linux-crisv32-low.cc (class crisv32_target) <low_insert_point>
|
||||
<low_remove_point>: Declare.
|
||||
(crisv32_insert_point): Turn into...
|
||||
(crisv32_target::low_insert_point): ...this.
|
||||
(crisv32_remove_point): Turn into...
|
||||
(crisv32_target::low_remove_point): ...this.
|
||||
(the_low_target): Remove the op fields.
|
||||
* linux-mips-low.cc (class mips_target) <low_insert_point>
|
||||
<low_remove_point>: Declare.
|
||||
(mips_insert_point): Turn into...
|
||||
(mips_target::low_insert_point): ...this.
|
||||
(mips_remove_point): Turn into...
|
||||
(mips_target::low_remove_point): ...this.
|
||||
(the_low_target): Remove the op fields.
|
||||
* linux-ppc-low.cc (class ppc_target) <low_insert_point>
|
||||
<low_remove_point>: Declare.
|
||||
(ppc_insert_point): Turn into...
|
||||
(ppc_target::low_insert_point): ...this.
|
||||
(ppc_remove_point): Turn into...
|
||||
(ppc_target::low_remove_point): ...this.
|
||||
(the_low_target): Remove the op fields.
|
||||
* linux-bfin-low.cc (the_low_target): Remove the op fields.
|
||||
* linux-m32r-low.cc (the_low_target): Ditto.
|
||||
* linux-m68k-low.cc (the_low_target): Ditto.
|
||||
* linux-s390-low.cc (the_low_target): Ditto.
|
||||
* linux-sh-low.cc (the_low_target): Ditto.
|
||||
* linux-sparc-low.cc (the_low_target): Ditto.
|
||||
* linux-tic6x-low.cc (the_low_target): Ditto.
|
||||
* linux-tile-low.cc (the_low_target): Ditto.
|
||||
* linux-xtensa-low.cc (the_low_target): Ditto.
|
||||
|
||||
2020-04-02 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
|
||||
|
||||
Remove the 'supports_z_point_type' linux target op and let the
|
||||
|
@ -80,6 +80,12 @@ protected:
|
||||
void low_set_pc (regcache *regcache, CORE_ADDR newpc) override;
|
||||
|
||||
bool low_breakpoint_at (CORE_ADDR pc) override;
|
||||
|
||||
int low_insert_point (raw_bkpt_type type, CORE_ADDR addr,
|
||||
int size, raw_breakpoint *bp) override;
|
||||
|
||||
int low_remove_point (raw_bkpt_type type, CORE_ADDR addr,
|
||||
int size, raw_breakpoint *bp) override;
|
||||
};
|
||||
|
||||
/* The singleton target ops object. */
|
||||
@ -308,14 +314,14 @@ aarch64_target::supports_z_point_type (char z_type)
|
||||
}
|
||||
}
|
||||
|
||||
/* Implementation of linux_target_ops method "insert_point".
|
||||
/* Implementation of linux target ops method "low_insert_point".
|
||||
|
||||
It actually only records the info of the to-be-inserted bp/wp;
|
||||
the actual insertion will happen when threads are resumed. */
|
||||
|
||||
static int
|
||||
aarch64_insert_point (enum raw_bkpt_type type, CORE_ADDR addr,
|
||||
int len, struct raw_breakpoint *bp)
|
||||
int
|
||||
aarch64_target::low_insert_point (raw_bkpt_type type, CORE_ADDR addr,
|
||||
int len, raw_breakpoint *bp)
|
||||
{
|
||||
int ret;
|
||||
enum target_hw_bp_type targ_type;
|
||||
@ -357,14 +363,14 @@ aarch64_insert_point (enum raw_bkpt_type type, CORE_ADDR addr,
|
||||
return ret;
|
||||
}
|
||||
|
||||
/* Implementation of linux_target_ops method "remove_point".
|
||||
/* Implementation of linux target ops method "low_remove_point".
|
||||
|
||||
It actually only records the info of the to-be-removed bp/wp,
|
||||
the actual removal will be done when threads are resumed. */
|
||||
|
||||
static int
|
||||
aarch64_remove_point (enum raw_bkpt_type type, CORE_ADDR addr,
|
||||
int len, struct raw_breakpoint *bp)
|
||||
int
|
||||
aarch64_target::low_remove_point (raw_bkpt_type type, CORE_ADDR addr,
|
||||
int len, raw_breakpoint *bp)
|
||||
{
|
||||
int ret;
|
||||
enum target_hw_bp_type targ_type;
|
||||
@ -3106,8 +3112,6 @@ aarch64_supports_hardware_single_step (void)
|
||||
|
||||
struct linux_target_ops the_low_target =
|
||||
{
|
||||
aarch64_insert_point,
|
||||
aarch64_remove_point,
|
||||
aarch64_stopped_by_watchpoint,
|
||||
aarch64_stopped_data_address,
|
||||
NULL, /* collect_ptrace_register */
|
||||
|
@ -89,6 +89,12 @@ protected:
|
||||
std::vector<CORE_ADDR> low_get_next_pcs (regcache *regcache) override;
|
||||
|
||||
bool low_breakpoint_at (CORE_ADDR pc) override;
|
||||
|
||||
int low_insert_point (raw_bkpt_type type, CORE_ADDR addr,
|
||||
int size, raw_breakpoint *bp) override;
|
||||
|
||||
int low_remove_point (raw_bkpt_type type, CORE_ADDR addr,
|
||||
int size, raw_breakpoint *bp) override;
|
||||
};
|
||||
|
||||
/* The singleton target ops object. */
|
||||
@ -576,9 +582,9 @@ arm_target::supports_z_point_type (char z_type)
|
||||
}
|
||||
|
||||
/* Insert hardware break-/watchpoint. */
|
||||
static int
|
||||
arm_insert_point (enum raw_bkpt_type type, CORE_ADDR addr,
|
||||
int len, struct raw_breakpoint *bp)
|
||||
int
|
||||
arm_target::low_insert_point (raw_bkpt_type type, CORE_ADDR addr,
|
||||
int len, raw_breakpoint *bp)
|
||||
{
|
||||
struct process_info *proc = current_process ();
|
||||
struct arm_linux_hw_breakpoint p, *pts;
|
||||
@ -621,9 +627,9 @@ arm_insert_point (enum raw_bkpt_type type, CORE_ADDR addr,
|
||||
}
|
||||
|
||||
/* Remove hardware break-/watchpoint. */
|
||||
static int
|
||||
arm_remove_point (enum raw_bkpt_type type, CORE_ADDR addr,
|
||||
int len, struct raw_breakpoint *bp)
|
||||
int
|
||||
arm_target::low_remove_point (raw_bkpt_type type, CORE_ADDR addr,
|
||||
int len, raw_breakpoint *bp)
|
||||
{
|
||||
struct process_info *proc = current_process ();
|
||||
struct arm_linux_hw_breakpoint p, *pts;
|
||||
@ -1095,8 +1101,6 @@ arm_target::get_regs_info ()
|
||||
}
|
||||
|
||||
struct linux_target_ops the_low_target = {
|
||||
arm_insert_point,
|
||||
arm_remove_point,
|
||||
arm_stopped_by_watchpoint,
|
||||
arm_stopped_data_address,
|
||||
NULL, /* collect_ptrace_register */
|
||||
|
@ -171,8 +171,6 @@ bfin_target::get_regs_info ()
|
||||
}
|
||||
|
||||
struct linux_target_ops the_low_target = {
|
||||
NULL, /* insert_point */
|
||||
NULL, /* remove_point */
|
||||
NULL, /* stopped_by_watchpoint */
|
||||
NULL, /* stopped_data_address */
|
||||
NULL, /* collect_ptrace_register */
|
||||
|
@ -47,6 +47,12 @@ protected:
|
||||
void low_set_pc (regcache *regcache, CORE_ADDR newpc) override;
|
||||
|
||||
bool low_breakpoint_at (CORE_ADDR pc) override;
|
||||
|
||||
int low_insert_point (raw_bkpt_type type, CORE_ADDR addr,
|
||||
int size, raw_breakpoint *bp) override;
|
||||
|
||||
int low_remove_point (raw_bkpt_type type, CORE_ADDR addr,
|
||||
int size, raw_breakpoint *bp) override;
|
||||
};
|
||||
|
||||
/* The singleton target ops object. */
|
||||
@ -193,9 +199,9 @@ crisv32_target::supports_z_point_type (char z_type)
|
||||
}
|
||||
}
|
||||
|
||||
static int
|
||||
cris_insert_point (enum raw_bkpt_type type, CORE_ADDR addr,
|
||||
int len, struct raw_breakpoint *bp)
|
||||
int
|
||||
crisv32_target::low_insert_point (raw_bkpt_type type, CORE_ADDR addr,
|
||||
int len, raw_breakpoint *bp)
|
||||
{
|
||||
int bp;
|
||||
unsigned long bp_ctrl;
|
||||
@ -266,9 +272,9 @@ cris_insert_point (enum raw_bkpt_type type, CORE_ADDR addr,
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int
|
||||
cris_remove_point (enum raw_bkpt_type type, CORE_ADDR addr, int len,
|
||||
struct raw_breakpoint *bp)
|
||||
int
|
||||
crisv32_target::low_remove_point (raw_bkpt_type type, CORE_ADDR addr,
|
||||
int len, raw_breakpoint *bp)
|
||||
{
|
||||
int bp;
|
||||
unsigned long bp_ctrl;
|
||||
@ -458,8 +464,6 @@ crisv32_target::get_regs_info ()
|
||||
}
|
||||
|
||||
struct linux_target_ops the_low_target = {
|
||||
cris_insert_point,
|
||||
cris_remove_point,
|
||||
cris_stopped_by_watchpoint,
|
||||
cris_stopped_data_address,
|
||||
NULL, /* collect_ptrace_register */
|
||||
|
@ -5835,11 +5835,16 @@ linux_process_target::insert_point (enum raw_bkpt_type type, CORE_ADDR addr,
|
||||
{
|
||||
if (type == raw_bkpt_type_sw)
|
||||
return insert_memory_breakpoint (bp);
|
||||
else if (the_low_target.insert_point != NULL)
|
||||
return the_low_target.insert_point (type, addr, size, bp);
|
||||
else
|
||||
/* Unsupported (see target.h). */
|
||||
return 1;
|
||||
return low_insert_point (type, addr, size, bp);
|
||||
}
|
||||
|
||||
int
|
||||
linux_process_target::low_insert_point (raw_bkpt_type type, CORE_ADDR addr,
|
||||
int size, raw_breakpoint *bp)
|
||||
{
|
||||
/* Unsupported (see target.h). */
|
||||
return 1;
|
||||
}
|
||||
|
||||
int
|
||||
@ -5848,11 +5853,16 @@ linux_process_target::remove_point (enum raw_bkpt_type type, CORE_ADDR addr,
|
||||
{
|
||||
if (type == raw_bkpt_type_sw)
|
||||
return remove_memory_breakpoint (bp);
|
||||
else if (the_low_target.remove_point != NULL)
|
||||
return the_low_target.remove_point (type, addr, size, bp);
|
||||
else
|
||||
/* Unsupported (see target.h). */
|
||||
return 1;
|
||||
return low_remove_point (type, addr, size, bp);
|
||||
}
|
||||
|
||||
int
|
||||
linux_process_target::low_remove_point (raw_bkpt_type type, CORE_ADDR addr,
|
||||
int size, raw_breakpoint *bp)
|
||||
{
|
||||
/* Unsupported (see target.h). */
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* Implement the stopped_by_sw_breakpoint target_ops
|
||||
|
@ -131,13 +131,6 @@ struct lwp_info;
|
||||
|
||||
struct linux_target_ops
|
||||
{
|
||||
/* Breakpoint and watchpoint related functions. See target.h for
|
||||
comments. */
|
||||
int (*insert_point) (enum raw_bkpt_type type, CORE_ADDR addr,
|
||||
int size, struct raw_breakpoint *bp);
|
||||
int (*remove_point) (enum raw_bkpt_type type, CORE_ADDR addr,
|
||||
int size, struct raw_breakpoint *bp);
|
||||
|
||||
int (*stopped_by_watchpoint) (void);
|
||||
CORE_ADDR (*stopped_data_address) (void);
|
||||
|
||||
@ -664,6 +657,14 @@ protected:
|
||||
/* Return true if there is a breakpoint at PC. */
|
||||
virtual bool low_breakpoint_at (CORE_ADDR pc) = 0;
|
||||
|
||||
/* Breakpoint and watchpoint related functions. See target.h for
|
||||
comments. */
|
||||
virtual int low_insert_point (raw_bkpt_type type, CORE_ADDR addr,
|
||||
int size, raw_breakpoint *bp);
|
||||
|
||||
virtual int low_remove_point (raw_bkpt_type type, CORE_ADDR addr,
|
||||
int size, raw_breakpoint *bp);
|
||||
|
||||
/* How many bytes the PC should be decremented after a break. */
|
||||
virtual int low_decr_pc_after_break ();
|
||||
};
|
||||
|
@ -161,8 +161,6 @@ m32r_target::get_regs_info ()
|
||||
}
|
||||
|
||||
struct linux_target_ops the_low_target = {
|
||||
NULL, /* insert_point */
|
||||
NULL, /* remove_point */
|
||||
NULL, /* stopped_by_watchpoint */
|
||||
NULL, /* stopped_data_address */
|
||||
NULL, /* collect_ptrace_register */
|
||||
|
@ -265,8 +265,6 @@ m68k_supports_hardware_single_step (void)
|
||||
}
|
||||
|
||||
struct linux_target_ops the_low_target = {
|
||||
NULL, /* insert_point */
|
||||
NULL, /* remove_point */
|
||||
NULL, /* stopped_by_watchpoint */
|
||||
NULL, /* stopped_data_address */
|
||||
NULL, /* collect_ptrace_register */
|
||||
|
@ -54,6 +54,12 @@ protected:
|
||||
void low_set_pc (regcache *regcache, CORE_ADDR newpc) override;
|
||||
|
||||
bool low_breakpoint_at (CORE_ADDR pc) override;
|
||||
|
||||
int low_insert_point (raw_bkpt_type type, CORE_ADDR addr,
|
||||
int size, raw_breakpoint *bp) override;
|
||||
|
||||
int low_remove_point (raw_bkpt_type type, CORE_ADDR addr,
|
||||
int size, raw_breakpoint *bp) override;
|
||||
};
|
||||
|
||||
/* The singleton target ops object. */
|
||||
@ -508,12 +514,12 @@ mips_target::supports_z_point_type (char z_type)
|
||||
}
|
||||
}
|
||||
|
||||
/* This is the implementation of linux_target_ops method
|
||||
insert_point. */
|
||||
/* This is the implementation of linux target ops method
|
||||
low_insert_point. */
|
||||
|
||||
static int
|
||||
mips_insert_point (enum raw_bkpt_type type, CORE_ADDR addr,
|
||||
int len, struct raw_breakpoint *bp)
|
||||
int
|
||||
mips_target::low_insert_point (raw_bkpt_type type, CORE_ADDR addr,
|
||||
int len, raw_breakpoint *bp)
|
||||
{
|
||||
struct process_info *proc = current_process ();
|
||||
struct arch_process_info *priv = proc->priv->arch_private;
|
||||
@ -553,12 +559,12 @@ mips_insert_point (enum raw_bkpt_type type, CORE_ADDR addr,
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* This is the implementation of linux_target_ops method
|
||||
remove_point. */
|
||||
/* This is the implementation of linux target ops method
|
||||
low_remove_point. */
|
||||
|
||||
static int
|
||||
mips_remove_point (enum raw_bkpt_type type, CORE_ADDR addr,
|
||||
int len, struct raw_breakpoint *bp)
|
||||
int
|
||||
mips_target::low_remove_point (raw_bkpt_type type, CORE_ADDR addr,
|
||||
int len, raw_breakpoint *bp)
|
||||
{
|
||||
struct process_info *proc = current_process ();
|
||||
struct arch_process_info *priv = proc->priv->arch_private;
|
||||
@ -970,8 +976,6 @@ mips_target::get_regs_info ()
|
||||
}
|
||||
|
||||
struct linux_target_ops the_low_target = {
|
||||
mips_insert_point,
|
||||
mips_remove_point,
|
||||
mips_stopped_by_watchpoint,
|
||||
mips_stopped_data_address,
|
||||
mips_collect_ptrace_register,
|
||||
|
@ -71,6 +71,12 @@ protected:
|
||||
void low_set_pc (regcache *regcache, CORE_ADDR newpc) override;
|
||||
|
||||
bool low_breakpoint_at (CORE_ADDR pc) override;
|
||||
|
||||
int low_insert_point (raw_bkpt_type type, CORE_ADDR addr,
|
||||
int size, raw_breakpoint *bp) override;
|
||||
|
||||
int low_remove_point (raw_bkpt_type type, CORE_ADDR addr,
|
||||
int size, raw_breakpoint *bp) override;
|
||||
};
|
||||
|
||||
/* The singleton target ops object. */
|
||||
@ -346,12 +352,12 @@ ppc_target::supports_z_point_type (char z_type)
|
||||
}
|
||||
}
|
||||
|
||||
/* Implement insert_point target-ops.
|
||||
/* Implement the low_insert_point linux target op.
|
||||
Returns 0 on success, -1 on failure and 1 on unsupported. */
|
||||
|
||||
static int
|
||||
ppc_insert_point (enum raw_bkpt_type type, CORE_ADDR addr,
|
||||
int size, struct raw_breakpoint *bp)
|
||||
int
|
||||
ppc_target::low_insert_point (raw_bkpt_type type, CORE_ADDR addr,
|
||||
int size, raw_breakpoint *bp)
|
||||
{
|
||||
switch (type)
|
||||
{
|
||||
@ -367,12 +373,12 @@ ppc_insert_point (enum raw_bkpt_type type, CORE_ADDR addr,
|
||||
}
|
||||
}
|
||||
|
||||
/* Implement remove_point target-ops.
|
||||
/* Implement the low_remove_point linux target op.
|
||||
Returns 0 on success, -1 on failure and 1 on unsupported. */
|
||||
|
||||
static int
|
||||
ppc_remove_point (enum raw_bkpt_type type, CORE_ADDR addr,
|
||||
int size, struct raw_breakpoint *bp)
|
||||
int
|
||||
ppc_target::low_remove_point (raw_bkpt_type type, CORE_ADDR addr,
|
||||
int size, raw_breakpoint *bp)
|
||||
{
|
||||
switch (type)
|
||||
{
|
||||
@ -3410,8 +3416,6 @@ ppc_get_ipa_tdesc_idx (void)
|
||||
}
|
||||
|
||||
struct linux_target_ops the_low_target = {
|
||||
ppc_insert_point,
|
||||
ppc_remove_point,
|
||||
NULL,
|
||||
NULL,
|
||||
ppc_collect_ptrace_register,
|
||||
|
@ -2838,8 +2838,6 @@ s390_emit_ops (void)
|
||||
}
|
||||
|
||||
struct linux_target_ops the_low_target = {
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
s390_collect_ptrace_register,
|
||||
|
@ -192,8 +192,6 @@ sh_target::low_arch_setup ()
|
||||
}
|
||||
|
||||
struct linux_target_ops the_low_target = {
|
||||
NULL, /* insert_point */
|
||||
NULL, /* remove_point */
|
||||
NULL, /* stopped_by_watchpoint */
|
||||
NULL, /* stopped_data_address */
|
||||
NULL, /* collect_ptrace_register */
|
||||
|
@ -341,7 +341,7 @@ sparc_target::get_regs_info ()
|
||||
}
|
||||
|
||||
struct linux_target_ops the_low_target = {
|
||||
NULL, NULL, NULL, NULL,
|
||||
NULL, NULL,
|
||||
NULL, NULL
|
||||
};
|
||||
|
||||
|
@ -423,8 +423,6 @@ tic6x_target::get_regs_info ()
|
||||
}
|
||||
|
||||
struct linux_target_ops the_low_target = {
|
||||
NULL, /* insert_point */
|
||||
NULL, /* remove_point */
|
||||
NULL, /* stopped_by_watchpoint */
|
||||
NULL, /* stopped_data_address */
|
||||
NULL, /* collect_ptrace_register */
|
||||
|
@ -224,8 +224,6 @@ tile_supports_hardware_single_step (void)
|
||||
|
||||
struct linux_target_ops the_low_target =
|
||||
{
|
||||
NULL, /* insert_point */
|
||||
NULL, /* remove_point */
|
||||
NULL, /* stopped_by_watchpoint */
|
||||
NULL, /* stopped_data_address */
|
||||
NULL, /* collect_ptrace_register */
|
||||
|
@ -127,6 +127,12 @@ protected:
|
||||
int low_decr_pc_after_break () override;
|
||||
|
||||
bool low_breakpoint_at (CORE_ADDR pc) override;
|
||||
|
||||
int low_insert_point (raw_bkpt_type type, CORE_ADDR addr,
|
||||
int size, raw_breakpoint *bp) override;
|
||||
|
||||
int low_remove_point (raw_bkpt_type type, CORE_ADDR addr,
|
||||
int size, raw_breakpoint *bp) override;
|
||||
};
|
||||
|
||||
/* The singleton target ops object. */
|
||||
@ -604,9 +610,9 @@ x86_target::supports_z_point_type (char z_type)
|
||||
}
|
||||
}
|
||||
|
||||
static int
|
||||
x86_insert_point (enum raw_bkpt_type type, CORE_ADDR addr,
|
||||
int size, struct raw_breakpoint *bp)
|
||||
int
|
||||
x86_target::low_insert_point (raw_bkpt_type type, CORE_ADDR addr,
|
||||
int size, raw_breakpoint *bp)
|
||||
{
|
||||
struct process_info *proc = current_process ();
|
||||
|
||||
@ -630,9 +636,9 @@ x86_insert_point (enum raw_bkpt_type type, CORE_ADDR addr,
|
||||
}
|
||||
}
|
||||
|
||||
static int
|
||||
x86_remove_point (enum raw_bkpt_type type, CORE_ADDR addr,
|
||||
int size, struct raw_breakpoint *bp)
|
||||
int
|
||||
x86_target::low_remove_point (raw_bkpt_type type, CORE_ADDR addr,
|
||||
int size, raw_breakpoint *bp)
|
||||
{
|
||||
struct process_info *proc = current_process ();
|
||||
|
||||
@ -2912,8 +2918,6 @@ x86_get_ipa_tdesc_idx (void)
|
||||
|
||||
struct linux_target_ops the_low_target =
|
||||
{
|
||||
x86_insert_point,
|
||||
x86_remove_point,
|
||||
x86_stopped_by_watchpoint,
|
||||
x86_stopped_data_address,
|
||||
/* collect_ptrace_register/supply_ptrace_register are not needed in the
|
||||
|
@ -329,8 +329,6 @@ xtensa_target::get_regs_info ()
|
||||
}
|
||||
|
||||
struct linux_target_ops the_low_target = {
|
||||
NULL, /* insert_point */
|
||||
NULL, /* remove_point */
|
||||
NULL, /* stopped_by_watchpoint */
|
||||
NULL, /* stopped_data_address */
|
||||
NULL, /* collect_ptrace_register */
|
||||
|
Reference in New Issue
Block a user