<br><br><div class="gmail_quote">On Wed, Nov 30, 2011 at 2:56 PM, Greg Clayton <span dir="ltr"><<a href="mailto:gclayton@apple.com">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;">
Yes, LLDB can do this.<br>
<br>
When you are symbolicating, are you symbolicating using an address from a live process, </blockquote><div><br></div><div>This is how I want it to work. And I want it to happen inside that process. </div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
or just using the virtual addresses in an object file itself?<br></blockquote><div><br></div><div>This is how it works now. </div><div>asan prints a line like </div><div>   /home/kcc/llvm/build/a.out+0x402661</div><div>and then addr2line/atos does symbolization offline. </div>
<div><br></div><div>--kcc </div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<br>
If you are symbolicating using an address from the file, we already have a little C++ example for you:<br>
<br>
<a href="https://llvm.org/svn/llvm-project/lldb/trunk/examples/lookup/main.cpp" target="_blank">https://llvm.org/svn/llvm-project/lldb/trunk/examples/lookup/main.cpp</a><br>
<br>
If you want to load a bunch of files from a process at the addresses they were at when a backtrace or sample was taken, let me know. The example would change a little bit, but not too much.<br>
<br>
Greg Clayton<br>
<div><div class="h5"><br>
<br>
On Nov 29, 2011, at 5:56 PM, Kostya Serebryany wrote:<br>
<br>
> Hello,<br>
><br>
> I am working on integrating AddressSanitizer (aka asan, <a href="http://clang.llvm.org/docs/AddressSanitizer.html" target="_blank">http://clang.llvm.org/docs/AddressSanitizer.html</a>) run-time library with the llvm compiler-rt.<br>

> Asan needs to symbolize PCs, i.e. given a value of a PC it needs to produce the file name and the line number (if debug info is present).<br>
> Currently, this is achieved by printing the PCs as /path/to/object/file+offset and filtering the output with a script which uses addr2line/atos.<br>
> Ideally, symbolization should happen inside the process and should not require post processing.<br>
><br>
> I would expect that lldb already has such functionality, right?<br>
> Somewhere in include/lldb/Symbol/Symtab.h?<br>
> Does it work on both Linux and Mac?<br>
> Do you think that it is possible/desirable to have this kind of code sharing between lldb and asan?<br>
> Will that work with the current build system (where lldb and compiler-rt/lib/asan are separate subprojects)?<br>
><br>
> Thanks,<br>
><br>
> --kcc<br>
</div></div>> _______________________________________________<br>
> lldb-dev mailing list<br>
> <a href="mailto:lldb-dev@cs.uiuc.edu">lldb-dev@cs.uiuc.edu</a><br>
> <a href="http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev</a><br>
<br>
</blockquote></div><br>