logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

Author

       Generated automatically by Doxygen for DPDK from the source code.

DPDK                                             Version 24.11.2                               rte_hash_crc.h(3)

Detailed Description

       RTE CRC Hash

       Definition in file rte_hash_crc.h.

Function Documentation

voidrte_hash_crc_set_alg(uint8_talg)
       Allow or disallow use of SSE4.2/ARMv8 intrinsics for CRC32 hash calculation.

       Parametersalg 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)

   staticuint32_trte_hash_crc_1byte(uint8_tdata,uint32_tinit_val)[inline],[static]
       Use single CRC32 instruction to perform a hash on a byte value.

       Parametersdata Data to perform hash on.
           init_val Value to initialise hash generator.

       Returns
           32bit calculated hash value.

   staticuint32_trte_hash_crc_2byte(uint16_tdata,uint32_tinit_val)[inline],[static]
       Use single CRC32 instruction to perform a hash on a 2 bytes value.

       Parametersdata Data to perform hash on.
           init_val Value to initialise hash generator.

       Returns
           32bit calculated hash value.

   staticuint32_trte_hash_crc_4byte(uint32_tdata,uint32_tinit_val)[inline],[static]
       Use single CRC32 instruction to perform a hash on a 4 bytes value.

       Parametersdata Data to perform hash on.
           init_val Value to initialise hash generator.

       Returns
           32bit calculated hash value.

   staticuint32_trte_hash_crc_8byte(uint64_tdata,uint32_tinit_val)[inline],[static]
       Use single CRC32 instruction to perform a hash on a 8 bytes value.

       Parametersdata Data to perform hash on.
           init_val Value to initialise hash generator.

       Returns
           32bit calculated hash value.

   staticuint32_trte_hash_crc(constvoid*data,uint32_tdata_len,uint32_tinit_val)[inline],[static]
       Calculate CRC32 hash on user-supplied byte array.

       Parametersdata 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.

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)

See Also