On Wed, Nov 11, 2020 at 5:06 PM Zhaoxiu Zeng <zengzhao...@163.com> wrote: > 在 2020/11/11 11:46, Jann Horn 写道: > > On Mon, Nov 9, 2020 at 8:27 PM <zengzhao...@163.com> wrote: > >> This patch does: > >> 1. Cleanup code and reduce branches > >> 2. Use copy_from_back to copy the matched bytes from the back output buffer > > > > What exactly is copy_from_back()? Is it like memmove()? If yes, have > > you tried using memmove() instead of the code added in patch 1/3? > > > > If use memcpy(or memmove), the code will be like this: > while (dist < len) { > memcpy(out, out - dist, dist); > out += dist; > len -= dist; > } > memcpy(out, out - dist, len);
Ah, thanks. So basically it means: "repeatedly copy a pattern of length `dist` from `out-dist` to `out` until `len` bytes have been written"