Introduce SNAPPY_ATTRIBUTE_ALWAYS_INLINE.

An internal CL started using ABSL_ATTRIBUTE_ALWAYS_INLINE
from Abseil. This CL introduces equivalent functionality as
SNAPPY_ALWAYS_INLINE.

PiperOrigin-RevId: 306289650
This commit is contained in:
Victor Costan
2020-04-13 19:47:34 +00:00
parent 231b8be076
commit a4cdb5d133
4 changed files with 19 additions and 2 deletions

View File

@@ -37,7 +37,7 @@
#include <cstdint>
#include <cstring>
#include <numeric_limits>
#include <limits>
#include <string>
#include <assert.h>
@@ -107,6 +107,13 @@
#define SNAPPY_PREDICT_TRUE(x) x
#endif
// Inlining hints.
#ifdef HAVE_ATTRIBUTE_ALWAYS_INLINE
#define SNAPPY_ATTRIBUTE_ALWAYS_INLINE __attribute__((always_inline))
#else
#define SNAPPY_ATTRIBUTE_ALWAYS_INLINE
#endif
// This is only used for recomputing the tag byte table used during
// decompression; for simplicity we just remove it from the open-source
// version (anyone who wants to regenerate it can just do the call