<div dir="ltr"><div class="markdown-here-wrapper" style><p style="margin:1.2em 0px!important">Looks good - change went in here:</p>
<pre style="font-size:0.85em;font-family:Consolas,Inconsolata,Courier,monospace;font-size:1em;line-height:1.2em;margin:1.2em 0px"><code style="font-size:0.85em;font-family:Consolas,Inconsolata,Courier,monospace;margin:0px 0.15em;padding:0px 0.3em;white-space:pre-wrap;border:1px solid rgb(234,234,234);border-top-left-radius:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px;display:inline;background-color:rgb(248,248,248);white-space:pre;overflow:auto;border-top-left-radius:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px;border:1px solid rgb(204,204,204);padding:0.5em 0.7em;display:block!important">svn commit
Sending source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
Sending source/Plugins/ObjectFile/ELF/ObjectFileELF.h
Transmitting file data ..
Committed revision 217841.
</code></pre><div title="MDH:TG9va3MgZ29vZCAtIGNoYW5nZSB3ZW50IGluIGhlcmU6PGRpdj48YnI+PC9kaXY+PGRpdj5gYGA8
L2Rpdj48ZGl2PjxkaXY+c3ZuIGNvbW1pdDwvZGl2PjxkaXY+U2VuZGluZyAmbmJzcDsgJm5ic3A7
ICZuYnNwOyAmbmJzcDtzb3VyY2UvUGx1Z2lucy9PYmplY3RGaWxlL0VMRi9PYmplY3RGaWxlRUxG
LmNwcDwvZGl2PjxkaXY+U2VuZGluZyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDtzb3VyY2Uv
UGx1Z2lucy9PYmplY3RGaWxlL0VMRi9PYmplY3RGaWxlRUxGLmg8L2Rpdj48ZGl2PlRyYW5zbWl0
dGluZyBmaWxlIGRhdGEgLi48L2Rpdj48ZGl2PkNvbW1pdHRlZCByZXZpc2lvbiAyMTc4NDEuPC9k
aXY+PC9kaXY+PGRpdj5gYGA8L2Rpdj48ZGl2Pjxicj48L2Rpdj4=" style="height:0;font-size:0em;padding:0;margin:0"></div></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Sep 15, 2014 at 3:30 PM, Todd Fiala <span dir="ltr"><<a href="mailto:tfiala@google.com" target="_blank">tfiala@google.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Perfect, thanks Stephane. Final test then I'll get it in.</div><div class="HOEnZb"><div class="h5"><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Sep 15, 2014 at 2:26 PM, Stephane Sezer <span dir="ltr"><<a href="mailto:sas@fb.com" target="_blank">sas@fb.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div>
<div><font><span style="font-size:10pt">
<div>Version with comments added.<br>
<br>
</div>
</span></font></div><div><div>
<div><font><span style="font-size:10pt">
<div><br>
<br>
On Sep 15, 2014, at 10:05 AM, Todd Fiala <<a href="mailto:tfiala@google.com" target="_blank">tfiala@google.com</a>> wrote:<br>
<br>
> Hey Stephane,<br>
> <br>
> On patch 2 - could you add some comments around these bits? It’s a little unclear what’s happening there and I want to make sure we don’t break it at some point later.<br>
> <br>
> + symbol_value_offset = -1;<br>
> <br>
> <br>
> <br>
> - uint64_t symbol_value = symbol.st_value; <br>
> + uint64_t symbol_value = symbol.st_value | symbol_value_offset;<br>
> Other than that, it looks fine. I'll wait on that for the patch submission of part 2.<br>
> <br>
> Also - not needed for the patch itself, but would be great as a follow up would be adding a unit test to verify we’re correctly marking the thumb code symbols. That’d be great if you could add a unit test for it.<br>
> <br>
> Thanks!<br>
> -Todd<br>
> <br>
> On Mon, Sep 15, 2014 at 9:38 AM, Todd Fiala <<a href="mailto:tfiala@google.com" target="_blank">tfiala@google.com</a>> wrote:<br>
> <br>
> <br>
> <br>
> Part 1 committed here:<br>
> ```<br>
> svn commit<br>
> Sending source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp<br>
> Transmitting file data .<br>
> Committed revision 217782.<br>
> ```<br>
> <br>
> Stephane - it would be great if you could add a unit test to verify those symbols are getting stripped. Let me know if you need help figuring out how the unit tests work.<br>
> <br>
> Looking at Part 2 now.<br>
> <br>
> -Todd<br>
> <br>
> On Wed, Sep 10, 2014 at 12:55 PM, Stephane Sezer <<a href="mailto:sas@fb.com" target="_blank">sas@fb.com</a>> wrote:<br>
> Re-sending these, as the first email didn’t reach the mailing list for some reason.<br>
> <br>
> <br>
> <br>
> On Sep 9, 2014, at 5:27 PM, Stephane Sezer <<a href="mailto:sas@fb.com" target="_blank">sas@fb.com</a>> wrote:<br>
> <br>
> > Two patches here:<br>
> > <br>
> > [PATCH 1/2] Skip $t* and $a* symbols in ObjectFileELF.<br>
> > <br>
> > ELF objects contain marker symbols to differentiate between ARM and<br>
> > THUMB functions. Instead of storing them internally and having garbage<br>
> > show up when symbols are searched for by the user, we can just skip them<br>
> > and not store them at all, as we never actually need them.<br>
> > <br>
> > [PATCH 2/2] Store the thumbness of a function in symbol flags.<br>
> > <br>
> > This allows us to fixup the address of the symbol as soon as we parse it<br>
> > so that lldb is not confused thinking there are two different symbols in<br>
> > the binary (one with the thumb bit, one without). Also, differentiating<br>
> > between THUMB and ARM symbols allows the debugger to place the right<br>
> > type of breakpoint.<br>
> > <br>
> > <br>
> > <0001-Skip-t-and-a-symbols-in-ObjectFileELF.patch><0002-Store-the-thumbness-of-a-function-in-symbol-flags.patch><br>
> <br>
> <br>
> <br>
> <br>
> -- <br>
> Todd Fiala | Software Engineer | <a href="mailto:tfiala@google.com" target="_blank">tfiala@google.com</a> | <a href="tel:650-943-3180" value="+16509433180" target="_blank">650-943-3180</a><br>
> <br>
> <br>
> <br>
> <br>
> -- <br>
> Todd Fiala | Software Engineer | <a href="mailto:tfiala@google.com" target="_blank">tfiala@google.com</a> | <a href="tel:650-943-3180" value="+16509433180" target="_blank">650-943-3180</a><br>
> <br>
<br>
</div>
</span></font></div>
</div></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>
</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>