home | help
rte_memcpy.h(3) 		      DPDK			 rte_memcpy.h(3)

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)

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],  [sta-
     tic]
     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],  [sta-
     tic]
     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],  [sta-
     tic]
     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],  [sta-
     tic]
     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],  [sta-
     tic]
     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],  [sta-
     tic]
     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.

Author
     Generated automatically by Doxygen for DPDK from the source code.

Version 25.11.0 		 Thu Aug 27 2026		 rte_memcpy.h(3)

home | help