File Index
Files and directories
Sign in
FILE

zstd_compress_literals.h

File preview with syntax highlighting.

linux-6.19.14/lib/zstd/compress/zstd_compress_literals.h C
 1/* SPDX-License-Identifier: GPL-2.0+ OR BSD-3-Clause */
 2/*
 3 * Copyright (c) Meta Platforms, Inc. and affiliates.
 4 * All rights reserved.
 5 *
 6 * This source code is licensed under both the BSD-style license (found in the
 7 * LICENSE file in the root directory of this source tree) and the GPLv2 (found
 8 * in the COPYING file in the root directory of this source tree).
 9 * You may select, at your option, one of the above-listed licenses.
10 */
11
12#ifndef ZSTD_COMPRESS_LITERALS_H
13#define ZSTD_COMPRESS_LITERALS_H
14
15#include "zstd_compress_internal.h" /* ZSTD_hufCTables_t, ZSTD_minGain() */
16
17
18size_t ZSTD_noCompressLiterals (void* dst, size_t dstCapacity, const void* src, size_t srcSize);
19
20/* ZSTD_compressRleLiteralsBlock() :
21 * Conditions :
22 * - All bytes in @src are identical
23 * - dstCapacity >= 4 */
24size_t ZSTD_compressRleLiteralsBlock (void* dst, size_t dstCapacity, const void* src, size_t srcSize);
25
26/* ZSTD_compressLiterals():
27 * @entropyWorkspace: must be aligned on 4-bytes boundaries
28 * @entropyWorkspaceSize : must be >= HUF_WORKSPACE_SIZE
29 * @suspectUncompressible: sampling checks, to potentially skip huffman coding
30 */
31size_t ZSTD_compressLiterals (void* dst, size_t dstCapacity,
32                        const void* src, size_t srcSize,
33                              void* entropyWorkspace, size_t entropyWorkspaceSize,
34                        const ZSTD_hufCTables_t* prevHuf,
35                              ZSTD_hufCTables_t* nextHuf,
36                              ZSTD_strategy strategy, int disableLiteralCompression,
37                              int suspectUncompressible,
38                              int bmi2);
39
40#endif /* ZSTD_COMPRESS_LITERALS_H */
~/ Read-only file preview.