[llvm] 5ecb161 - Revert "[llvm] add zstd to `llvm::compression` namespace"
Cole Kissane via llvm-commits
llvm-commits at lists.llvm.org
Wed Jul 13 19:48:54 PDT 2022
Author: Cole Kissane
Date: 2022-07-13T19:48:29-07:00
New Revision: 5ecb161c647ba5703ec3351becc6f349b92edaa2
URL: https://github.com/llvm/llvm-project/commit/5ecb161c647ba5703ec3351becc6f349b92edaa2
DIFF: https://github.com/llvm/llvm-project/commit/5ecb161c647ba5703ec3351becc6f349b92edaa2.diff
LOG: Revert "[llvm] add zstd to `llvm::compression` namespace"
This reverts commit cef07169ec9f46fd25291a3218cf12bef324ea0c.
Added:
Modified:
llvm/CMakeLists.txt
llvm/cmake/config-ix.cmake
llvm/cmake/modules/LLVMConfig.cmake.in
llvm/include/llvm/Config/llvm-config.h.cmake
llvm/include/llvm/Support/Compression.h
llvm/lib/Support/CMakeLists.txt
llvm/lib/Support/Compression.cpp
llvm/test/lit.site.cfg.py.in
llvm/unittests/Support/CompressionTest.cpp
utils/bazel/llvm_configs/llvm-config.h.cmake
Removed:
llvm/cmake/modules/FindZSTD.cmake
################################################################################
diff --git a/llvm/CMakeLists.txt b/llvm/CMakeLists.txt
index 45399dc0537e1..53c4158866edc 100644
--- a/llvm/CMakeLists.txt
+++ b/llvm/CMakeLists.txt
@@ -438,8 +438,6 @@ endif()
set(LLVM_ENABLE_ZLIB "ON" CACHE STRING "Use zlib for compression/decompression if available. Can be ON, OFF, or FORCE_ON")
-set(LLVM_ENABLE_ZSTD "ON" CACHE STRING "Use zstd for compression/decompression if available. Can be ON, OFF, or FORCE_ON")
-
set(LLVM_ENABLE_CURL "OFF" CACHE STRING "Use libcurl for the HTTP client if available. Can be ON, OFF, or FORCE_ON")
set(LLVM_ENABLE_HTTPLIB "OFF" CACHE STRING "Use cpp-httplib HTTP server library if available. Can be ON, OFF, or FORCE_ON")
diff --git a/llvm/cmake/config-ix.cmake b/llvm/cmake/config-ix.cmake
index 90e02a231e5ea..1d6743d9f4603 100644
--- a/llvm/cmake/config-ix.cmake
+++ b/llvm/cmake/config-ix.cmake
@@ -138,29 +138,6 @@ else()
set(LLVM_ENABLE_ZLIB 0)
endif()
-if(LLVM_ENABLE_ZSTD)
- if(LLVM_ENABLE_ZSTD STREQUAL FORCE_ON)
- find_package(ZSTD REQUIRED)
- elseif(NOT LLVM_USE_SANITIZER MATCHES "Memory.*")
- find_package(ZSTD)
- endif()
- if(ZSTD_FOUND)
- # Check if zstd we found is usable; for example, we may have found a 32-bit
- # library on a 64-bit system which would result in a link-time failure.
- cmake_push_check_state()
- list(APPEND CMAKE_REQUIRED_INCLUDES ${ZSTD_INCLUDE_DIR})
- list(APPEND CMAKE_REQUIRED_LIBRARIES ${ZSTD_LIBRARY})
- check_symbol_exists(ZSTD_compress zstd.h HAVE_ZSTD)
- cmake_pop_check_state()
- if(LLVM_ENABLE_ZSTD STREQUAL FORCE_ON AND NOT HAVE_ZSTD)
- message(FATAL_ERROR "Failed to configure zstd")
- endif()
- endif()
- set(LLVM_ENABLE_ZSTD "${HAVE_ZSTD}")
-else()
- set(LLVM_ENABLE_ZSTD 0)
-endif()
-
if(LLVM_ENABLE_LIBXML2)
if(LLVM_ENABLE_LIBXML2 STREQUAL FORCE_ON)
find_package(LibXml2 REQUIRED)
diff --git a/llvm/cmake/modules/FindZSTD.cmake b/llvm/cmake/modules/FindZSTD.cmake
deleted file mode 100644
index 43ccf72321386..0000000000000
--- a/llvm/cmake/modules/FindZSTD.cmake
+++ /dev/null
@@ -1,21 +0,0 @@
-find_path(ZSTD_INCLUDE_DIR
- NAMES zstd.h
- HINTS ${ZSTD_ROOT_DIR}/include)
-
-find_library(ZSTD_LIBRARY
- NAMES zstd
- HINTS ${ZSTD_ROOT_DIR}/lib)
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(
- ZSTD DEFAULT_MSG
- ZSTD_LIBRARY ZSTD_INCLUDE_DIR)
-
-if(ZSTD_FOUND)
- set(ZSTD_LIBRARIES ${ZSTD_LIBRARY})
- set(ZSTD_INCLUDE_DIRS ${ZSTD_INCLUDE_DIR})
-endif()
-
-mark_as_advanced(
- ZSTD_INCLUDE_DIR
- ZSTD_LIBRARY)
diff --git a/llvm/cmake/modules/LLVMConfig.cmake.in b/llvm/cmake/modules/LLVMConfig.cmake.in
index 0a9d5c24252bb..d95fa919ef512 100644
--- a/llvm/cmake/modules/LLVMConfig.cmake.in
+++ b/llvm/cmake/modules/LLVMConfig.cmake.in
@@ -73,12 +73,6 @@ if(LLVM_ENABLE_ZLIB)
find_package(ZLIB)
endif()
-set(LLVM_ENABLE_ZSTD @LLVM_ENABLE_ZSTD@)
-if(LLVM_ENABLE_ZSTD)
- set(ZSTD_ROOT @ZSTD_ROOT@)
- find_package(ZSTD)
-endif()
-
set(LLVM_ENABLE_LIBXML2 @LLVM_ENABLE_LIBXML2@)
if(LLVM_ENABLE_LIBXML2)
find_package(LibXml2)
diff --git a/llvm/include/llvm/Config/llvm-config.h.cmake b/llvm/include/llvm/Config/llvm-config.h.cmake
index 96fbe6f771d2a..3355f12337203 100644
--- a/llvm/include/llvm/Config/llvm-config.h.cmake
+++ b/llvm/include/llvm/Config/llvm-config.h.cmake
@@ -95,9 +95,6 @@
/* Define if zlib compression is available */
#cmakedefine01 LLVM_ENABLE_ZLIB
-/* Define if zstd compression is available */
-#cmakedefine01 LLVM_ENABLE_ZSTD
-
/* Define if LLVM was built with a dependency to the libtensorflow dynamic library */
#cmakedefine LLVM_HAVE_TF_API
diff --git a/llvm/include/llvm/Support/Compression.h b/llvm/include/llvm/Support/Compression.h
index 0beda6a516d52..c99f811459ab2 100644
--- a/llvm/include/llvm/Support/Compression.h
+++ b/llvm/include/llvm/Support/Compression.h
@@ -44,28 +44,6 @@ Error uncompress(ArrayRef<uint8_t> Input,
} // End of namespace zlib
-namespace zstd {
-
-constexpr int NoCompression = -5;
-constexpr int BestSpeedCompression = 1;
-constexpr int DefaultCompression = 5;
-constexpr int BestSizeCompression = 12;
-
-bool isAvailable();
-
-void compress(ArrayRef<uint8_t> Input,
- SmallVectorImpl<uint8_t> &CompressedBuffer,
- int Level = DefaultCompression);
-
-Error uncompress(ArrayRef<uint8_t> Input, uint8_t *UncompressedBuffer,
- size_t &UncompressedSize);
-
-Error uncompress(ArrayRef<uint8_t> Input,
- SmallVectorImpl<uint8_t> &UncompressedBuffer,
- size_t UncompressedSize);
-
-} // End of namespace zstd
-
} // End of namespace compression
} // End of namespace llvm
diff --git a/llvm/lib/Support/CMakeLists.txt b/llvm/lib/Support/CMakeLists.txt
index 52b95c5377d34..e1045e459d706 100644
--- a/llvm/lib/Support/CMakeLists.txt
+++ b/llvm/lib/Support/CMakeLists.txt
@@ -25,10 +25,6 @@ if(LLVM_ENABLE_ZLIB)
set(imported_libs ZLIB::ZLIB)
endif()
-if(LLVM_ENABLE_ZSTD)
- list(APPEND imported_libs zstd)
-endif()
-
if( MSVC OR MINGW )
# libuuid required for FOLDERID_Profile usage in lib/Support/Windows/Path.inc.
# advapi32 required for CryptAcquireContextW in lib/Support/Windows/Path.inc.
diff --git a/llvm/lib/Support/Compression.cpp b/llvm/lib/Support/Compression.cpp
index e8fb715aa770e..21191972fb8b3 100644
--- a/llvm/lib/Support/Compression.cpp
+++ b/llvm/lib/Support/Compression.cpp
@@ -20,9 +20,6 @@
#if LLVM_ENABLE_ZLIB
#include <zlib.h>
#endif
-#if LLVM_ENABLE_ZSTD
-#include <zstd.h>
-#endif
using namespace llvm;
using namespace llvm::compression;
@@ -103,65 +100,3 @@ Error zlib::uncompress(ArrayRef<uint8_t> Input,
llvm_unreachable("zlib::uncompress is unavailable");
}
#endif
-
-#if LLVM_ENABLE_ZSTD
-
-bool zstd::isAvailable() { return true; }
-
-void zstd::compress(ArrayRef<uint8_t> Input,
- SmallVectorImpl<uint8_t> &CompressedBuffer, int Level) {
- unsigned long CompressedBufferSize = ::ZSTD_compressBound(Input.size());
- CompressedBuffer.resize_for_overwrite(CompressedBufferSize);
- unsigned long CompressedSize =
- ::ZSTD_compress((char *)CompressedBuffer.data(), CompressedBufferSize,
- (const char *)Input.data(), Input.size(), Level);
- if (ZSTD_isError(CompressedSize))
- report_bad_alloc_error("Allocation failed");
- // Tell MemorySanitizer that zstd output buffer is fully initialized.
- // This avoids a false report when running LLVM with uninstrumented ZLib.
- __msan_unpoison(CompressedBuffer.data(), CompressedSize);
- if (CompressedSize < CompressedBuffer.size())
- CompressedBuffer.truncate(CompressedSize);
-}
-
-Error zstd::uncompress(ArrayRef<uint8_t> Input, uint8_t *UncompressedBuffer,
- size_t &UncompressedSize) {
- const size_t Res =
- ::ZSTD_decompress(UncompressedBuffer, UncompressedSize,
- (const uint8_t *)Input.data(), Input.size());
- UncompressedSize = Res;
- // Tell MemorySanitizer that zstd output buffer is fully initialized.
- // This avoids a false report when running LLVM with uninstrumented ZLib.
- __msan_unpoison(UncompressedBuffer, UncompressedSize);
- return ZSTD_isError(Res) ? make_error<StringError>(ZSTD_getErrorName(Res),
- inconvertibleErrorCode())
- : Error::success();
-}
-
-Error zstd::uncompress(ArrayRef<uint8_t> Input,
- SmallVectorImpl<uint8_t> &UncompressedBuffer,
- size_t UncompressedSize) {
- UncompressedBuffer.resize_for_overwrite(UncompressedSize);
- Error E =
- zstd::uncompress(Input, UncompressedBuffer.data(), UncompressedSize);
- if (UncompressedSize < UncompressedBuffer.size())
- UncompressedBuffer.truncate(UncompressedSize);
- return E;
-}
-
-#else
-bool zstd::isAvailable() { return false; }
-void zstd::compress(ArrayRef<uint8_t> Input,
- SmallVectorImpl<uint8_t> &CompressedBuffer, int Level) {
- llvm_unreachable("zstd::compress is unavailable");
-}
-Error zstd::uncompress(ArrayRef<uint8_t> Input, uint8_t *UncompressedBuffer,
- size_t &UncompressedSize) {
- llvm_unreachable("zstd::uncompress is unavailable");
-}
-Error zstd::uncompress(ArrayRef<uint8_t> Input,
- SmallVectorImpl<uint8_t> &UncompressedBuffer,
- size_t UncompressedSize) {
- llvm_unreachable("zstd::uncompress is unavailable");
-}
-#endif
diff --git a/llvm/test/lit.site.cfg.py.in b/llvm/test/lit.site.cfg.py.in
index 09210e2e56d4c..520a54bc108f5 100644
--- a/llvm/test/lit.site.cfg.py.in
+++ b/llvm/test/lit.site.cfg.py.in
@@ -37,7 +37,6 @@ config.host_ldflags = '@HOST_LDFLAGS@'
config.llvm_use_intel_jitevents = @LLVM_USE_INTEL_JITEVENTS@
config.llvm_use_sanitizer = "@LLVM_USE_SANITIZER@"
config.have_zlib = @LLVM_ENABLE_ZLIB@
-config.have_zstd = @LLVM_ENABLE_ZSTD@
config.have_libxar = @LLVM_HAVE_LIBXAR@
config.have_libxml2 = @LLVM_ENABLE_LIBXML2@
config.have_curl = @LLVM_ENABLE_CURL@
diff --git a/llvm/unittests/Support/CompressionTest.cpp b/llvm/unittests/Support/CompressionTest.cpp
index a89dadf5f9ae8..8e6189ebe2248 100644
--- a/llvm/unittests/Support/CompressionTest.cpp
+++ b/llvm/unittests/Support/CompressionTest.cpp
@@ -61,42 +61,4 @@ TEST(CompressionTest, Zlib) {
}
#endif
-#if LLVM_ENABLE_ZSTD
-static void testZstdCompression(StringRef Input, int Level) {
- SmallVector<uint8_t, 0> Compressed;
- SmallVector<uint8_t, 0> Uncompressed;
- zstd::compress(arrayRefFromStringRef(Input), Compressed, Level);
-
- // Check that uncompressed buffer is the same as original.
- Error E = zstd::uncompress(Compressed, Uncompressed, Input.size());
- consumeError(std::move(E));
-
- EXPECT_EQ(Input, toStringRef(Uncompressed));
- if (Input.size() > 0) {
- // Uncompression fails if expected length is too short.
- E = zstd::uncompress(Compressed, Uncompressed, Input.size() - 1);
- EXPECT_EQ("Destination buffer is too small", llvm::toString(std::move(E)));
- }
-}
-
-TEST(CompressionTest, Zstd) {
- testZstdCompression("", zstd::DefaultCompression);
-
- testZstdCompression("hello, world!", zstd::NoCompression);
- testZstdCompression("hello, world!", zstd::BestSizeCompression);
- testZstdCompression("hello, world!", zstd::BestSpeedCompression);
- testZstdCompression("hello, world!", zstd::DefaultCompression);
-
- const size_t kSize = 1024;
- char BinaryData[kSize];
- for (size_t i = 0; i < kSize; ++i)
- BinaryData[i] = i & 255;
- StringRef BinaryDataStr(BinaryData, kSize);
-
- testZstdCompression(BinaryDataStr, zstd::NoCompression);
- testZstdCompression(BinaryDataStr, zstd::BestSizeCompression);
- testZstdCompression(BinaryDataStr, zstd::BestSpeedCompression);
- testZstdCompression(BinaryDataStr, zstd::DefaultCompression);
-}
-#endif
}
diff --git a/utils/bazel/llvm_configs/llvm-config.h.cmake b/utils/bazel/llvm_configs/llvm-config.h.cmake
index 96fbe6f771d2a..3355f12337203 100644
--- a/utils/bazel/llvm_configs/llvm-config.h.cmake
+++ b/utils/bazel/llvm_configs/llvm-config.h.cmake
@@ -95,9 +95,6 @@
/* Define if zlib compression is available */
#cmakedefine01 LLVM_ENABLE_ZLIB
-/* Define if zstd compression is available */
-#cmakedefine01 LLVM_ENABLE_ZSTD
-
/* Define if LLVM was built with a dependency to the libtensorflow dynamic library */
#cmakedefine LLVM_HAVE_TF_API
More information about the llvm-commits
mailing list