buffers: fix vector types 58/17058/2
authorDamjan Marion <damjan.marion@gmail.com>
Thu, 24 Jan 2019 14:36:57 +0000 (15:36 +0100)
committerDamjan Marion <damjan.marion@gmail.com>
Thu, 24 Jan 2019 14:36:57 +0000 (15:36 +0100)
Change-Id: I9df96264e30806ac3daf7121f314f34f06232413
Signed-off-by: Damjan Marion <damjan.marion@gmail.com>
src/vlib/buffer.h
src/vlib/buffer_funcs.h

index 095c09d..f7fdf20 100644 (file)
@@ -178,10 +178,10 @@ typedef union
   u8x16 as_u8x16[4];
 #endif
 #ifdef CLIB_HAVE_VEC256
-  u8x16 as_u8x32[2];
+  u8x32 as_u8x32[2];
 #endif
 #ifdef CLIB_HAVE_VEC512
-  u8x16 as_u8x64[1];
+  u8x64 as_u8x64[1];
 #endif
 } vlib_buffer_t;
 
index c224147..1c1cd28 100644 (file)
@@ -74,7 +74,9 @@ STATIC_ASSERT_OFFSET_OF (vlib_buffer_t, template_end, 64);
 static_always_inline void
 vlib_buffer_copy_template (vlib_buffer_t * b, vlib_buffer_t * bt)
 {
-#if defined CLIB_HAVE_VEC256
+#if defined CLIB_HAVE_VEC512
+  b->as_u8x64[0] = bt->as_u8x64[0];
+#elif defined (CLIB_HAVE_VEC256)
   b->as_u8x32[0] = bt->as_u8x32[0];
   b->as_u8x32[1] = bt->as_u8x32[1];
 #elif defined (CLIB_HAVE_VEC128)