flate

deflate implementation
git clone git://git.suckless.org/flate
Log | Files | Refs | README

TODO (820B)


      1 flate
      2 -----
      3 fill output entirely (s->out, s->outend ?)
      4 stream->err ?
      5 globals
      6 man
      7 inflate assumes Flate* < 0
      8 _init _reset _free ?
      9 _zlib _gzip _zip interface
     10 pkzip output is bugous to please unzip
     11 test, benchmark
     12 
     13 
     14 inflate
     15 -------
     16 return extra input
     17 read less than 7 bits in clen decode
     18 bound checks in clen decode
     19 (rev lookup vs revinc)
     20 (test/optimize uncompressed block)
     21 
     22 
     23 deflate
     24 -------
     25 block split heuristics with lfreq, dfreq + cost (costbuf)
     26 match selection (entropy based cost)
     27 special case: last block (better optimization for short input)
     28 check ushort vs int
     29 minor mods:
     30 	overlap rbuf/dstwin
     31 	hufflen: overlap arrays (parent+heap only)
     32 	match loop + shiftwin loop unroll
     33 	bisect len/distbase -> lookup table
     34 	rolling hash
     35 	zlib huffcode trick: if same freq then shorter code goes to the one with smaller subtree