From: Damjan Marion Date: Sun, 25 Apr 2021 08:55:53 +0000 (+0200) Subject: vppinfra: add COMPILE_TIME_CONST() macro X-Git-Tag: v21.10-rc0~196 X-Git-Url: https://gerrit.fd.io/r/gitweb?a=commitdiff_plain;h=b14c49d2275f6348640572b7b481dad43f3a00d0;p=vpp.git vppinfra: add COMPILE_TIME_CONST() macro Type: improvement Change-Id: I10d7489f57bc60eb92049962b4e6ea84974f17b8 Signed-off-by: Damjan Marion --- diff --git a/src/vppinfra/clib.h b/src/vppinfra/clib.h index 05af8fe7168..4629a7defb8 100644 --- a/src/vppinfra/clib.h +++ b/src/vppinfra/clib.h @@ -120,6 +120,7 @@ /* Hints to compiler about hot/cold code. */ #define PREDICT_FALSE(x) __builtin_expect((x),0) #define PREDICT_TRUE(x) __builtin_expect((x),1) +#define COMPILE_TIME_CONST(x) __builtin_constant_p (x) /* * Compiler barrier diff --git a/src/vppinfra/string.h b/src/vppinfra/string.h index fb46a0c6a0d..76d345e16bc 100644 --- a/src/vppinfra/string.h +++ b/src/vppinfra/string.h @@ -143,7 +143,7 @@ memcpy_s_inline (void *__restrict__ dest, rsize_t dmax, * Optimize constant-number-of-bytes calls without asking * "too many questions for someone from New Jersey" */ - if (__builtin_constant_p (n)) + if (COMPILE_TIME_CONST (n)) { clib_memcpy_fast (dest, src, n); return EOK;