Hi Jose, On 12 April 2016 at 17:03, Jose Fonseca <[email protected]> wrote: > libasan is never linked to shared objects (which doesn't go well with > -z,defs). It must either be linked to the main executable, or (more > practically for OpenGL drivers) be pre-loaded via LD_PRELOAD. > > Otherwise works. > > I didn't find anything with llvmpipe. I suspect the fact that the > JIT compiled code isn't instrumented means there are lots of errors it > can't catch. > > But for non-JIT drivers, the Address/Leak Sanitizers seem like a faster > alternative to Valgrind. > > Usage (Ubuntu 15.10): > > scons asan=1 libgl-xlib > export > LD_LIBRARY_PATH=$PWD/build/linux-x86_64-debug/gallium/targets/libgl-xlib > LD_PRELOAD=libasan.so.2 any-opengl-application
Just a bit of more info for anyone unfamiliar/interested. Not meant to stir the waters. Traditionally, the sanitizers were static libraries that one used for link in each binary. As of recently one can opt for the shared library libasan.so. Imho should opt against using the shared lib pro temp. as it has multiple drawbacks (experimental, unsupported, has worse performance ...) [1]. -Emil [1] https://github.com/google/sanitizers/wiki/AddressSanitizerAsDso _______________________________________________ mesa-dev mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-dev
