X-Git-Url: https://wimlib.net/git/?p=wimlib;a=blobdiff_plain;f=include%2Fwimlib%2Fcompiler.h;h=d32d092b964dfda938aa82cd4343edb085e9e103;hp=19a9ebe70c6763cd9efb91242487a80eb45dd78d;hb=5dea227530b479ee9436b8eb46df3ec3ba009c0d;hpb=9b3bd8bf81681c6ac3216f62bbf7c7cf63e9bb17 diff --git a/include/wimlib/compiler.h b/include/wimlib/compiler.h index 19a9ebe7..d32d092b 100644 --- a/include/wimlib/compiler.h +++ b/include/wimlib/compiler.h @@ -19,6 +19,9 @@ # define _malloc_attribute __attribute__((malloc)) # define _warn_unused_result_attribute __attribute__((warn_unused_result)) # define _aligned_attribute(size) __attribute__((aligned(size))) +# define likely(x) __builtin_expect(!!(x), 1) +# define unlikely(x) __builtin_expect(!!(x), 0) +# define inline inline __attribute__((always_inline)) #else # define WIMLIBAPI # define _always_inline_attribute inline @@ -28,6 +31,8 @@ # define _malloc_attribute # define _warn_unused_result_attribute # define _aligned_attribute(size) +# define likely(x) (x) +# define unlikely(x) (x) #endif /* __GNUC__ */ #endif /* _WIMLIB_COMPILER_H */