message: Unit tests for AVX interleave functions
diff: @@ -1211,6 +1211,8 @@ TEST(SIMD, Logical)
  //
  TEST(SIMD, Transposition)
  +{
  + // float4 ---------------------------------------------
  {
  // shuffle
  @@ -1239,6 +1241,21 @@ TEST(SIMD, Transposition)
  EXPECT_TRUE( all(interleave_hi(u, v) == simd::float4(3.0f, 7.0f, 4.0f, 8.0f)) );
  }
  + // float8 ---------------------------------------------
  + {
  + // shuffle
  +
  + simd::float8 u(1, 2, 3, 4, 5, 6, 7, 8);
  + simd::float8 v(9, 10, 11, 12, 13, 14, 15, 16);
  +
  +
  + // interleave_xx
  +
  + EXPECT_TRUE( all(interleave_lo(u, v) == simd::float8(1, 9, 2, 10, 3, 11, 4, 12)) );
  + EXPECT_TRUE( all(interleave_hi(u, v) == simd::float8(5, 13, 6, 14, 7, 15, 8, 16)) );
  + }
  +}
  +
  //-------------------------------------------------------------------------------------------------
  // Test math functions
  