Re: [lldb-dev] New target; where to start with thread plans

2018-11-29 Thread Pavel Labath via lldb-dev

On 28/11/2018 21:05, Jim Ingham via lldb-dev wrote:

The main complication would be if your new target didn't support 
hardware-single-step.  If that's the case you will have to have a Disassembler 
that can predict the target PC of all instructions (when stopped at that 
instruction) since you'll have to use software breakpoints to drive the lowest 
level of stepping.  There's support in there for handling that at a high level 
since the first couple of iPhone ARM chips didn't have single step support but 
we haven't actually had on any real systems we support that lack hardware 
single step in years, so it may need some reviving.



Linux still uses software single stepping on arm(32), but the code for 
that is in lldb-server, so the client doesn't even know it's being used. 
Of course that won't help you if you're not using lldb-server.


Was there ever software single-stepping support in the client?

pl
___
lldb-dev mailing list
lldb-dev@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev


Re: [lldb-dev] New target; where to start with thread plans

2018-11-29 Thread Jim Ingham via lldb-dev
Ah, that’s right, we did it in debugserver as well.  Apple used to have a 
disassembly framework that we used for the purpose (separate from llvm).  But 
that’s long gone.

Jim


> On Nov 29, 2018, at 1:22 AM, Pavel Labath  wrote:
> 
> On 28/11/2018 21:05, Jim Ingham via lldb-dev wrote:
>> The main complication would be if your new target didn't support 
>> hardware-single-step.  If that's the case you will have to have a 
>> Disassembler that can predict the target PC of all instructions (when 
>> stopped at that instruction) since you'll have to use software breakpoints 
>> to drive the lowest level of stepping.  There's support in there for 
>> handling that at a high level since the first couple of iPhone ARM chips 
>> didn't have single step support but we haven't actually had on any real 
>> systems we support that lack hardware single step in years, so it may need 
>> some reviving.
> 
> Linux still uses software single stepping on arm(32), but the code for that 
> is in lldb-server, so the client doesn't even know it's being used. Of course 
> that won't help you if you're not using lldb-server.
> 
> Was there ever software single-stepping support in the client?
> 
> pl

___
lldb-dev mailing list
lldb-dev@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev