Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
rte_hash_crc.h(3)		     DPDK		     rte_hash_crc.h(3)

NAME
       rte_hash_crc.h

SYNOPSIS
       #include	<stdint.h>
       #include	<rte_branch_prediction.h>
       #include	<rte_common.h>
       #include	<rte_config.h>
       #include	'rte_crc_sw.h'
       #include	'rte_crc_generic.h'

   Functions
       void rte_hash_crc_set_alg (uint8_t alg)
       static uint32_t rte_hash_crc_1byte (uint8_t data, uint32_t init_val)
       static uint32_t rte_hash_crc_2byte (uint16_t data, uint32_t init_val)
       static uint32_t rte_hash_crc_4byte (uint32_t data, uint32_t init_val)
       static uint32_t rte_hash_crc_8byte (uint64_t data, uint32_t init_val)
       static uint32_t rte_hash_crc (const void	*data, uint32_t	data_len,
	   uint32_t init_val)

Detailed Description
       RTE CRC Hash

       Definition in file rte_hash_crc.h.

Function Documentation
   void	rte_hash_crc_set_alg (uint8_t alg)
       Allow or	disallow use of	SSE4.2/ARMv8 intrinsics	for CRC32 hash
       calculation.

       Parameters
	   alg An OR of	following flags:

	    (CRC32_SW)	   Don't    use	  SSE4.2/ARMv8	 intrinsics   (default
	     non-[x86/ARMv8])

	    (CRC32_SSE42) Use SSE4.2 intrinsics if available

	    (CRC32_SSE42_x64)	Use  64-bit  SSE4.2  intrinsic	if   available
	     (default x86)

	    (CRC32_ARM64)  Use	 ARMv8	CRC  intrinsic	if  available (default
	     ARMv8)

   static  uint32_t  rte_hash_crc_1byte	 (uint8_t  data,  uint32_t   init_val)
       [inline],  [static]
       Use single CRC32	instruction to perform a hash on a byte	value.

       Parameters
	   data	Data to	perform	hash on.
	   init_val Value to initialise	hash generator.

       Returns
	   32bit calculated hash value.

   static  uint32_t  rte_hash_crc_2byte	 (uint16_t  data,  uint32_t  init_val)
       [inline],  [static]
       Use single CRC32	instruction to perform a hash on a 2 bytes value.

       Parameters
	   data	Data to	perform	hash on.
	   init_val Value to initialise	hash generator.

       Returns
	   32bit calculated hash value.

   static  uint32_t  rte_hash_crc_4byte	 (uint32_t  data,  uint32_t  init_val)
       [inline],  [static]
       Use single CRC32	instruction to perform a hash on a 4 bytes value.

       Parameters
	   data	Data to	perform	hash on.
	   init_val Value to initialise	hash generator.

       Returns
	   32bit calculated hash value.

   static  uint32_t  rte_hash_crc_8byte	 (uint64_t  data,  uint32_t  init_val)
       [inline],  [static]
       Use single CRC32	instruction to perform a hash on a 8 bytes value.

       Parameters
	   data	Data to	perform	hash on.
	   init_val Value to initialise	hash generator.

       Returns
	   32bit calculated hash value.

   static  uint32_t  rte_hash_crc  (const  void	 *  data,  uint32_t  data_len,
       uint32_t	init_val) [inline],  [static]
       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 125 of file rte_hash_crc.h.

Author
       Generated automatically by Doxygen for DPDK from	the source code.

Version	25.11.0			Thu Jun	11 2026		     rte_hash_crc.h(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=rte_hash_crc_4byte&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>

home | help