https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63888
--- Comment #36 from Jakub Jelinek <jakub at gcc dot gnu.org> --- (In reply to Yury Gribov from comment #35) > (In reply to Kostya Serebryany from comment #34) > > Frankly, I am not at all motivated to do any significant surgery in the llvm > > compiler instrumentation because for me everything works fine. > > Hm, is this related to GCC at all? Comments mention symbol resolution rules > (local aliases being one example), I think this is totally orthogonal to > compiler. It is related to the implementation of ASAN for PIC code. GCC registers globals through private aliases (so always registers globals in the current shared library, no matter whether the symbol in the end is interposed by another symbol or not), while LLVM registers globals through their exported symbols (so if a symbol is interposed, it is registered multiple times by multiple shared libraries).