Merge pull request #2483 from mpu/ldmgear
New algorithms for the long distance matcher
This commit is contained in:
@@ -184,13 +184,22 @@ typedef struct {
|
||||
U32 checksum;
|
||||
} ldmEntry_t;
|
||||
|
||||
typedef struct {
|
||||
BYTE const* split;
|
||||
U32 hash;
|
||||
U32 checksum;
|
||||
ldmEntry_t* bucket;
|
||||
} ldmMatchCandidate_t;
|
||||
|
||||
#define LDM_BATCH_SIZE 64
|
||||
|
||||
typedef struct {
|
||||
ZSTD_window_t window; /* State for the window round buffer management */
|
||||
ldmEntry_t* hashTable;
|
||||
U32 loadedDictEnd;
|
||||
BYTE* bucketOffsets; /* Next position in bucket to insert entry */
|
||||
U64 hashPower; /* Used to compute the rolling hash.
|
||||
* Depends on ldmParams.minMatchLength */
|
||||
size_t splitIndices[LDM_BATCH_SIZE];
|
||||
ldmMatchCandidate_t matchCandidates[LDM_BATCH_SIZE];
|
||||
} ldmState_t;
|
||||
|
||||
typedef struct {
|
||||
|
||||
Reference in New Issue
Block a user