Re: git: d6c0538dae8d - main - ddb: Remove SOFTWARE_SSTEP support

From: John Baldwin <jhb_at_FreeBSD.org>
Date: Mon, 10 Jan 2022 22:50:40 UTC
On 1/10/22 1:37 PM, Olivier Houchard wrote:
> On Mon, Jan 10, 2022 at 02:14:54PM -0700, Warner Losh wrote:
>> On Mon, Jan 10, 2022 at 12:48 PM John Baldwin <jhb@freebsd.org> wrote:
>>
>>> On 1/7/22 8:27 AM, Warner Losh wrote:
>>>> The branch main has been updated by imp:
>>>>
>>>> URL:
>>> https://cgit.FreeBSD.org/src/commit/?id=d6c0538dae8d138219dfd051994a44c50e741212
>>>>
>>>> commit d6c0538dae8d138219dfd051994a44c50e741212
>>>> Author:     Warner Losh <imp@FreeBSD.org>
>>>> AuthorDate: 2022-01-07 16:25:33 +0000
>>>> Commit:     Warner Losh <imp@FreeBSD.org>
>>>> CommitDate: 2022-01-07 16:25:33 +0000
>>>>
>>>>       ddb: Remove SOFTWARE_SSTEP support
>>>>
>>>>       It was needed for mips only, and only kinda sorta worked for mips.
>>> It
>>>>       can be brought back if we grow another architecture that need it.
>>>>
>>>>       Sponsored by:           Netflix
>>>
>>> RISC-V would need it in theory (no hardware single step), but no one has
>>> felt the
>>> need to implement the backend support for it.  I think 32-bit arm doesn't
>>> support
>>> hardware single step either (but again, no one has bothered to add the
>>> backend
>>> support).
>>>
>>
>> Generally, I agree with these thoughts. I went ahead with the removal
>> because I
>> knew it would be easy to bring back, even years from now should someone[tm]
>> have an implementation for those platforms (though I thought 32-bit arm did
>> have
>> single step in hardware).
>>
>> Should I put it back? Or should we wait until someone shows up with support
>> for
>> a supported platform?
>>
> 
> It was used for arm, but only older arm, ie v4/v5, pretty sure newer
> cores do have hardware breakpoints.

They have hardware breakpoints/watchpoints, not sure if they have single step.

In GDB 32-bit arm only supports software single step, even on Linux.

-- 
John Baldwin