2016-05-19 21:48, Jianbo Liu: > On 13 May 2016 at 23:49, Thomas Monjalon <thomas.monjalon at 6wind.com> wrote: > > 2016-05-10 14:01, Jianbo Liu: > >> Other APP may call rte_memcpy by function pointer, > >> so change it to an inline function. > > > > Any example in mind? > > > It's for ODP-DPDK.
Given that ODP is open (dataplane), you should also consider ppc64 and tile. > >> --- a/lib/librte_eal/common/include/arch/arm/rte_memcpy_64.h > >> +++ b/lib/librte_eal/common/include/arch/arm/rte_memcpy_64.h > >> -#define rte_memcpy(d, s, n) memcpy((d), (s), (n)) > >> +static inline void * > >> +rte_memcpy(void *dst, const void *src, size_t n) > >> +{ > >> + return memcpy(dst, src, n); > >> +} > > > > It has no sense if other archs (arm32, ppc64, tile) are not updated. > > > But it also an inline function on x86. In x86, it was implemented as a function because there is some code. If you want to make sure it is always a function, even in the case of just calling memcpy from libc, you should put a doxygen comment in the generic part and adapt every archs.