[lldb-dev] Interpretation of GDB-RSP step commands

Aidan Dodds aidan at codeplay.com
Tue Aug 19 06:56:57 PDT 2014

Hi Matthew,

This link seems to give some details:

cycle step *(draft)* 	|i|addr|,|nnn 	Step the remote target by a single 
clock cycle. If |,|nnn is present, cycle step nnn cycles. If addr is 
present, cycle step starting at that address.

Where as:

step 	|s|addr 	addr is address to resume. If addr is omitted, resume at 
same address.

I believe that step should execute one whole machine instruction or one 
instruction packet depending on the architecture.  The S command should 
step into call instructions, not over.  Stepping over anything is a task 
for the debugger, and is managed by coordinating breakpoints, stepping 
and continuing.

I cant imagine the 'i' command is commonly supported however since I 
presume it would require very complex and tight coupling between the 
processor running the stub and the processor being debugged as the clock 
is not typical accessible.  For regular source level debugging this 
level of control is not typical required.


On 19/08/2014 13:59, Matthew Gardiner wrote:
> Sorry, I should have been more direct in this post...
> Does anyone actually know the difference in the GDB-RSP i and s commands?
> I'd welcome your insight.
> thanks
> Matt
> Matthew Gardiner wrote:
>> Hi Folks,
>> I'm poring over the gdb pdf trying to understand the difference 
>> between the s and i commands.
>> After chatting with a colleague we came up with 2 ideas:
>> 1. i means a single instruction step, and s is an instruction step 
>> but step over CALL instructions.
>> OR
>> 2. i means advance the clock once, i.e. by a single word in a 
>> multi-word instruction. And s means a single instruction step.
>> All comments welcome!
>> thanks
>> Matt
>> Member of the CSR plc group of companies. CSR plc registered in 
>> England and Wales, registered number 4187346, registered office 
>> Churchill House, Cambridge Business Park, Cowley Road, Cambridge, CB4 
>> 0WZ, United Kingdom
>> More information can be found at www.csr.com. Keep up to date with 
>> CSR on our technical blog, www.csr.com/blog, CSR people blog, 
>> www.csr.com/people, YouTube, www.youtube.com/user/CSRplc, Facebook, 
>> www.facebook.com/pages/CSR/191038434253534, or follow us on Twitter 
>> at www.twitter.com/CSR_plc.
>> New for 2014, you can now access the wide range of products powered 
>> by aptX at www.aptx.com.
>> _______________________________________________
>> lldb-dev mailing list
>> lldb-dev at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev
>> To report this email as spam click 
>> https://www.mailcontrol.com/sr/SLxusfELbczGX2PQPOmvUjg7ce8j6mWJ4GmDxhB89llOaJtRI!liNxCHjGJhJAM3g+rZVLhWkBsJwVIOzJj0SQ== 
>> .
> _______________________________________________
> lldb-dev mailing list
> lldb-dev at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/lldb-dev/attachments/20140819/babb05d9/attachment.html>

More information about the lldb-dev mailing list