1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- #include "jemalloc/internal/malloc_io.h"
- #include "jemalloc/internal/util.h"
- /*
- * Define a custom assert() in order to reduce the chances of deadlock during
- * assertion failure.
- */
- #ifndef assert
- #define assert(e) do { \
- if (unlikely(config_debug && !(e))) { \
- malloc_printf( \
- "<jemalloc>: %s:%d: Failed assertion: \"%s\"\n", \
- __FILE__, __LINE__, #e); \
- abort(); \
- } \
- } while (0)
- #endif
- #ifndef not_reached
- #define not_reached() do { \
- if (config_debug) { \
- malloc_printf( \
- "<jemalloc>: %s:%d: Unreachable code reached\n", \
- __FILE__, __LINE__); \
- abort(); \
- } \
- unreachable(); \
- } while (0)
- #endif
- #ifndef not_implemented
- #define not_implemented() do { \
- if (config_debug) { \
- malloc_printf("<jemalloc>: %s:%d: Not implemented\n", \
- __FILE__, __LINE__); \
- abort(); \
- } \
- } while (0)
- #endif
- #ifndef assert_not_implemented
- #define assert_not_implemented(e) do { \
- if (unlikely(config_debug && !(e))) { \
- not_implemented(); \
- } \
- } while (0)
- #endif
- /* Use to assert a particular configuration, e.g., cassert(config_debug). */
- #ifndef cassert
- #define cassert(c) do { \
- if (unlikely(!(c))) { \
- not_reached(); \
- } \
- } while (0)
- #endif
|