[PATCH] D25885: [docs] Update the TSan and MSan docs to refer to the new no_sanitize attribute

Anna Zaks via llvm-commits llvm-commits at lists.llvm.org
Fri Oct 21 16:26:55 PDT 2016


zaks.anna created this revision.
zaks.anna added reviewers: kcc, dvyukov.
zaks.anna added subscribers: llvm-commits, kubabrecka.

TSan and MSan were the only remaining sanitizers referring to the deprecated attribute for issue suppression. Update the docs to recommend `__attribute__((no_sanitize("...")))` instead.


https://reviews.llvm.org/D25885

Files:
  docs/MemorySanitizer.rst
  docs/ThreadSanitizer.rst


Index: docs/ThreadSanitizer.rst
===================================================================
--- docs/ThreadSanitizer.rst
+++ docs/ThreadSanitizer.rst
@@ -83,11 +83,11 @@
     #  endif
     #endif
 
-``__attribute__((no_sanitize_thread))``
+``__attribute__((no_sanitize("thread")))``
 -----------------------------------------------
 
 Some code should not be instrumented by ThreadSanitizer.  One may use the
-function attribute `no_sanitize_thread` to disable instrumentation of plain
+function attribute ``no_sanitize("thread")`` to disable instrumentation of plain
 (non-atomic) loads/stores in a particular function.  ThreadSanitizer still
 instruments such functions to avoid false positives and provide meaningful stack
 traces.  This attribute may not be supported by other compilers, so we suggest
@@ -99,9 +99,9 @@
 ThreadSanitizer supports ``src`` and ``fun`` entity types in
 :doc:`SanitizerSpecialCaseList`, that can be used to suppress data race reports
 in the specified source files or functions. Unlike functions marked with
-`no_sanitize_thread` attribute, blacklisted functions are not instrumented at
-all. This can lead to false positives due to missed synchronization via atomic
-operations and missed stack frames in reports.
+``no_sanitize("thread")`` attribute, blacklisted functions are not instrumented
+at all. This can lead to false positives due to missed synchronization via
+atomic operations and missed stack frames in reports.
 
 Limitations
 -----------
Index: docs/MemorySanitizer.rst
===================================================================
--- docs/MemorySanitizer.rst
+++ docs/MemorySanitizer.rst
@@ -76,14 +76,14 @@
     #  endif
     #endif
 
-``__attribute__((no_sanitize_memory))``
+``__attribute__((no_sanitize("memory")))``
 -----------------------------------------------
 
 Some code should not be checked by MemorySanitizer.  One may use the function
-attribute `no_sanitize_memory` 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)``.
+attribute ``no_sanitize("memory")`` 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)``.
 
 Blacklist
 ---------


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D25885.75501.patch
Type: text/x-patch
Size: 2554 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20161021/861e423e/attachment.bin>


More information about the llvm-commits mailing list