On Tue, Nov 29, 2011 at 11:08 PM, Benjamin Kramer
<[email protected]>wrote:

> On 30.11.2011, at 02:57, Kostya Serebryany <[email protected]> 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)?
>
>
> I recently extracted the DWARF parsing that's necessary to get line
> numbers from addresses out of lldb into LLVM. Take a look at llvm-dwarfdump
> and the DebugInfo library.
>
Nice! This will solve the build dependency problem. We'll look into it.


> It requires relocations to be resolved upfront though, so it won't work on
> Linux out of the box (DWARF doesn't use relocations on OS X).
>

Ugh. :(

--kcc





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

Reply via email to