Lines Matching refs:vfloat8

2019 /** @brief Test unaligned vfloat8 data load. */
2020 TEST(vfloat8, UnalignedLoad)
2022 vfloat8 a(&(f32_data[1]));
2033 /** @brief Test scalar duplicated vfloat8 load. */
2034 TEST(vfloat8, ScalarDupLoad)
2036 vfloat8 a(1.1f);
2047 /** @brief Test scalar vfloat8 load. */
2048 TEST(vfloat8, ScalarLoad)
2050 vfloat8 a(1.1f, 2.2f, 3.3f, 4.4f, 5.5f, 6.6f, 7.7f, 8.8f);
2061 /** @brief Test copy vfloat8 load. */
2062 TEST(vfloat8, CopyLoad)
2064 vfloat8 s(1.1f, 2.2f, 3.3f, 4.4f, 5.5f, 6.6f, 7.7f, 8.8f);
2065 vfloat8 a(s.m);
2076 /** @brief Test vfloat8 zero. */
2077 TEST(vfloat8, Zero)
2079 vfloat8 a = vfloat8::zero();
2090 /** @brief Test vfloat8 load1. */
2091 TEST(vfloat8, Load1)
2094 vfloat8 a = vfloat8::load1(&s);
2105 /** @brief Test vfloat8 loada. */
2106 TEST(vfloat8, Loada)
2108 vfloat8 a = vfloat8::loada(&(f32_data[0]));
2119 /** @brief Test vfloat8 lane_id. */
2120 TEST(vfloat8, LaneID)
2122 vfloat8 a = vfloat8::lane_id();
2133 /** @brief Test vfloat8 add. */
2134 TEST(vfloat8, vadd)
2136 vfloat8 a(1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f);
2137 vfloat8 b(0.1f, 0.2f, 0.3f, 0.4f, 0.5f, 0.6f, 0.7f, 0.8f);
2149 /** @brief Test vfloat8 sub. */
2150 TEST(vfloat8, vsub)
2152 vfloat8 a(1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f);
2153 vfloat8 b(0.1f, 0.2f, 0.3f, 0.4f, 0.5f, 0.6f, 0.7f, 0.8f);
2165 /** @brief Test vfloat8 mul. */
2166 TEST(vfloat8, vmul)
2168 vfloat8 a(1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f);
2169 vfloat8 b(0.1f, 0.2f, 0.3f, 0.4f, 0.5f, 0.6f, 0.7f, 0.8f);
2181 /** @brief Test vfloat8 mul. */
2182 TEST(vfloat8, vsmul)
2184 vfloat8 a(1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f);
2197 /** @brief Test vfloat8 mul. */
2198 TEST(vfloat8, svmul)
2201 vfloat8 b(1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f);
2213 /** @brief Test vfloat8 div. */
2214 TEST(vfloat8, vdiv)
2216 vfloat8 a(1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f);
2217 vfloat8 b(0.1f, 0.2f, 0.3f, 0.4f, 0.5f, 0.6f, 0.7f, 0.8f);
2229 /** @brief Test vfloat8 div. */
2230 TEST(vfloat8, vsdiv)
2232 vfloat8 a(0.1f, 0.2f, 0.3f, 0.4f, 0.5f, 0.6f, 0.7f, 0.8f);
2234 vfloat8 r = a / b;
2246 /** @brief Test vfloat8 div. */
2247 TEST(vfloat8, svdiv)
2250 vfloat8 b(0.1f, 0.2f, 0.3f, 0.4f, 0.5f, 0.6f, 0.7f, 0.8f);
2251 vfloat8 r = a / b;
2263 /** @brief Test vfloat8 ceq. */
2264 TEST(vfloat8, ceq)
2266 vfloat8 a1(1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f);
2267 vfloat8 b1(0.1f, 0.2f, 0.3f, 0.4f, 0.5f, 0.6f, 0.7f, 0.8f);
2273 vfloat8 a2(1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f);
2274 vfloat8 b2(1.0f, 0.2f, 0.3f, 0.4f, 0.5f, 0.6f, 0.7f, 0.8f);
2280 vfloat8 a3(1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f);
2281 vfloat8 b3(1.0f, 0.2f, 3.0f, 0.4f, 0.5f, 0.6f, 0.7f, 0.8f);
2287 vfloat8 a4(1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f);
2294 /** @brief Test vfloat8 cne. */
2295 TEST(vfloat8, cne)
2297 vfloat8 a1(1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f);
2298 vfloat8 b1(0.1f, 0.2f, 0.3f, 0.4f, 0.5f, 0.6f, 0.7f, 0.8f);
2304 vfloat8 a2(1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f);
2305 vfloat8 b2(1.0f, 0.2f, 0.3f, 0.4f, 0.5f, 0.6f, 0.7f, 0.8f);
2311 vfloat8 a3(1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f);
2312 vfloat8 b3(1.0f, 0.2f, 3.0f, 0.4f, 0.5f, 0.6f, 0.7f, 0.8f);
2318 vfloat8 a4(1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f);
2325 /** @brief Test vfloat8 clt. */
2326 TEST(vfloat8, clt)
2328 vfloat8 a(1.0f, 2.0f, 3.0f, 4.0f, 1.0f, 2.0f, 3.0f, 4.0f);
2329 vfloat8 b(0.9f, 2.1f, 3.0f, 4.1f, 0.9f, 2.1f, 3.0f, 4.1f);
2334 /** @brief Test vfloat8 cle. */
2335 TEST(vfloat8, cle)
2337 vfloat8 a(1.0f, 2.0f, 3.0f, 4.0f, 1.0f, 2.0f, 3.0f, 4.0f);
2338 vfloat8 b(0.9f, 2.1f, 3.0f, 4.1f, 0.9f, 2.1f, 3.0f, 4.1f);
2343 /** @brief Test vfloat8 cgt. */
2344 TEST(vfloat8, cgt)
2346 vfloat8 a(1.0f, 2.0f, 3.0f, 4.0f, 1.0f, 2.0f, 3.0f, 4.0f);
2347 vfloat8 b(0.9f, 2.1f, 3.0f, 4.1f, 0.9f, 2.1f, 3.0f, 4.1f);
2352 /** @brief Test vfloat8 cge. */
2353 TEST(vfloat8, cge)
2355 vfloat8 a(1.0f, 2.0f, 3.0f, 4.0f, 1.0f, 2.0f, 3.0f, 4.0f);
2356 vfloat8 b(0.9f, 2.1f, 3.0f, 4.1f, 0.9f, 2.1f, 3.0f, 4.1f);
2361 /** @brief Test vfloat8 min. */
2362 TEST(vfloat8, min)
2364 vfloat8 a(1.0f, 2.0f, 3.0f, 4.0f, 1.0f, 2.0f, 3.0f, 4.0f);
2365 vfloat8 b(0.9f, 2.1f, 3.0f, 4.1f, 0.9f, 2.1f, 3.0f, 4.1f);
2366 vfloat8 r = min(a, b);
2377 /** @brief Test vfloat8 max. */
2378 TEST(vfloat8, max)
2380 vfloat8 a(1.0f, 2.0f, 3.0f, 4.0f, 1.0f, 2.0f, 3.0f, 4.0f);
2381 vfloat8 b(0.9f, 2.1f, 3.0f, 4.1f, 0.9f, 2.1f, 3.0f, 4.1f);
2382 vfloat8 r = max(a, b);
2393 /** @brief Test vfloat8 clamp. */
2394 TEST(vfloat8, clamp)
2396 vfloat8 a1(1.0f, 2.0f, 3.0f, 4.0f, 1.0f, 2.0f, 3.0f, 4.0f);
2397 vfloat8 r1 = clamp(2.1f, 3.0f, a1);
2407 vfloat8 a2(1.0f, 2.0f, qnan, 4.0f, 1.0f, 2.0f, qnan, 4.0f);
2408 vfloat8 r2 = clamp(2.1f, 3.0f, a2);
2419 /** @brief Test vfloat8 clampz. */
2420 TEST(vfloat8, clampz)
2422 vfloat8 a1(-1.0f, 0.0f, 0.1f, 4.0f, -1.0f, 0.0f, 0.1f, 4.0f);
2423 vfloat8 r1 = clampz(3.0f, a1);
2433 vfloat8 a2(-1.0f, 0.0f, qnan, 4.0f, -1.0f, 0.0f, qnan, 4.0f);
2434 vfloat8 r2 = clampz(3.0f, a2);
2445 /** @brief Test vfloat8 clampz. */
2446 TEST(vfloat8, clampzo)
2448 vfloat8 a1(-1.0f, 0.0f, 0.1f, 4.0f, -1.0f, 0.0f, 0.1f, 4.0f);
2449 vfloat8 r1 = clampzo(a1);
2459 vfloat8 a2(-1.0f, 0.0f, qnan, 4.0f, -1.0f, 0.0f, qnan, 4.0f);
2460 vfloat8 r2 = clampzo(a2);
2471 /** @brief Test vfloat8 abs. */
2472 TEST(vfloat8, abs)
2474 vfloat8 a(-1.0f, 0.0f, 0.1f, 4.0f, -1.0f, 0.0f, 0.1f, 4.0f);
2475 vfloat8 r = abs(a);
2486 /** @brief Test vfloat8 round. */
2487 TEST(vfloat8, round)
2489 vfloat8 a(1.1f, 1.5f, 1.6f, 4.0f, 1.1f, 1.5f, 1.6f, 4.0f);
2490 vfloat8 r = round(a);
2501 /** @brief Test vfloat8 hmin. */
2502 TEST(vfloat8, hmin)
2504 vfloat8 a1(1.1f, 1.5f, 1.6f, 4.0f, 1.1f, 1.5f, 1.6f, 4.0f);
2505 vfloat8 r1 = hmin(a1);
2515 vfloat8 a2(1.1f, 1.5f, 1.6f, 0.2f, 1.1f, 1.5f, 1.6f, 0.2f);
2516 vfloat8 r2 = hmin(a2);
2527 /** @brief Test vfloat8 hmin_s. */
2528 TEST(vfloat8, hmin_s)
2530 vfloat8 a1(1.1f, 1.5f, 1.6f, 4.0f, 1.1f, 1.5f, 1.6f, 4.0f);
2534 vfloat8 a2(1.1f, 1.5f, 1.6f, 0.2f, 1.1f, 1.5f, 1.6f, 0.2f);
2539 /** @brief Test vfloat8 hmax. */
2540 TEST(vfloat8, hmax)
2542 vfloat8 a1(1.1f, 1.5f, 1.6f, 4.0f, 1.1f, 1.5f, 1.6f, 4.0f);
2543 vfloat8 r1 = hmax(a1);
2553 vfloat8 a2(1.1f, 1.5f, 1.6f, 0.2f, 1.1f, 1.5f, 1.6f, 0.2f);
2554 vfloat8 r2 = hmax(a2);
2565 /** @brief Test vfloat8 hmax_s. */
2566 TEST(vfloat8, hmax_s)
2568 vfloat8 a1(1.1f, 1.5f, 1.6f, 4.0f, 1.1f, 1.5f, 1.6f, 4.0f);
2572 vfloat8 a2(1.1f, 1.5f, 1.6f, 0.2f, 1.1f, 1.5f, 1.6f, 0.2f);
2577 /** @brief Test vfloat8 hadd_s. */
2578 TEST(vfloat8, hadd_s)
2580 vfloat8 a1(1.1f, 1.5f, 1.6f, 4.0f, 1.1f, 1.5f, 1.6f, 4.0f);
2586 /** @brief Test vfloat8 sqrt. */
2587 TEST(vfloat8, sqrt)
2589 vfloat8 a(1.0f, 2.0f, 3.0f, 4.0f, 1.0f, 2.0f, 3.0f, 4.0f);
2590 vfloat8 r = sqrt(a);
2601 /** @brief Test vfloat8 select. */
2602 TEST(vfloat8, select)
2604 vfloat8 m1(1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f);
2605 vfloat8 m2(1.0f, 2.0f, 1.0f, 2.0f, 1.0f, 2.0f, 1.0f, 2.0f);
2608 vfloat8 a(1.0f, 3.0f, 3.0f, 1.0f, 1.0f, 3.0f, 3.0f, 1.0);
2609 vfloat8 b(4.0f, 2.0f, 2.0f, 4.0f, 4.0f, 2.0f, 2.0f, 4.0);
2612 vfloat8 r1 = select(a, b, cond);
2623 vfloat8 r2 = select(b, a, cond);
2634 /** @brief Test vfloat8 select MSB only. */
2635 TEST(vfloat8, select_msb)
2641 vfloat8 a(1.0f, 3.0f, 3.0f, 1.0f, 1.0f, 3.0f, 3.0f, 1.0f);
2642 vfloat8 b(4.0f, 2.0f, 2.0f, 4.0f, 4.0f, 2.0f, 2.0f, 4.0f);
2645 vfloat8 r1 = select(a, b, cond);
2656 vfloat8 r2 = select(b, a, cond);
2667 /** @brief Test vfloat8 gatherf. */
2668 TEST(vfloat8, gatherf)
2671 vfloat8 r = gatherf(f32_data, indices);
2682 /** @brief Test vfloat8 store. */
2683 TEST(vfloat8, store)
2686 vfloat8 a(f32_data);
2698 /** @brief Test vfloat8 storea. */
2699 TEST(vfloat8, storea)
2702 vfloat8 a(f32_data);
2714 /** @brief Test vfloat8 float_to_int. */
2715 TEST(vfloat8, float_to_int)
2717 vfloat8 a(1.1f, 1.5f, 1.6f, 4.0f, 1.1f, 1.5f, 1.6f, 4.0f);
3428 vfloat8 ma(0.0f);
3429 vfloat8 mb(1.0f);
3432 vfloat8 r1 = select(ma, mb, m1);
3437 vfloat8 r2 = select(ma, mb, m2);
3445 vfloat8 m1a(0, 1, 0, 1, 0, 1, 0, 1);
3446 vfloat8 m1b(1, 1, 1, 1, 1, 1, 1, 1);
3449 vfloat8 m2a(1, 1, 0, 0, 1, 1, 0, 0);
3450 vfloat8 m2b(1, 1, 1, 1, 1, 1, 1, 1);
3460 vfloat8 m1a(0, 1, 0, 1, 0, 1, 0, 1);
3461 vfloat8 m1b(1, 1, 1, 1, 1, 1, 1, 1);
3464 vfloat8 m2a(1, 1, 0, 0, 1, 1, 0, 0);
3465 vfloat8 m2b(1, 1, 1, 1, 1, 1, 1, 1);
3475 vfloat8 m1a(0, 1, 0, 1, 0, 1, 0, 1);
3476 vfloat8 m1b(1, 1, 1, 1, 1, 1, 1, 1);
3479 vfloat8 m2a(1, 1, 0, 0, 1, 1, 0, 0);
3480 vfloat8 m2b(1, 1, 1, 1, 1, 1, 1, 1);
3490 vfloat8 m1a(0, 1, 0, 1, 0, 1, 0, 1);
3491 vfloat8 m1b(1, 1, 1, 1, 1, 1, 1, 1);