assert: extend likely macro to be called when silent assertions are off
This commit is contained in:
parent
d059a955ae
commit
5db46ab9e6
1 changed files with 14 additions and 3 deletions
|
@ -23,8 +23,19 @@
|
||||||
|
|
||||||
#include_next <assert.h>
|
#include_next <assert.h>
|
||||||
|
|
||||||
|
|
||||||
#if defined(CONFIG_COMPILER_OPTIMIZATION_ASSERTIONS_SILENT) && !defined(NDEBUG)
|
#if defined(CONFIG_COMPILER_OPTIMIZATION_ASSERTIONS_SILENT) && !defined(NDEBUG)
|
||||||
#undef assert
|
#undef assert
|
||||||
#define assert(__e) (likely(__e)) ? (void)0 : abort()
|
#define assert(__e) (likely(__e)) ? (void)0 : abort()
|
||||||
|
#else
|
||||||
|
/* moved part of toolchain provided assert to there then
|
||||||
|
* we can tweak the original assert macro to perform likely
|
||||||
|
* before deliver it to original toolchain implementation
|
||||||
|
*/
|
||||||
|
#undef assert
|
||||||
|
#ifdef NDEBUG
|
||||||
|
# define assert(__e) ((void)0)
|
||||||
|
#else
|
||||||
|
# define assert(__e) (likely(__e) ? (void)0 : __assert_func (__FILE__, __LINE__, \
|
||||||
|
__ASSERT_FUNC, #__e))
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in a new issue