Re: [PATCH 2/2] Enable range stepping for ARM on GDBServer

Antoine Tremblay
2016-09-01T17:06:10Z

Yao Qi writes:

> [sigh, I am testing my arm range stepping patches today...]
>

Thanks for working on this :)

> On Thu, Sep 1, 2016 at 4:59 PM, Pedro Alves <palves@redhat.com> wrote:
>>>>
>>>>> I'm sorry I can't be more helpful at the moment but I wanted to post
>>>>> this issue before I have to leave for a while.
>>>>
>>>> Understood. Does enabling range stepping unblock something else?
>>>
>>> It would unblock ARM tracepoints, as per Yao's requirements...
>>
>> Tracepoints make gdbserver single-step and then not report the event
>> to gdb, so I do see the parallel with range-stepping. Throwing
>> while-stepping into the equation would make it even more clear.
>>
>
> Range-stepping makes gdbserver single-step and then not report the event
> to gdb if thread pc is within the range. It is similar to tracepoint, but much
> simpler.
>
> Both range-stepping and tracepoing needs to remove reinsert_breakpoint
> when gdbserver gets an event but doesn't report it back to gdb. However,
> gdbserver doesn't do so now. That is the reason I believe we need to
> support range-stepping first, and I am working on this (but interrupted by
> 7.12 release). The draft patch attached removes reinsert_breakpoint when
> gdbserver gets an event but not to report it back to gdb.
>

OK

> Beside "removing reinsert_breakpoint on gdbserver internal event", we'd
> better to think that "each backend unwinders don't have to worry about
> unavailable data". I posted a draft here
> https://sourceware.org/ml/gdb-patches/2016-05/msg00060.html, I need
> some review comments. Pedro,
> can you take a look? This is not a hard requirement for ARM tracepoint
> support.

Thanks for not making this one a hard requirement!

Regards,
Antoine