MEDIUM: xxhash: use the XXH_INLINE_ALL macro to inline all functions

This way we make all xxhash functions inline, with implementations being
directly included within xxhash.h.

Makefile is updated as well, since we don't need to compile and link
xxhash.o anymore.

Inlining should improve performance on small data inputs.
This commit is contained in:
Dragan Dosen 2020-12-22 14:46:47 +01:00 committed by Willy Tarreau
parent 967e7e79af
commit 6f7cc11e6d
3 changed files with 10 additions and 1 deletions

View File

@ -847,7 +847,7 @@ OBJS += src/mux_h2.o src/mux_fcgi.o src/http_ana.o src/stream.o \
src/mworker-prog.o src/signal.o src/proto_udp.o src/lb_map.o \
src/sock_inet.o src/ev_select.o src/cfgparse-tcp.o \
src/action.o src/thread.o src/sha1.o src/ebmbtree.o \
src/cfgparse-unix.o src/dict.o src/xxhash.o src/time.o \
src/cfgparse-unix.o src/dict.o src/time.o \
src/hpack-dec.o src/arg.o src/hpack-tbl.o src/eb64tree.o \
src/chunk.o src/shctx.o src/regex.o src/fcgi.o src/eb32tree.o \
src/eb32sctree.o src/dynbuf.o src/pipe.o src/lru.o \

View File

@ -388,4 +388,11 @@
#define MAX_POLLERS 10
#endif
/* Make all xxhash functions inline, with implementations being directly
* included within xxhash.h.
*/
#ifndef XXH_INLINE_ALL
#define XXH_INLINE_ALL
#endif
#endif /* _HAPROXY_DEFAULTS_H */

View File

@ -75,6 +75,8 @@ XXH32 6.8 GB/s 6.0 GB/s
extern "C" {
#endif
#include <haproxy/defaults.h>
/* ****************************
* INLINE mode
******************************/