Bug fix: Fast CRC Support printing is not honest
Summary:
11c5d4741a
introduces a bug that IsFastCrc32Supported() returns wrong result. Fix it. Also fix some FB internal scripts.
Closes https://github.com/facebook/rocksdb/pull/2513
Differential Revision: D5343802
Pulled By: yiwu-arbug
fbshipit-source-id: 057dc7ae3b262fe951413d1190ce60afc788cc05
This commit is contained in:
parent
397ab11152
commit
afbef65187
3
TARGETS
3
TARGETS
@ -11,7 +11,8 @@ rocksdb_compiler_flags = [
|
|||||||
"-DROCKSDB_MALLOC_USABLE_SIZE",
|
"-DROCKSDB_MALLOC_USABLE_SIZE",
|
||||||
"-DROCKSDB_RANGESYNC_PRESENT",
|
"-DROCKSDB_RANGESYNC_PRESENT",
|
||||||
"-DROCKSDB_SCHED_GETCPU_PRESENT",
|
"-DROCKSDB_SCHED_GETCPU_PRESENT",
|
||||||
"-DROCKSDB_SUPPORT_THREAD_LOCAL",
|
"-DROCKSDB_SUPPORT_THREAD_LOCAL",
|
||||||
|
"-DHAVE_SSE42",
|
||||||
"-DOS_LINUX",
|
"-DOS_LINUX",
|
||||||
# Flags to enable libs we include
|
# Flags to enable libs we include
|
||||||
"-DSNAPPY",
|
"-DSNAPPY",
|
||||||
|
@ -16,6 +16,7 @@ rocksdb_compiler_flags = [
|
|||||||
"-DROCKSDB_RANGESYNC_PRESENT",
|
"-DROCKSDB_RANGESYNC_PRESENT",
|
||||||
"-DROCKSDB_SCHED_GETCPU_PRESENT",
|
"-DROCKSDB_SCHED_GETCPU_PRESENT",
|
||||||
"-DROCKSDB_SUPPORT_THREAD_LOCAL",
|
"-DROCKSDB_SUPPORT_THREAD_LOCAL",
|
||||||
|
"-DHAVE_SSE42",
|
||||||
"-DOS_LINUX",
|
"-DOS_LINUX",
|
||||||
# Flags to enable libs we include
|
# Flags to enable libs we include
|
||||||
"-DSNAPPY",
|
"-DSNAPPY",
|
||||||
|
@ -128,7 +128,7 @@ else
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
CFLAGS+=" $DEPS_INCLUDE"
|
CFLAGS+=" $DEPS_INCLUDE"
|
||||||
CFLAGS+=" -DROCKSDB_PLATFORM_POSIX -DROCKSDB_LIB_IO_POSIX -DROCKSDB_FALLOCATE_PRESENT -DROCKSDB_MALLOC_USABLE_SIZE -DROCKSDB_RANGESYNC_PRESENT -DROCKSDB_SCHED_GETCPU_PRESENT -DROCKSDB_SUPPORT_THREAD_LOCAL"
|
CFLAGS+=" -DROCKSDB_PLATFORM_POSIX -DROCKSDB_LIB_IO_POSIX -DROCKSDB_FALLOCATE_PRESENT -DROCKSDB_MALLOC_USABLE_SIZE -DROCKSDB_RANGESYNC_PRESENT -DROCKSDB_SCHED_GETCPU_PRESENT -DROCKSDB_SUPPORT_THREAD_LOCAL -DHAVE_SSE42"
|
||||||
CXXFLAGS+=" $CFLAGS"
|
CXXFLAGS+=" $CFLAGS"
|
||||||
|
|
||||||
EXEC_LDFLAGS=" $SNAPPY_LIBS $ZLIB_LIBS $BZIP_LIBS $LZ4_LIBS $ZSTD_LIBS $GFLAGS_LIBS $NUMA_LIB $TBB_LIBS"
|
EXEC_LDFLAGS=" $SNAPPY_LIBS $ZLIB_LIBS $BZIP_LIBS $LZ4_LIBS $ZSTD_LIBS $GFLAGS_LIBS $NUMA_LIB $TBB_LIBS"
|
||||||
|
@ -93,7 +93,7 @@ else
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
CFLAGS+=" $DEPS_INCLUDE"
|
CFLAGS+=" $DEPS_INCLUDE"
|
||||||
CFLAGS+=" -DROCKSDB_PLATFORM_POSIX -DROCKSDB_LIB_IO_POSIX -DROCKSDB_FALLOCATE_PRESENT -DROCKSDB_MALLOC_USABLE_SIZE -DROCKSDB_RANGESYNC_PRESENT -DROCKSDB_SCHED_GETCPU_PRESENT -DROCKSDB_SUPPORT_THREAD_LOCAL"
|
CFLAGS+=" -DROCKSDB_PLATFORM_POSIX -DROCKSDB_LIB_IO_POSIX -DROCKSDB_FALLOCATE_PRESENT -DROCKSDB_MALLOC_USABLE_SIZE -DROCKSDB_RANGESYNC_PRESENT -DROCKSDB_SCHED_GETCPU_PRESENT -DROCKSDB_SUPPORT_THREAD_LOCAL -DHAVE_SSE42"
|
||||||
CFLAGS+=" -DSNAPPY -DGFLAGS=google -DZLIB -DBZIP2 -DLZ4 -DZSTD -DNUMA -DTBB"
|
CFLAGS+=" -DSNAPPY -DGFLAGS=google -DZLIB -DBZIP2 -DLZ4 -DZSTD -DNUMA -DTBB"
|
||||||
CXXFLAGS+=" $CFLAGS"
|
CXXFLAGS+=" $CFLAGS"
|
||||||
|
|
||||||
|
@ -374,7 +374,9 @@ uint32_t ExtendImpl(uint32_t crc, const char* buf, size_t size) {
|
|||||||
|
|
||||||
// Detect if SS42 or not.
|
// Detect if SS42 or not.
|
||||||
static bool isSSE42() {
|
static bool isSSE42() {
|
||||||
#if defined(__GNUC__) && defined(__x86_64__) && !defined(IOS_CROSS_COMPILE)
|
#ifndef HAVE_SSE42
|
||||||
|
return false;
|
||||||
|
#elif defined(__GNUC__) && defined(__x86_64__) && !defined(IOS_CROSS_COMPILE)
|
||||||
uint32_t c_;
|
uint32_t c_;
|
||||||
uint32_t d_;
|
uint32_t d_;
|
||||||
__asm__("cpuid" : "=c"(c_), "=d"(d_) : "a"(1) : "ebx");
|
__asm__("cpuid" : "=c"(c_), "=d"(d_) : "a"(1) : "ebx");
|
||||||
@ -395,11 +397,7 @@ static inline Function Choose_Extend() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
bool IsFastCrc32Supported() {
|
bool IsFastCrc32Supported() {
|
||||||
#if defined(__SSE4_2__) || defined(_WIN64)
|
|
||||||
return isSSE42();
|
return isSSE42();
|
||||||
#else
|
|
||||||
return false;
|
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Function ChosenExtend = Choose_Extend();
|
Function ChosenExtend = Choose_Extend();
|
||||||
|
Loading…
Reference in New Issue
Block a user