From: Nick Terrell Date: Tue, 10 Jul 2018 22:07:36 +0000 (-0700) Subject: Small fixes to zstd specification X-Git-Tag: v0.0.29~68^2 X-Git-Url: http://git.ipfire.org/gitweb/gitweb.cgi?a=commitdiff_plain;h=refs%2Fpull%2F1233%2Fhead;p=thirdparty%2Fzstd.git Small fixes to zstd specification Update to keep in sync with the RFC. --- diff --git a/doc/zstd_compression_format.md b/doc/zstd_compression_format.md index 62430e48f..0b79f959f 100644 --- a/doc/zstd_compression_format.md +++ b/doc/zstd_compression_format.md @@ -488,20 +488,20 @@ For values spanning several bytes, convention is __little-endian__. __`Size_Format` for `Raw_Literals_Block` and `RLE_Literals_Block`__ : `Size_Format` uses 1 _or_ 2 bits. -Its value is : `Size_Format = (Header[0]>>2) & 3` +Its value is : `Size_Format = (Literals_Section_Header[0]>>2) & 3` - `Size_Format` == 00 or 10 : `Size_Format` uses 1 bit. `Regenerated_Size` uses 5 bits (0-31). `Literals_Section_Header` uses 1 byte. - `Regenerated_Size = Header[0]>>3` + `Regenerated_Size = Literals_Section_Header[0]>>3` - `Size_Format` == 01 : `Size_Format` uses 2 bits. `Regenerated_Size` uses 12 bits (0-4095). `Literals_Section_Header` uses 2 bytes. - `Regenerated_Size = (Header[0]>>4) + (Header[1]<<4)` + `Regenerated_Size = (Literals_Section_Header[0]>>4) + (Literals_Section_Header[1]<<4)` - `Size_Format` == 11 : `Size_Format` uses 2 bits. `Regenerated_Size` uses 20 bits (0-1048575). `Literals_Section_Header` uses 3 bytes. - `Regenerated_Size = (Header[0]>>4) + (Header[1]<<4) + (Header[2]<<12)` + `Regenerated_Size = (Literals_Section_Header[0]>>4) + (Literals_Section_Header[1]<<4) + (Literals_Section_Header[2]<<12)` Only Stream1 is present for these cases. Note : it's allowed to represent a short value (for example `13`)