[asan] Rename the ABI versioning symbol to '__asan_version_mismatch_check' instead...
authorKuba Brecka <kuba.brecka@gmail.com>
Thu, 23 Jul 2015 10:55:13 +0000 (10:55 +0000)
committerKuba Brecka <kuba.brecka@gmail.com>
Thu, 23 Jul 2015 10:55:13 +0000 (10:55 +0000)
commita11cfb990a2ef5ebfc5d5bb498cdc353900dd64d
treeb47bb7eb5f4c5da14184e0840c994cc8015c47bc
parent45dbffdc3d918e0d23638c41049cf1997c93b0d1
[asan] Rename the ABI versioning symbol to '__asan_version_mismatch_check' instead of abusing '__asan_init'

We currently version `__asan_init` and when the ABI version doesn't match, the linker gives a `undefined reference to '__asan_init_v5'` message. From this, it might not be obvious that it's actually a version mismatch error. This patch makes the error message much clearer by changing the name of the undefined symbol to be `__asan_version_mismatch_check_xxx` (followed by the version string). We obviously don't want the initializer to be named like that, so it's a separate symbol that is used only for the purpose of version checking.

Reviewed at http://reviews.llvm.org/D11004

llvm-svn: 243004
compiler-rt/lib/asan/asan_init_version.h
compiler-rt/lib/asan/asan_interface_internal.h
compiler-rt/lib/asan/asan_rtl.cc
compiler-rt/lib/asan/asan_win_dll_thunk.cc
compiler-rt/test/asan/TestCases/Darwin/interface_symbols_darwin.c
compiler-rt/test/asan/TestCases/Linux/interface_symbols_linux.c