Re: [PATCH 1/2] [gdbserver] Rename supports_conditional_breakpoints to supports_hardware_single_step

Antoine Tremblay
2015-09-03T15:13:21Z

On 09/02/2015 03:22 PM, Antoine Tremblay wrote:
>
> On 09/01/2015 04:41 AM, Yao Qi wrote:
>> In my patch https://sourceware.org/ml/gdb-patches/2015-04/msg01110.html
>> a new target_ops hook supports_conditional_breakpoints was added to
>> disable conditional breakpoints if target doesn't have hardware single
>> step. This patch is to generalize this hook from
>> supports_conditional_breakpoints to supports_hardware_single_step,
>> so that the following patch can use it.
>>
>
> Could we generalize this even more to supports_single_step like your
> next patch ?
>
> Since I'm working on software single stepping for ARM, if this patch
> goes in I'll need to implement a supports_software_single_step and
> enable ConditionalBreakpoints for this case too...
>
> Is there a need to know that it's really hardware or just knowing that
> it can single step would be ok ?
>

Note also that this way would force supports_conditional_breakpoints to
check for more than can_hardware_single_step and require a target
function set manually to 1 on targets that we know have a proper
software or hardware single step like :

static int
linux_supports_conditional_breakpoints (void)
{
return the_low_target.supports_conditional_breakpoints ();
}

I had initially added that in my set but we could change it for
the_low_target_.can_single_step () ?

This way targets that have proper software single step can be handled.
Otherwise every software single step implementation is deemed too simple
to be used...

Would that seem ok ?