1
0
Fork 0
mirror of https://git.tukaani.org/xz.git synced 2024-04-04 12:36:23 +02:00

liblzma: Add more uses of lzma_memcmplen() to the normal mode of LZMA.

This gives a tiny encoder speed improvement. This could have been done
in 2014 after the commit 544aaa3d13 but
it was forgotten.
This commit is contained in:
Lasse Collin 2020-02-21 17:40:02 +02:00
parent 6117955af0
commit fb9cada7cf

View file

@ -636,9 +636,10 @@ helper2(lzma_lzma1_encoder *coder, uint32_t *reps, const uint8_t *buf,
uint32_t len_test_2 = len_test + 1; uint32_t len_test_2 = len_test + 1;
const uint32_t limit = my_min(buf_avail_full, const uint32_t limit = my_min(buf_avail_full,
len_test_2 + nice_len); len_test_2 + nice_len);
for (; len_test_2 < limit // NOTE: len_test_2 may be greater than limit so the call to
&& buf[len_test_2] == buf_back[len_test_2]; // lzma_memcmplen() must be done conditionally.
++len_test_2) ; if (len_test_2 < limit)
len_test_2 = lzma_memcmplen(buf, buf_back, len_test_2, limit);
len_test_2 -= len_test + 1; len_test_2 -= len_test + 1;
@ -732,9 +733,12 @@ helper2(lzma_lzma1_encoder *coder, uint32_t *reps, const uint8_t *buf,
const uint32_t limit = my_min(buf_avail_full, const uint32_t limit = my_min(buf_avail_full,
len_test_2 + nice_len); len_test_2 + nice_len);
for (; len_test_2 < limit && // NOTE: len_test_2 may be greater than limit
buf[len_test_2] == buf_back[len_test_2]; // so the call to lzma_memcmplen() must be
++len_test_2) ; // done conditionally.
if (len_test_2 < limit)
len_test_2 = lzma_memcmplen(buf, buf_back,
len_test_2, limit);
len_test_2 -= len_test + 1; len_test_2 -= len_test + 1;