diff options
author | Kostya Serebryany <kcc@google.com> | 2013-02-26 06:58:27 +0000 |
---|---|---|
committer | Kostya Serebryany <kcc@google.com> | 2013-02-26 06:58:27 +0000 |
commit | 4c0fc9931e5af027bee100a26062fe40283727ee (patch) | |
tree | ecf1ed318b3f90b425b5dd7c66ce8a68d61ad862 /clang/docs/MemorySanitizer.rst | |
parent | cf880b94434ddfcba2d5c7b0deb588591b0d8a08 (diff) | |
download | bcm5719-llvm-4c0fc9931e5af027bee100a26062fe40283727ee.tar.gz bcm5719-llvm-4c0fc9931e5af027bee100a26062fe40283727ee.zip |
Unify clang/llvm attributes for asan/tsan/msan (Clang part)
These are two related changes (one in llvm, one in clang).
LLVM:
- rename address_safety => sanitize_address (the enum value is the same, so we preserve binary compatibility with old bitcode)
- rename thread_safety => sanitize_thread
- rename no_uninitialized_checks -> sanitize_memory
CLANG:
- add __attribute__((no_sanitize_address)) as a synonym for __attribute__((no_address_safety_analysis))
- add __attribute__((no_sanitize_thread))
- add __attribute__((no_sanitize_memory))
for S in address thread memory
If -fsanitize=S is present and __attribute__((no_sanitize_S)) is not
set llvm attribute sanitize_S
llvm-svn: 176076
Diffstat (limited to 'clang/docs/MemorySanitizer.rst')
-rw-r--r-- | clang/docs/MemorySanitizer.rst | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/clang/docs/MemorySanitizer.rst b/clang/docs/MemorySanitizer.rst index 6ede1c36e02..fdb8a810232 100644 --- a/clang/docs/MemorySanitizer.rst +++ b/clang/docs/MemorySanitizer.rst @@ -80,6 +80,19 @@ whether MemorySanitizer is enabled. :ref:`\_\_has\_feature # endif #endif +``__attribute__((no_sanitize_memory))`` +----------------------------------------------- + +Some code should not be checked by MemorySanitizer. +One may use the function attribute +:ref:`no_sanitize_memory <langext-memory_sanitizer>` +to disable uninitialized checks in a particular function. +MemorySanitizer may still instrument such functions to avoid false positives. +This attribute may not be +supported by other compilers, so we suggest to use it together with +``__has_feature(memory_sanitizer)``. Note: currently, this attribute will be +lost if the function is inlined. + Origin Tracking =============== |