[dpdk-dev,v6,4/7] hash: add rte_hash_crc_8byte function
Commit Message
SSE4.2 provides CRC32 intrinsic with 8-byte operand.
Signed-off-by: Yerden Zhumabekov <e_zhumabekov@sts.kz>
---
lib/librte_hash/rte_hash_crc.h | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
@@ -413,6 +413,22 @@ rte_hash_crc_4byte(uint32_t data, uint32_t init_val)
}
/**
+ * Use single crc32 instruction to perform a hash on a 8 byte value.
+ *
+ * @param data
+ * Data to perform hash on.
+ * @param init_val
+ * Value to initialise hash generator.
+ * @return
+ * 32bit calculated hash value.
+ */
+static inline uint32_t
+rte_hash_crc_8byte(uint64_t data, uint32_t init_val)
+{
+ return crc32c_sse42_u64(data, init_val);
+}
+
+/**
* Use crc32 instruction to perform a hash.
*
* @param data