Yes, LLDB can do this.

When you are symbolicating, are you symbolicating using an address from a live 
process, or just using the virtual addresses in an object file itself?

If you are symbolicating using an address from the file, we already have a 
little C++ example for you:

https://llvm.org/svn/llvm-project/lldb/trunk/examples/lookup/main.cpp

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.

Greg Clayton


On Nov 29, 2011, at 5:56 PM, Kostya Serebryany wrote:

> Hello, 
> 
> I am working on integrating AddressSanitizer (aka asan, 
> http://clang.llvm.org/docs/AddressSanitizer.html) run-time library with the 
> llvm compiler-rt. 
> 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). 
> 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. 
> Ideally, symbolization should happen inside the process and should not 
> require post processing. 
> 
> I would expect that lldb already has such functionality, right? 
> Somewhere in include/lldb/Symbol/Symtab.h?
> Does it work on both Linux and Mac? 
> Do you think that it is possible/desirable to have this kind of code sharing 
> between lldb and asan? 
> Will that work with the current build system (where lldb and 
> compiler-rt/lib/asan are separate subprojects)?
> 
> Thanks, 
> 
> --kcc 
> _______________________________________________
> lldb-dev mailing list
> [email protected]
> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev

_______________________________________________
lldb-dev mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev

Reply via email to