rte_mov2563
Part of rte_memcpy.h(3).
Usage
Functions
static void
rte_mov16
(uint8_t
*dst,
const
uint8_t
*src)
static void
rte_mov32
(uint8_t
*dst,
const
uint8_t
*src)
static void
rte_mov48
(uint8_t
*dst,
const
uint8_t
*src)
static void
rte_mov64
(uint8_t
*dst,
const
uint8_t
*src)
static void
rte_mov128
(uint8_t
*dst,
const
uint8_t
*src)
static void
rte_mov256
(uint8_t
*dst,
const
uint8_t
*src)
static void
*
rte_memcpy
(void
*dst,
const
void
*src,
size_t
n)
Detailed Description
Functions for vectorised implementation of memcpy().
Definition in file rte_memcpy.h.
Function Documentation
static void rte_mov16 (uint8_t * dst, const uint8_t * src) [inline], [static]
Copy 16 bytes from one location to another using optimised instructions. The locations should not overlap.
Parameters
dst Pointer to the destination of the data.
src Pointer to the source data.
static void rte_mov32 (uint8_t * dst, const uint8_t * src) [inline], [static]
Copy 32 bytes from one location to another using optimised instructions. The locations should not overlap.
Parameters
dst Pointer to the destination of the data.
src Pointer to the source data.
static void rte_mov48 (uint8_t * dst, const uint8_t * src) [inline], [static]
Copy 48 bytes from one location to another using optimised instructions. The locations should not overlap.
Parameters
dst Pointer to the destination of the data.
src Pointer to the source data.
static void rte_mov64 (uint8_t * dst, const uint8_t * src) [inline], [static]
Copy 64 bytes from one location to another using optimised instructions. The locations should not overlap.
Parameters
dst Pointer to the destination of the data.
src Pointer to the source data.
static void rte_mov128 (uint8_t * dst, const uint8_t * src) [inline], [static]
Copy 128 bytes from one location to another using optimised instructions. The locations should not overlap.
Parameters
dst Pointer to the destination of the data.
src Pointer to the source data.
static void rte_mov256 (uint8_t * dst, const uint8_t * src) [inline], [static]
Copy 256 bytes from one location to another using optimised instructions. The locations should not overlap.
Parameters
dst Pointer to the destination of the data.
src Pointer to the source data.
static void * rte_memcpy (void * dst, const void * src, size_t n) [static]
Copy bytes from one location to another. The locations must not overlap.
Note
This is implemented as a macro, so it's address should not be taken and care is needed as parameter expressions may be evaluated multiple times.
For x86 platforms to enable the AVX-512 memcpy implementation, set -DRTE_MEMCPY_AVX512 macro in CFLAGS, or define the RTE_MEMCPY_AVX512 macro explicitly in the source file before including the rte_memcpy header file.
Parameters
dst Pointer to the destination of the data.
src Pointer to the source data.
n Number of bytes to copy.
Returns
Pointer to the destination data.