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_memcpy.h(3)

Detailed Description

       Functions for vectorised implementation of memcpy().

       Definition in file rte_memcpy.h.

Function Documentation

staticvoidrte_mov16(uint8_t*dst,constuint8_t*src)[inline],[static]
       Copy 16 bytes from one location to another using optimised instructions. The locations should not
       overlap.

       Parametersdst Pointer to the destination of the data.
           src Pointer to the source data.

   staticvoidrte_mov32(uint8_t*dst,constuint8_t*src)[inline],[static]
       Copy 32 bytes from one location to another using optimised instructions. The locations should not
       overlap.

       Parametersdst Pointer to the destination of the data.
           src Pointer to the source data.

   staticvoidrte_mov48(uint8_t*dst,constuint8_t*src)[inline],[static]
       Copy 48 bytes from one location to another using optimised instructions. The locations should not
       overlap.

       Parametersdst Pointer to the destination of the data.
           src Pointer to the source data.

   staticvoidrte_mov64(uint8_t*dst,constuint8_t*src)[inline],[static]
       Copy 64 bytes from one location to another using optimised instructions. The locations should not
       overlap.

       Parametersdst Pointer to the destination of the data.
           src Pointer to the source data.

   staticvoidrte_mov128(uint8_t*dst,constuint8_t*src)[inline],[static]
       Copy 128 bytes from one location to another using optimised instructions. The locations should not
       overlap.

       Parametersdst Pointer to the destination of the data.
           src Pointer to the source data.

   staticvoidrte_mov256(uint8_t*dst,constuint8_t*src)[inline],[static]
       Copy 256 bytes from one location to another using optimised instructions. The locations should not
       overlap.

       Parametersdst Pointer to the destination of the data.
           src Pointer to the source data.

   staticvoid*rte_memcpy(void*dst,constvoid*src,size_tn)[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.

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

Name

       rte_memcpy.h

Synopsis

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)

See Also