diff options
author | Alexey Samsonov <vonosmas@gmail.com> | 2014-05-29 01:44:13 +0000 |
---|---|---|
committer | Alexey Samsonov <vonosmas@gmail.com> | 2014-05-29 01:44:13 +0000 |
commit | 7728610d24763bd948fea59bfbce21e2085e6879 (patch) | |
tree | c0572cccd278ef32b1ae7c18b44d893843ae6256 /lib/Transforms/Instrumentation | |
parent | 11ef9456a8062ba1db499f916661dca7c7dd6529 (diff) | |
download | llvm-7728610d24763bd948fea59bfbce21e2085e6879.tar.gz llvm-7728610d24763bd948fea59bfbce21e2085e6879.tar.bz2 llvm-7728610d24763bd948fea59bfbce21e2085e6879.tar.xz |
[ASan] Hoist blacklisting globals from init-order checking to Clang.
Clang knows about the sanitizer blacklist and it makes no sense to
add global to the list of llvm.asan.dynamically_initialized_globals if it
will be blacklisted in the instrumentation pass anyway. Instead, we should
do as much blacklisting as possible (if not all) in the frontend.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@209790 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Transforms/Instrumentation')
-rw-r--r-- | lib/Transforms/Instrumentation/AddressSanitizer.cpp | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/lib/Transforms/Instrumentation/AddressSanitizer.cpp b/lib/Transforms/Instrumentation/AddressSanitizer.cpp index ae51179a30..1730cff325 100644 --- a/lib/Transforms/Instrumentation/AddressSanitizer.cpp +++ b/lib/Transforms/Instrumentation/AddressSanitizer.cpp @@ -1069,8 +1069,6 @@ bool AddressSanitizerModule::runOnModule(Module &M) { // Determine whether this global should be poisoned in initialization. bool GlobalHasDynamicInitializer = DynamicallyInitializedGlobals.Contains(G); - // Don't check initialization order if this global is blacklisted. - GlobalHasDynamicInitializer &= !BL->isIn(*G, "init"); StructType *NewTy = StructType::get(Ty, RightRedZoneTy, NULL); Constant *NewInitializer = ConstantStruct::get( |