summaryrefslogtreecommitdiffstats
path: root/lib
Commit message (Collapse)AuthorAgeFilesLines
* remove `register` keywordYann Collet2017-12-051-13/+13
| | | | | deprecated in newer C++ versions, and dubious utility
* API : changed a few variables' names for clarityYann Collet2017-11-201-44/+44
| | | | | updated relevant doc. This patch has no impact on ABI/API, nor on binary generation.
* Merge pull request #416 from lz4/newoptYann Collet2017-11-096-391/+415
|\ | | | | Improve Optimal parser
| * added code commentsYann Collet2017-11-091-1/+6
| |
| * added constant TRAILING_LITERALSYann Collet2017-11-091-5/+6
| | | | | | | | | | which is more explicit than its value `3`. reported by @terrelln
| * lz4opt: simplified match finder invocation to LZ4HC_FindLongerMatch()Yann Collet2017-11-092-21/+12
| |
| * added code commentsYann Collet2017-11-081-5/+8
| |
| * fixed LZ4HC_reverseCountPattern()Yann Collet2017-11-081-6/+5
| | | | | | | | | | for multi-bytes patterns (which is not useful for the time being)
| * removed the ip++ at the beginning of blockYann Collet2017-11-082-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | The first byte used to be skipped to avoid a infinite self-comparison. This is no longer necessary, since init() ensures that index starts at 64K. The first byte is also useless to search when each block is independent, but it's no longer the case when blocks are linked. Removing the first-byte-skip saves about 10 bytes / MB on files compressed with -BD4 (linked blocks 64Kb), which feels correct as each MB has 16 blocks of 64KB.
| * removed legacy version of LZ4HC_InsertAndFindBestMatch()Yann Collet2017-11-071-53/+1
| |
| * ensure `pattern` is a 1-byte repetitionYann Collet2017-11-071-1/+2
| |
| * removed useless `(1 && ...)` conditionYann Collet2017-11-071-3/+4
| | | | | | | | as reported by @terrelln
| * improved LZ4HC_reverseCountPattern() :Yann Collet2017-11-071-3/+7
| | | | | | | | | | works for any repetitive pattern of length 1, 2 or 4 (but not 3!) works for any endianess
| * fixed LZ4HC_countPattern()Yann Collet2017-11-071-5/+19
| | | | | | | | | | | | | | - works with byte values other than `0` - works for any repetitive pattern of length 1, 2 or 4 (but not 3!) - works for little and big endian systems - preserve speed of previous implementation
| * fixed minor static analyzer warningYann Collet2017-11-031-1/+0
| | | | | | | | dead assignment
| * minor comment editYann Collet2017-11-033-33/+29
| |
| * unified HC levelsYann Collet2017-11-032-10/+5
| | | | | | | | | | LZ4_setCompressionLevel() can be users accross the whole range of HC levels No more transition issue between Optimal and HC modes
| * moved ctx->end handling from parsersYann Collet2017-11-032-3/+2
| | | | | | | | responsibility better handled one layer above (LZ4HC_compress_generic())
| * removed ctx->searchNumYann Collet2017-11-033-26/+12
| | | | | | | | | | nbSearches now transmitted directly as function parameter easier to track and debug
| * LZ4_compress_HC_continue_destSize() now compatible with optimal parserYann Collet2017-11-033-12/+13
| | | | | | | | levels 11+
| * removes matches[] tableYann Collet2017-11-031-73/+67
| | | | | | | | | | saves stack space clearer match finder interface (no more table to fill)
| * removed useless parameter from hash chain matchfinderYann Collet2017-11-031-5/+4
| | | | | | | | used to be present for compatibility with binary tree matchfinder
| * removed code and reference to binary tree match finderYann Collet2017-11-033-132/+6
| | | | | | | | reduced size of LZ4HC state
| * improved level 11 speedYann Collet2017-11-031-2/+4
| |
| * optimized skip strategy for level 12Yann Collet2017-11-031-3/+6
| |
| * new level 11 uses 512 attemptsYann Collet2017-11-031-1/+1
| |
| * more generic skip formulaYann Collet2017-11-032-14/+5
| | | | | | | | improving speed
| * small adaptations for intermediate level 11Yann Collet2017-11-022-7/+6
| |
| * partial search, while preserving compression ratioYann Collet2017-11-022-2/+16
| | | | | | | | tag interesting places
| * searching match leading strictly farther does not workYann Collet2017-11-021-1/+1
| | | | | | | | | | sometimes, it's better to re-use same match but start it later, in order to get shorter matchlength code
| * fixed last lost bytes in maximal modeYann Collet2017-11-023-12/+20
| | | | | | | | | | even gained 2 bytes on calgary.tar... added conditional traces `g_debuglog_enable`
| * changed strategy : opt[] path is complete after each matchYann Collet2017-11-022-40/+71
| | | | | | | | | | | | | | previous strategy would leave a few "bad choices" on the ground they would be fixed later, but that requires passing through each position to make the fix and cannot give the end position of the last useful match.
| * Merge branch 'dev' into btoptYann Collet2017-11-012-8/+45
| |\
| * | fixed minor overflow mistake in optimal parserYann Collet2017-10-311-1/+5
| | | | | | | | | | | | saving 20 bytes on calgary.tar
| * | fixed minor initialization warningYann Collet2017-10-301-1/+1
| | |
| * | added hash chain with conditional lengthYann Collet2017-10-252-10/+2
| | | | | | | | | | | | not a success yet
| * | lz4opt: added hash chain searchYann Collet2017-10-213-24/+63
| | |
| * | switched many types to intYann Collet2017-10-201-38/+37
| | |
| * | removed SET_PRICE macroYann Collet2017-10-201-17/+14
| | |
| * | removed one macro usageYann Collet2017-10-201-4/+11
| | |
| * | minor refactorYann Collet2017-10-201-28/+35
| | | | | | | | | | | | | | | reduce variable scope remove one macro usage
| * | lz4opt: refactor sequence reverse traversalYann Collet2017-10-201-10/+20
| | |
| * | refactor variable matchnumYann Collet2017-10-201-14/+14
| | | | | | | | | | | | | | | separate initial and iterative search renamed nb_matches
| * | simplified initial cost conditionsYann Collet2017-10-201-10/+15
| | | | | | | | | | | | llen integrated in opt[]
| * | added assertYann Collet2017-10-192-1/+9
| | |
| * | renamed last_pos into last_match_posYann Collet2017-10-191-15/+15
| | |
| * | simplified early exit when single solutionYann Collet2017-10-191-5/+5
| | |
| * | fused getLongerMatch and getWiderMatchYann Collet2017-10-091-1/+1
| | |
| * | re-inserted last byte test in widerMatchYann Collet2017-10-091-19/+22
| | |
| * | early out is not betterYann Collet2017-10-092-2/+1
| | |