Merge pull request #13598 from yashykt/tlsremoveassert

Remove asserts from tls_gcc.h
pull/13058/head
Yash Tibrewal 7 years ago committed by GitHub
commit c1b64d9c17
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 40
      include/grpc/support/tls_gcc.h

@ -26,44 +26,6 @@
/** Thread local storage based on gcc compiler primitives. /** Thread local storage based on gcc compiler primitives.
#include tls.h to use this - and see that file for documentation */ #include tls.h to use this - and see that file for documentation */
#ifndef NDEBUG
struct gpr_gcc_thread_local {
intptr_t value;
bool* inited;
};
#define GPR_TLS_DECL(name) \
static bool name##_inited = false; \
static __thread struct gpr_gcc_thread_local name = {0, &(name##_inited)}
#define gpr_tls_init(tls) \
do { \
GPR_ASSERT(*((tls)->inited) == false); \
*((tls)->inited) = true; \
} while (0)
/** It is allowed to call gpr_tls_init after gpr_tls_destroy is called. */
#define gpr_tls_destroy(tls) \
do { \
GPR_ASSERT(*((tls)->inited)); \
*((tls)->inited) = false; \
} while (0)
#define gpr_tls_set(tls, new_value) \
do { \
GPR_ASSERT(*((tls)->inited)); \
(tls)->value = (new_value); \
} while (0)
#define gpr_tls_get(tls) \
({ \
GPR_ASSERT(*((tls)->inited)); \
(tls)->value; \
})
#else /* NDEBUG */
struct gpr_gcc_thread_local { struct gpr_gcc_thread_local {
intptr_t value; intptr_t value;
}; };
@ -80,6 +42,4 @@ struct gpr_gcc_thread_local {
#define gpr_tls_set(tls, new_value) (((tls)->value) = (new_value)) #define gpr_tls_set(tls, new_value) (((tls)->value) = (new_value))
#define gpr_tls_get(tls) ((tls)->value) #define gpr_tls_get(tls) ((tls)->value)
#endif /* NDEBUG */
#endif /* GRPC_SUPPORT_TLS_GCC_H */ #endif /* GRPC_SUPPORT_TLS_GCC_H */

Loading…
Cancel
Save