By code inspection, asan does not attempt to symbolicate the frames coming from
a dynamic library:
if filetype == "DYLIB":
load_addr = "0x0"
if DEBUG:
print "atos -o %s -arch %s -l %s" % (binary, arch, load_addr)
pipes[binary] = subprocess.Popen(["atos", "-o", binary, "-arch", arch, "-l", load_addr],
stdin=subprocess.PIPE, stdout=subprocess.PIPE,)
I also tested this out on a toy example; here the use-after-free happens in a
dylib:
da0603a-dhcp178:bin zaks$ ./a.out 2>&1 |
/Users/zaks/workspace/llvmgit/llvm/projects/compiler-rt/lib/asan/scripts/asan_sy
mbolize.py=================================================================
==59636== ERROR: AddressSanitizer heap-use-after-free on address 0x0001067c4b80
at pc 0x1062caf03 bp 0x7fff63e608b0 sp 0x7fff63e608a8
READ of size 4 at 0x0001067c4b80 thread T0
atos -o
/Applications/Xcode.app/Contents/Developer/Toolchains/iOS6.0.xctoolchain/usr/bin
/ex.dylib -arch x86_64 -l 0x0
#0 0x1062caf02 in 0x00000f03 (in ex.dylib)
atos -o
/Applications/Xcode.app/Contents/Developer/Toolchains/iOS6.0.xctoolchain/usr/bin
/./a.out -arch x86_64 -l 0x104261000
got symbolicator for
/Applications/Xcode.app/Contents/Developer/Toolchains/iOS6.0.xctoolchain/usr/bin
/a.out, base address 100000000
#1 0x104262584 in start (in a.out) + 52
#2 0x1
> What version of the product are you using? On what operating system?
TOT clang; Lion
Original issue reported on code.google.com by zaks.a...@gmail.com on 18 Jul 2012 at 5:26
Original issue reported on code.google.com by
zaks.a...@gmail.com
on 18 Jul 2012 at 5:26