| Index: third_party/tcmalloc/chromium/src/base/dynamic_annotations.h
 | 
| ===================================================================
 | 
| --- third_party/tcmalloc/chromium/src/base/dynamic_annotations.h	(revision 126022)
 | 
| +++ third_party/tcmalloc/chromium/src/base/dynamic_annotations.h	(working copy)
 | 
| @@ -378,14 +378,9 @@
 | 
|  
 | 
|  #define ANNOTALYSIS_STATIC_INLINE
 | 
|  #define ANNOTALYSIS_SEMICOLON_OR_EMPTY_BODY ;
 | 
| -#define ANNOTALYSIS_IGNORE_READS_BEGIN
 | 
| -#define ANNOTALYSIS_IGNORE_READS_END
 | 
| -#define ANNOTALYSIS_IGNORE_WRITES_BEGIN
 | 
| -#define ANNOTALYSIS_IGNORE_WRITES_END
 | 
| -#define ANNOTALYSIS_UNPROTECTED_READ
 | 
|  
 | 
| -#if defined(__GNUC__) && (!defined(SWIG)) && (!defined(__clang__)) && \
 | 
| -    defined(__SUPPORT_TS_ANNOTATION__) && defined(__SUPPORT_DYN_ANNOTATION__)
 | 
| +#if defined(__GNUC__) && defined(__SUPPORT_TS_ANNOTATION__) \
 | 
| +  && (!defined(SWIG)) && defined(__SUPPORT_DYN_ANNOTATION__)
 | 
|  
 | 
|  #if DYNAMIC_ANNOTATIONS_ENABLED == 0
 | 
|  #define ANNOTALYSIS_ONLY 1
 | 
| @@ -394,23 +389,22 @@
 | 
|  #undef ANNOTALYSIS_SEMICOLON_OR_EMPTY_BODY
 | 
|  #define ANNOTALYSIS_SEMICOLON_OR_EMPTY_BODY { (void)file; (void)line; }
 | 
|  #endif
 | 
| +#define ANNOTALYSIS_IGNORE_READS_BEGIN   __attribute__ ((ignore_reads_begin))
 | 
| +#define ANNOTALYSIS_IGNORE_READS_END     __attribute__ ((ignore_reads_end))
 | 
| +#define ANNOTALYSIS_IGNORE_WRITES_BEGIN  __attribute__ ((ignore_writes_begin))
 | 
| +#define ANNOTALYSIS_IGNORE_WRITES_END    __attribute__ ((ignore_writes_end))
 | 
| +#define ANNOTALYSIS_UNPROTECTED_READ     __attribute__ ((unprotected_read))
 | 
|  
 | 
| -/* Only emit attributes when annotalysis is enabled. */
 | 
| -#if defined(__SUPPORT_TS_ANNOTATION__) && defined(__SUPPORT_DYN_ANNOTATION__)
 | 
| -#undef  ANNOTALYSIS_IGNORE_READS_BEGIN
 | 
| -#define ANNOTALYSIS_IGNORE_READS_BEGIN  __attribute__ ((ignore_reads_begin))
 | 
| -#undef  ANNOTALYSIS_IGNORE_READS_END
 | 
| -#define ANNOTALYSIS_IGNORE_READS_END    __attribute__ ((ignore_reads_end))
 | 
| -#undef  ANNOTALYSIS_IGNORE_WRITES_BEGIN
 | 
| -#define ANNOTALYSIS_IGNORE_WRITES_BEGIN __attribute__ ((ignore_writes_begin))
 | 
| -#undef  ANNOTALYSIS_IGNORE_WRITES_END
 | 
| -#define ANNOTALYSIS_IGNORE_WRITES_END   __attribute__ ((ignore_writes_end))
 | 
| -#undef  ANNOTALYSIS_UNPROTECTED_READ
 | 
| -#define ANNOTALYSIS_UNPROTECTED_READ    __attribute__ ((unprotected_read))
 | 
| -#endif
 | 
| +#else
 | 
|  
 | 
| -#endif // defined(__GNUC__) && (!defined(SWIG)) && (!defined(__clang__))
 | 
| +#define ANNOTALYSIS_IGNORE_READS_BEGIN
 | 
| +#define ANNOTALYSIS_IGNORE_READS_END
 | 
| +#define ANNOTALYSIS_IGNORE_WRITES_BEGIN
 | 
| +#define ANNOTALYSIS_IGNORE_WRITES_END
 | 
| +#define ANNOTALYSIS_UNPROTECTED_READ
 | 
|  
 | 
| +#endif
 | 
| +
 | 
|  /* Use the macros above rather than using these functions directly. */
 | 
|  #ifdef __cplusplus
 | 
|  extern "C" {
 | 
| @@ -610,7 +604,7 @@
 | 
|      #undef ANNOTATE_UNPROTECTED_READ
 | 
|      template <class T>
 | 
|      inline T ANNOTATE_UNPROTECTED_READ(const volatile T &x)
 | 
| -         ANNOTALYSIS_UNPROTECTED_READ {
 | 
| +        __attribute__ ((unprotected_read)) {
 | 
|        ANNOTATE_IGNORE_READS_BEGIN();
 | 
|        T res = x;
 | 
|        ANNOTATE_IGNORE_READS_END();
 | 
| 
 |