[PATCH] D11004: [asan] Rename the ABI versioning symbol to '__asan_version_mismatch_check' instead abusing '__asan_init'

Kuba Brecka kuba.brecka at gmail.com
Tue Jul 21 09:06:03 PDT 2015


kubabrecka retitled this revision from "[asan] Change ABI versioning to include release numbers" to "[asan] Rename the ABI versioning symbol to '__asan_version_mismatch_check' instead abusing '__asan_init'".
kubabrecka updated this revision to Diff 30261.
kubabrecka added a comment.

Hi, I've removed the build system changes, and now this patch is only about renaming the symbol.

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.


http://reviews.llvm.org/D11004

Files:
  include/llvm/Transforms/Utils/ModuleUtils.h
  lib/Transforms/Instrumentation/AddressSanitizer.cpp
  lib/Transforms/Utils/ModuleUtils.cpp
  projects/compiler-rt/lib/asan/asan_init_version.h
  projects/compiler-rt/lib/asan/asan_interface_internal.h
  projects/compiler-rt/lib/asan/asan_rtl.cc
  projects/compiler-rt/lib/asan/asan_win_dll_thunk.cc
  projects/compiler-rt/test/asan/TestCases/Darwin/interface_symbols_darwin.c
  projects/compiler-rt/test/asan/TestCases/Linux/interface_symbols_linux.c

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D11004.30261.patch
Type: text/x-patch
Size: 7880 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150721/4b03ce29/attachment.bin>


More information about the llvm-commits mailing list