diff options
author | Justus Winter <4winter@informatik.uni-hamburg.de> | 2014-12-19 01:49:09 +0100 |
---|---|---|
committer | Justus Winter <4winter@informatik.uni-hamburg.de> | 2015-02-20 18:59:50 +0100 |
commit | c2d5ad6f96746593257eb6aba02aae5de3d93664 (patch) | |
tree | 7fbf2ffc2064c334c48978c74764988b31feb5fe | |
parent | f2550dfc73da3951b411157d73bb4ad7bd2ea0b2 (diff) |
kern: improve assert
Use the ternary operator to implement `assert' like it is done in the
glibc. The glibcs changelog does not mention the rationale behind
this change, but doing the same seems to improve our IPC performance.
* kern/assert.h (assert): Define macro using the ternary operator.
-rw-r--r-- | kern/assert.h | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/kern/assert.h b/kern/assert.h index b074fbb..bd2a8be 100644 --- a/kern/assert.h +++ b/kern/assert.h @@ -39,10 +39,9 @@ extern void Assert(const char *exp, const char *filename, int line) __attribute__ ((noreturn)); #define assert(ex) \ -MACRO_BEGIN \ - if (!(ex)) \ - Assert(#ex, __FILE__, __LINE__); \ -MACRO_END + ((ex) \ + ? (void) (0) \ + : Assert (#ex, __FILE__, __LINE__)) #define assert_static(x) assert(x) |