xref: /aosp_15_r20/external/cronet/base/third_party/dynamic_annotations/README.chromium (revision 6777b5387eb2ff775bb5750e3f5d96f37fb7352b)
1Name: dynamic annotations
2URL: http://code.google.com/p/data-race-test/wiki/DynamicAnnotations
3Version: 4384
4License: BSD
5License File: LICENSE
6Shipped: yes
7
8ATTENTION: please avoid using these annotations in Chromium code.
9They were mainly intended to instruct the Valgrind-based version of
10ThreadSanitizer to handle atomic operations. The new version of ThreadSanitizer
11based on compiler instrumentation understands atomic operations out of the box,
12so normally you don't need the annotations.
13If you still think you do, please consider writing a comment at http://crbug.com/349861
14
15One header and one source file (dynamic_annotations.h and dynamic_annotations.c)
16in this directory define runtime macros useful for annotating synchronization
17utilities and benign data races so data race detectors can handle Chromium code
18with better precision.
19
20These files were taken from
21http://code.google.com/p/data-race-test/source/browse/?#svn/trunk/dynamic_annotations
22The files are covered under BSD license as described within the files.
23
24Local modifications:
25* made lineno an unsigned short (for -Wconstant-conversion warning fixes)
26* remove two superfluous semicolons for -Wextra-semi
27* changed various size parameters to a size_t to match the underlying runtime
28  and avoid conflicts with absl's dynamic_annotations.h.
29