| 1992 | } |
| 1993 | |
| 1994 | void TSSEEmulTest::Test_mm_loadu_pd() { |
| 1995 | alignas(16) double stub[4] = { |
| 1996 | 0.f, 1.f, |
| 1997 | 2.f, 3.f |
| 1998 | }; |
| 1999 | |
| 2000 | for (size_t shift = 0; shift != 3; ++shift) { |
| 2001 | const __m128d val = _mm_loadu_pd(&stub[shift]); |
| 2002 | alignas(16) double res[2]; |
| 2003 | _mm_store_pd(res, val); |
| 2004 | |
| 2005 | for (size_t i = 0; i != 2; ++i) { |
| 2006 | UNIT_ASSERT_EQUAL_C(res[i], stub[shift + i], "res: " << HexEncode(res, 16) << " vs etalon: " << HexEncode(&stub[shift], 16)); |
| 2007 | } |
| 2008 | } |
| 2009 | } |
| 2010 | |
| 2011 | void TSSEEmulTest::Test_mm_rsqrt_ps() { |
| 2012 | alignas(16) const char bytes[16] = { |
nothing calls this directly
no test coverage detected