bug-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH gnumach 1/3] kern: improve assert


From: Justus Winter
Subject: [PATCH gnumach 1/3] kern: improve assert
Date: Fri, 19 Dec 2014 02:48:56 +0100

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 it does improve our IPC performance.

* kern/assert.h (assert): Define macro using the ternary operator.
---
 kern/assert.h | 7 +++----
 1 file 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)
 
-- 
2.1.3




reply via email to

[Prev in Thread] Current Thread [Next in Thread]