Line data Source code
1 : #include "fd_lthash_adder.h" 2 : 3 : #if FD_HAS_AVX512 4 0 : #define FD_LTHASH_ADDER_PARA_CNT 16 5 : #elif FD_HAS_AVX 6 0 : #define FD_LTHASH_ADDER_PARA_CNT 8 7 : #else 8 : #define FD_LTHASH_ADDER_PARA_CNT 0 9 : #endif 10 : 11 : fd_lthash_adder_t * 12 0 : fd_lthash_adder_new( fd_lthash_adder_t * adder ) { 13 0 : if( FD_UNLIKELY( !adder ) ) { 14 0 : FD_LOG_WARNING(( "NULL lthash_adder" )); 15 0 : return NULL; 16 0 : } 17 0 : if( FD_UNLIKELY( !fd_ulong_is_aligned( (ulong)adder, FD_LTHASH_ADDER_ALIGN ) ) ) { 18 0 : FD_LOG_WARNING(( "misaligned lthash_adder" )); 19 0 : return NULL; 20 0 : } 21 0 : fd_memset( adder, 0, sizeof(fd_lthash_adder_t) ); 22 0 : #if FD_LTHASH_ADDER_PARA_CNT>1 23 0 : for( ulong i=0UL; i<FD_LTHASH_ADDER_PARA_CNT; i++ ) { 24 0 : adder->batch_ptrs[ i ] = (ulong)( adder->batch_data + i*FD_BLAKE3_CHUNK_SZ ); 25 0 : } 26 0 : #endif 27 0 : return adder; 28 0 : } 29 : 30 : void * 31 0 : fd_lthash_adder_delete( fd_lthash_adder_t * adder ) { 32 0 : (void)adder; 33 : return NULL; 34 0 : }