[PATCH 15/21] util.h: Provide MIN and MAX macros

Ian Jackson ijackson at chiark.greenend.org.uk
Thu Apr 24 02:37:34 BST 2014


Signed-off-by: Ian Jackson <ijackson at chiark.greenend.org.uk>
---
 util.h |    8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/util.h b/util.h
index 816c056..1f43c5e 100644
--- a/util.h
+++ b/util.h
@@ -51,4 +51,12 @@ extern void send_nak(const struct comm_addr *dest, uint32_t our_index,
 
 extern int consttime_memeq(const void *s1, const void *s2, size_t n);
 
+#define MINMAX(ae,be,op) ({			\
+	typeof((ae)) a=(ae);			\
+	typeof((be)) b=(be);			\
+	a op b ? a : b;				\
+    })
+#define MAX(a,b) MINMAX((a),(b),>)
+#define MIN(a,b) MINMAX((a),(b),<)
+
 #endif /* util_h */
-- 
1.7.10.4




More information about the sgo-software-discuss mailing list