#include <stdint.h>
#include <rte_cpuflags.h>
#include <rte_branch_prediction.h>
#include <rte_common.h>
Go to the source code of this file.
RTE CRC arm64 Hash
Definition in file rte_crc_arm64.h.
static void rte_hash_crc_set_alg |
( |
uint8_t |
alg | ) |
|
|
inlinestatic |
Allow or disallow use of arm64 SIMD instrinsics for CRC32 hash calculation.
- Parameters
-
alg | An OR of following flags:
- (CRC32_SW) Don't use arm64 crc intrinsics
- (CRC32_ARM64) Use ARMv8 CRC intrinsic if available
|
Definition at line 74 of file rte_crc_arm64.h.
static uint32_t rte_hash_crc_1byte |
( |
uint8_t |
data, |
|
|
uint32_t |
init_val |
|
) |
| |
|
inlinestatic |
Use single crc32 instruction to perform a hash on a 1 byte value. Fall back to software crc32 implementation in case arm64 crc intrinsics 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 108 of file rte_crc_arm64.h.
static uint32_t rte_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 arm64 crc intrinsics 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 129 of file rte_crc_arm64.h.
static uint32_t rte_hash_crc_4byte |
( |
uint32_t |
data, |
|
|
uint32_t |
init_val |
|
) |
| |
|
inlinestatic |
static uint32_t rte_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 arm64 crc intrinsics 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 171 of file rte_crc_arm64.h.