fix isal crc64 bug (#1052)
* use isal for crc check * add NULL check in crc isal * update isal crc code to latest pull request
This commit is contained in:
		
							
								
								
									
										4
									
								
								deps/oblib/src/lib/checksum/ob_crc64.cpp
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										4
									
								
								deps/oblib/src/lib/checksum/ob_crc64.cpp
									
									
									
									
										vendored
									
									
								
							@ -422,8 +422,7 @@ for RHEL4 support (GCC 3 doesn't support this instruction) */
 | 
				
			|||||||
#define crc32_sse42_byte crc = __crc32cb(crc, (uint8_t)*buf); len--, buf++
 | 
					#define crc32_sse42_byte crc = __crc32cb(crc, (uint8_t)*buf); len--, buf++
 | 
				
			||||||
#endif /* defined(__GNUC__) && defined(__x86_64__) */
 | 
					#endif /* defined(__GNUC__) && defined(__x86_64__) */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
uint64_t crc64_sse42(uint64_t uCRC64,
 | 
					uint64_t crc64_sse42(uint64_t uCRC64, const char* buf, int64_t len)
 | 
				
			||||||
                                   const char *buf, int64_t len)
 | 
					 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  uint64_t crc = uCRC64;
 | 
					  uint64_t crc = uCRC64;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -1142,6 +1141,7 @@ uint64_t crc64_sse42_dispatch(uint64_t crc, const char *buf, int64_t len)
 | 
				
			|||||||
      _OB_LOG(WARN, "Use manual crc32 table lookup for crc64 calculate");
 | 
					      _OB_LOG(WARN, "Use manual crc32 table lookup for crc64 calculate");
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  #elif defined(__aarch64__)
 | 
					  #elif defined(__aarch64__)
 | 
				
			||||||
    #if 1
 | 
					    #if 1
 | 
				
			||||||
    ob_crc64_sse42_func = &crc64_sse42;
 | 
					    ob_crc64_sse42_func = &crc64_sse42;
 | 
				
			||||||
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user