Commit Graph

20 Commits

Author SHA1 Message Date
Eugene Kliuchnikov
028291865d Extract common parts: constants, dictionary, etc. 2016-06-03 10:51:04 +02:00
Eugene Kliuchnikov
e7e3849835 Update decoder. Add encoder interface wrapper.
* condense printf in port.h; use BROTLI_LOG everywhere
 * mark non-exported functions with BROTLI_INTERNAL
 * use BROTLI_DUMP instead of (void)(BROTLI_FAILURE())
 * fix problems with CustomDictionary
 * make decode.h independent of state.h
 * fix "double-new-lines"
 * fix some strict compilation warnings
 * fix bro.cc compilation for MSVS
 * added compressor.h as a replacement for encode.h + streams.h
2016-04-19 16:29:10 +02:00
Frédéric Wang
2fcb2321d9 Use double exclamation marks in declarations of IS_CONSTANT and BROTLI_HAS_UBFX to force C compilers to interpret them as booleans and avoid constant-logical-operand warnings. 2016-03-01 09:39:04 +01:00
Eugene Kliuchnikov
23934731f5 Update decoder:
* More clear/safe "copy" command stage implementation
 * Enable unaligned memory access only on whitelisted CPUs
 * Remove unused streams.{c|h}
 * Add "default" to all switches
 * Fix includes
 * Fix spacing everywhere
2016-02-18 15:03:44 +01:00
eustas
28867aa4e7 Remove unused definitions 2016-01-28 16:34:41 +01:00
Eugene Klyuchnikov
24ffa78414 Fix headers 2015-12-11 11:11:51 +01:00
Eugene Klyuchnikov
771eb10798 Update license statement in source files. 2015-11-27 11:27:11 +01:00
Eugene Klyuchnikov
b693812271 Decoder: implement custom allocator feature
Drive-by: conform stricter compilation flags; cleanup shared.mk
2015-11-23 10:21:09 +01:00
Eugene Klyuchnikov
c0ba6d6f5e Brotli decoder: implement new streaming API 2015-11-06 11:46:04 +01:00
Zoltan Szabadka
47835c6089 Fix build for SPARK. 2015-10-06 11:11:42 +02:00
Zoltan Szabadka
bacc734997 Fix some more compiler warnings in the decoder. 2015-10-05 10:23:32 +02:00
Zoltan Szabadka
9ceff0372c Add more build parameters. 2015-10-02 16:43:47 +02:00
Zoltan Szabadka
d3eb6ecb9a Add BROTLI_FREE macro, check malloc status after histogram allocations. 2015-10-02 16:19:30 +02:00
Zoltan Szabadka
5919712922 Avoid undefined behavior from memcpy for the portable build. 2015-09-28 12:38:29 +02:00
Zoltan Szabadka
e44caf9835 Introduce a BROTLI_BUILD_PORTABLE macro to disable potentially dangerous optimizations. 2015-09-25 17:57:19 +02:00
Eugene Klyuchnikov
127aa48a96 Fix bug in decoder.
Minor cleanup.
2015-09-01 12:18:22 +02:00
Lode Vandevenne
db71549ac5 update brotli decoder with latest improvements 2015-08-28 15:20:24 +02:00
lvandeve
45c38936b7 Enable little endian support also for visual studio 2015-08-10 14:41:42 +02:00
Lode Vandevenne
94cd7085f7 brotli decoder performance improvements 2015-08-10 13:35:23 +02:00
Zoltan Szabadka
83aa24dc86 Speed and memory usage improvements for the decoder.
* Change order of members of bit reader state structure.

* Remove unused includes for assert. Add BROTLI_DCHECK
  macros and use it instead of assert.

* Do not calculate nbits in common case of ReadSymbol.

* Introduce and use PREDICT_TRUE / PREDICT_FALSE macros.

* Allocate less memory in the brotli decoder if it knows
  the result size beforehand. Before this, the decoder
  would always allocate 16MB if the encoder annotated the
  window size as 22 bit (which is the default), even if the
  file is only a few KB uncompressed. Now, it'll only
  allocate a ringbuffer as large as needed for the result file.
  But only if it can know the filesize, it's not possible
  to know that if there are multiple metablocks or too large
  uncompressed metablock.
2015-05-07 16:53:43 +02:00