#include <stdint.h>
#include <cne_branch_prediction.h>
#include <cne_common.h>
 
Go to the source code of this file.
CNE CRC Hash 
Definition in file cne_hash_crc.h.
 
◆ cne_hash_crc_set_alg()
  
  
      
        
          | static void cne_hash_crc_set_alg  | 
          ( | 
          uint8_t  | 
          alg | ) | 
           | 
         
       
   | 
  
inlinestatic   | 
  
 
Allow or disallow use of SSE4.2 intrinsics for CRC32 hash calculation.
- Parameters
 - 
  
    | alg | An OR of following flags:
- (CRC32_SW) Don't use SSE4.2 intrinsics
 
- (CRC32_SSE42) Use SSE4.2 intrinsics if available
 
- (CRC32_SSE42_x64) Use 64-bit SSE4.2 intrinsic if available (default) 
 
 
 | 
  
   
Definition at line 429 of file cne_hash_crc.h.
 
 
◆ cne_hash_crc_1byte()
  
  
      
        
          | static uint32_t cne_hash_crc_1byte  | 
          ( | 
          uint8_t  | 
          data,  | 
         
        
           | 
           | 
          uint32_t  | 
          init_val  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
inlinestatic   | 
  
 
Use single crc32 instruction to perform a hash on a byte value. Fall back to software crc32 implementation in case SSE4.2 is not supported
- Parameters
 - 
  
    | data | Data to perform hash on.  | 
    | init_val | Value to initialise hash generator.  | 
  
   
- Returns
 - 32bit calculated hash value. 
 
Definition at line 457 of file cne_hash_crc.h.
 
 
◆ cne_hash_crc_2byte()
  
  
      
        
          | static uint32_t cne_hash_crc_2byte  | 
          ( | 
          uint16_t  | 
          data,  | 
         
        
           | 
           | 
          uint32_t  | 
          init_val  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
inlinestatic   | 
  
 
Use single crc32 instruction to perform a hash on a 2 bytes value. Fall back to software crc32 implementation in case SSE4.2 is not supported
- Parameters
 - 
  
    | data | Data to perform hash on.  | 
    | init_val | Value to initialise hash generator.  | 
  
   
- Returns
 - 32bit calculated hash value. 
 
Definition at line 478 of file cne_hash_crc.h.
 
 
◆ cne_hash_crc_4byte()
  
  
      
        
          | static uint32_t cne_hash_crc_4byte  | 
          ( | 
          uint32_t  | 
          data,  | 
         
        
           | 
           | 
          uint32_t  | 
          init_val  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
inlinestatic   | 
  
 
Use single crc32 instruction to perform a hash on a 4 byte value. Fall back to software crc32 implementation in case SSE4.2 is not supported
- Parameters
 - 
  
    | data | Data to perform hash on.  | 
    | init_val | Value to initialise hash generator.  | 
  
   
- Returns
 - 32bit calculated hash value. 
 
Definition at line 499 of file cne_hash_crc.h.
 
 
◆ cne_hash_crc_8byte()
  
  
      
        
          | static uint32_t cne_hash_crc_8byte  | 
          ( | 
          uint64_t  | 
          data,  | 
         
        
           | 
           | 
          uint32_t  | 
          init_val  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
inlinestatic   | 
  
 
Use single crc32 instruction to perform a hash on a 8 byte value. Fall back to software crc32 implementation in case SSE4.2 is not supported
- Parameters
 - 
  
    | data | Data to perform hash on.  | 
    | init_val | Value to initialise hash generator.  | 
  
   
- Returns
 - 32bit calculated hash value. 
 
Definition at line 520 of file cne_hash_crc.h.
 
 
◆ cne_hash_crc()
  
  
      
        
          | static uint32_t cne_hash_crc  | 
          ( | 
          const void *  | 
          data,  | 
         
        
           | 
           | 
          uint32_t  | 
          data_len,  | 
         
        
           | 
           | 
          uint32_t  | 
          init_val  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
inlinestatic   | 
  
 
Calculate CRC32 hash on user-supplied byte array.
- Parameters
 - 
  
    | data | Data to perform hash on.  | 
    | data_len | How many bytes to use to calculate hash value.  | 
    | init_val | Value to initialise hash generator.  | 
  
   
- Returns
 - 32bit calculated hash value. 
 
Definition at line 544 of file cne_hash_crc.h.