<div dir="ltr">Great, thanks Greg!</div><div class="gmail_extra"><br><br><div class="gmail_quote">On Mon, Mar 24, 2014 at 10:59 AM, Greg Clayton <span dir="ltr"><<a href="mailto:gclayton@apple.com" target="_blank">gclayton@apple.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">This size is primarily for ARM and Thumb breakpoints. The NativeProcessProtocol and NativeThreadProtocol protocol will be "I will do exactly what you tell me" and they shouldn't need to know how to dig through the object files to find the CPU map that shows exactly which addresses are ARM and which are Thumb. Sending the size field of 2 (for Thumb) and 4 (for ARM) helps the protocol to do its job. Most architectures will only have 1 size that is used (1 byte for x86 and x86_64 and 4 for PowerPC, etc). So this can mostly be ignored for non ARM targets.<br>
<br>
In debugserver, the Z packets that set the breakpoints specify the size.<br>
<span class="HOEnZb"><font color="#888888"><br>
Greg<br>
</font></span><div class="HOEnZb"><div class="h5"><br>
On Mar 24, 2014, at 10:33 AM, Todd Fiala <<a href="mailto:tfiala@google.com">tfiala@google.com</a>> wrote:<br>
<br>
> Hey Greg,<br>
><br>
> For this method in NativeProcessProtocol:<br>
><br>
> virtual Error<br>
> SetBreakpoint (lldb::addr_t addr, size_t size, bool hardware);<br>
><br>
> What exactly is the size meant to represent?<br>
><br>
> Also, is this method meant to be able to succeed if the breakpoint address isn't yet loaded, or should it fail if the address isn't loaded yet and assume that the caller would be watching for module load events and handle buffering breakpoints until the address is available?<br>
><br>
> Can you point me to where debugserver implements the equivalent?<br>
><br>
> Thanks!<br>
> --<br>
> Todd Fiala | Software Engineer | <a href="mailto:tfiala@google.com">tfiala@google.com</a> | <a href="tel:650-943-3180" value="+16509433180">650-943-3180</a><br>
><br>
<br>
</div></div></blockquote></div><br><br clear="all"><div><br></div>-- <br><div dir="ltr"><table cellspacing="0" cellpadding="0" style="color:rgb(136,136,136);font-family:'Times New Roman'"><tbody><tr style="color:rgb(85,85,85);font-family:sans-serif;font-size:small">
<td nowrap style="border-top-style:solid;border-top-color:rgb(213,15,37);border-top-width:2px">Todd Fiala |</td><td nowrap style="border-top-style:solid;border-top-color:rgb(51,105,232);border-top-width:2px"> Software Engineer |</td>
<td nowrap style="border-top-style:solid;border-top-color:rgb(0,153,57);border-top-width:2px"> <a href="mailto:tfiala@google.com" style="color:rgb(17,85,204)" target="_blank"><span style="background-color:rgb(255,255,204);color:rgb(34,34,34);background-repeat:initial initial">tfiala@google.com</span></a> |</td>
<td nowrap style="border-top-style:solid;border-top-color:rgb(238,178,17);border-top-width:2px"><font color="#1155cc"> <a>650-943-3180</a></font></td></tr></tbody></table><br></div>
</div>