mirror of https://github.com/google/snappy.git
Use 64 bit little endian on ppc64le.
This has tangible performance benefits. This lands https://github.com/google/snappy/pull/27
This commit is contained in:
parent
7b9532b878
commit
18488d6212
|
@ -80,9 +80,8 @@ char* CompressFragment(const char* input,
|
||||||
// Does not read *(s1 + (s2_limit - s2)) or beyond.
|
// Does not read *(s1 + (s2_limit - s2)) or beyond.
|
||||||
// Requires that s2_limit >= s2.
|
// Requires that s2_limit >= s2.
|
||||||
//
|
//
|
||||||
// Separate implementation for x86_64, for speed. Uses the fact that
|
// Separate implementation for 64-bit, little-endian cpus.
|
||||||
// x86_64 is little endian.
|
#if defined(ARCH_K8) || (defined(ARCH_PPC) && !defined(WORDS_BIGENDIAN))
|
||||||
#if defined(ARCH_K8)
|
|
||||||
static inline std::pair<size_t, bool> FindMatchLength(const char* s1,
|
static inline std::pair<size_t, bool> FindMatchLength(const char* s1,
|
||||||
const char* s2,
|
const char* s2,
|
||||||
const char* s2_limit) {
|
const char* s2_limit) {
|
||||||
|
|
|
@ -52,6 +52,10 @@
|
||||||
// Enable 64-bit optimized versions of some routines.
|
// Enable 64-bit optimized versions of some routines.
|
||||||
#define ARCH_K8 1
|
#define ARCH_K8 1
|
||||||
|
|
||||||
|
#elif defined(__ppc64__)
|
||||||
|
|
||||||
|
#define ARCH_PPC 1
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// Needed by OS X, among others.
|
// Needed by OS X, among others.
|
||||||
|
|
Loading…
Reference in New Issue