vppinfra: clib_memcpy improvement 26/6326/1
authorRay Kinsella <ray.kinsella@intel.com>
Fri, 21 Apr 2017 10:08:43 +0000 (11:08 +0100)
committerRay Kinsella <ray.kinsella@intel.com>
Fri, 21 Apr 2017 10:26:39 +0000 (11:26 +0100)
commit658efd2fc986bca88336569b2e6fa8b537a660d8
tree281381215b1d9870b7963521baf17f870025ba36
parent2f2db1c2021c5aae564d2783a33366527afb5fce
vppinfra: clib_memcpy improvement

In the case where n is a constant 16 bytes, the second load/store is
ignored by the load/store unit - it has neglible/zero cost. In the case
where  n is variable and greater than 512 bytes, the extra if (n == 16)
branch has a very small performance impact.

Change-Id: I04b313cf022c18fee31b1d9bcf6a128414659a99
Signed-off-by: Ray Kinsella <ray.kinsella@intel.com>
src/vppinfra/memcpy_avx.h
src/vppinfra/memcpy_sse3.h