mirror of
				https://github.com/facebook/zstd.git
				synced 2025-10-31 16:47:48 +02:00 
			
		
		
		
	double-fast: changed the trade-off for a smaller positive change
same number of complementary insertions, just organized differently (long at `ip-2`, short at `ip-1`).
This commit is contained in:
		
							
								
								
									
										2
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							| @@ -14,7 +14,7 @@ | ||||
| *.dylib | ||||
|  | ||||
| # Executables | ||||
| zstd. | ||||
| /zstd | ||||
| zstdmt | ||||
| *.exe | ||||
| *.out | ||||
|   | ||||
| @@ -257,19 +257,10 @@ _match_stored: | ||||
|             /* Complementary insertion */ | ||||
|             /* done after iLimit test, as candidates could be > iend-8 */ | ||||
|             {   U32 const indexToInsert = current+2; | ||||
|                 hashLong[ZSTD_hashPtr(base+indexToInsert, hBitsL, 8)] = | ||||
|                     hashSmall[ZSTD_hashPtr(base+indexToInsert, hBitsS, mls)] = | ||||
|                         indexToInsert; | ||||
|             } | ||||
|             {   const BYTE* const ipToInsert = ip - 2; | ||||
|                 hashLong[ZSTD_hashPtr(ipToInsert, hBitsL, 8)] = | ||||
|                     hashSmall[ZSTD_hashPtr(ipToInsert, hBitsS, mls)] = | ||||
|                         (U32)(ipToInsert-base); | ||||
|             } | ||||
|             {   const BYTE* const ipToInsert = ip - 1; | ||||
|                 hashLong[ZSTD_hashPtr(ipToInsert, hBitsL, 8)] = | ||||
|                     hashSmall[ZSTD_hashPtr(ipToInsert, hBitsS, mls)] = | ||||
|                         (U32)(ipToInsert-base); | ||||
|                 hashLong[ZSTD_hashPtr(base+indexToInsert, hBitsL, 8)] = indexToInsert; | ||||
|                 hashLong[ZSTD_hashPtr(ip-2, hBitsL, 8)] = (U32)(ip-2-base); | ||||
|                 hashSmall[ZSTD_hashPtr(base+indexToInsert, hBitsS, mls)] = indexToInsert; | ||||
|                 hashSmall[ZSTD_hashPtr(ip-1, hBitsS, mls)] = (U32)(ip-1-base); | ||||
|             } | ||||
|  | ||||
|             /* check immediate repcode */ | ||||
|   | ||||
		Reference in New Issue
	
	Block a user