Update googletest to 1.18.0 and SIMDe to 0.8.2.

Googletest 1.18 asks for CMake 3.13 or newer, so configuring the tests no longer warns that CMake compatibility below 3.10 is deprecated.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Ryan Henry 2026-09-24 14:30:19 -06:00
parent e4e666f459
commit 3f10e05176
912 changed files with 224964 additions and 11502 deletions

View file

@ -3207,6 +3207,234 @@ test_simde_mm512_maskz_max_epu64 (SIMDE_MUNIT_TEST_ARGS) {
return 0;
}
#if defined(SIMDE_FLOAT16_IS_SCALAR)
static int
test_simde_mm512_max_ph (SIMDE_MUNIT_TEST_ARGS) {
#if 1
static const struct {
const simde_float16 a[32];
const simde_float16 b[32];
const simde_float16 r[32];
} test_vec[] = {
{ { SIMDE_FLOAT16_VALUE( 77.75), SIMDE_FLOAT16_VALUE( -48.38), SIMDE_FLOAT16_VALUE( -7.66), SIMDE_FLOAT16_VALUE( -35.53),
SIMDE_FLOAT16_VALUE( -15.31), SIMDE_FLOAT16_VALUE( -45.06), SIMDE_FLOAT16_VALUE( 66.81), SIMDE_FLOAT16_VALUE( -69.88),
SIMDE_FLOAT16_VALUE( 74.50), SIMDE_FLOAT16_VALUE( 32.53), SIMDE_FLOAT16_VALUE( 79.38), SIMDE_FLOAT16_VALUE( 10.47),
SIMDE_FLOAT16_VALUE( -1.68), SIMDE_FLOAT16_VALUE( -20.31), SIMDE_FLOAT16_VALUE( 15.38), SIMDE_FLOAT16_VALUE( -46.38),
SIMDE_FLOAT16_VALUE( 4.04), SIMDE_FLOAT16_VALUE( 7.79), SIMDE_FLOAT16_VALUE( -36.53), SIMDE_FLOAT16_VALUE( -74.88),
SIMDE_FLOAT16_VALUE( 22.08), SIMDE_FLOAT16_VALUE( 84.56), SIMDE_FLOAT16_VALUE( -98.94), SIMDE_FLOAT16_VALUE( 25.23),
SIMDE_FLOAT16_VALUE( -10.24), SIMDE_FLOAT16_VALUE( 22.94), SIMDE_FLOAT16_VALUE( 68.56), SIMDE_FLOAT16_VALUE( 0.81),
SIMDE_FLOAT16_VALUE( -61.03), SIMDE_FLOAT16_VALUE( -7.06), SIMDE_FLOAT16_VALUE( -74.31), SIMDE_FLOAT16_VALUE( -83.25) },
{ SIMDE_FLOAT16_VALUE( 44.59), SIMDE_FLOAT16_VALUE( 18.02), SIMDE_FLOAT16_VALUE( -18.80), SIMDE_FLOAT16_VALUE( -70.75),
SIMDE_FLOAT16_VALUE( 72.94), SIMDE_FLOAT16_VALUE( -51.97), SIMDE_FLOAT16_VALUE( -40.62), SIMDE_FLOAT16_VALUE( 47.50),
SIMDE_FLOAT16_VALUE( 80.56), SIMDE_FLOAT16_VALUE( -61.28), SIMDE_FLOAT16_VALUE( -42.03), SIMDE_FLOAT16_VALUE( -21.12),
SIMDE_FLOAT16_VALUE( 18.41), SIMDE_FLOAT16_VALUE( 73.38), SIMDE_FLOAT16_VALUE( 32.50), SIMDE_FLOAT16_VALUE( -77.56),
SIMDE_FLOAT16_VALUE( -18.86), SIMDE_FLOAT16_VALUE( 95.94), SIMDE_FLOAT16_VALUE( -52.41), SIMDE_FLOAT16_VALUE( -96.75),
SIMDE_FLOAT16_VALUE( 80.50), SIMDE_FLOAT16_VALUE( -51.38), SIMDE_FLOAT16_VALUE( 28.45), SIMDE_FLOAT16_VALUE( -29.70),
SIMDE_FLOAT16_VALUE( 71.56), SIMDE_FLOAT16_VALUE( -2.99), SIMDE_FLOAT16_VALUE( 71.12), SIMDE_FLOAT16_VALUE( -89.50),
SIMDE_FLOAT16_VALUE( 89.94), SIMDE_FLOAT16_VALUE( 96.75), SIMDE_FLOAT16_VALUE( -72.75), SIMDE_FLOAT16_VALUE( 34.53) },
{ SIMDE_FLOAT16_VALUE( 77.75), SIMDE_FLOAT16_VALUE( 18.02), SIMDE_FLOAT16_VALUE( -7.66), SIMDE_FLOAT16_VALUE( -35.53),
SIMDE_FLOAT16_VALUE( 72.94), SIMDE_FLOAT16_VALUE( -45.06), SIMDE_FLOAT16_VALUE( 66.81), SIMDE_FLOAT16_VALUE( 47.50),
SIMDE_FLOAT16_VALUE( 80.56), SIMDE_FLOAT16_VALUE( 32.53), SIMDE_FLOAT16_VALUE( 79.38), SIMDE_FLOAT16_VALUE( 10.47),
SIMDE_FLOAT16_VALUE( 18.41), SIMDE_FLOAT16_VALUE( 73.38), SIMDE_FLOAT16_VALUE( 32.50), SIMDE_FLOAT16_VALUE( -46.38),
SIMDE_FLOAT16_VALUE( 4.04), SIMDE_FLOAT16_VALUE( 95.94), SIMDE_FLOAT16_VALUE( -36.53), SIMDE_FLOAT16_VALUE( -74.88),
SIMDE_FLOAT16_VALUE( 80.50), SIMDE_FLOAT16_VALUE( 84.56), SIMDE_FLOAT16_VALUE( 28.45), SIMDE_FLOAT16_VALUE( 25.23),
SIMDE_FLOAT16_VALUE( 71.56), SIMDE_FLOAT16_VALUE( 22.94), SIMDE_FLOAT16_VALUE( 71.12), SIMDE_FLOAT16_VALUE( 0.81),
SIMDE_FLOAT16_VALUE( 89.94), SIMDE_FLOAT16_VALUE( 96.75), SIMDE_FLOAT16_VALUE( -72.75), SIMDE_FLOAT16_VALUE( 34.53) } },
{ { SIMDE_FLOAT16_VALUE( 14.77), SIMDE_FLOAT16_VALUE( 8.47), SIMDE_FLOAT16_VALUE( 63.78), SIMDE_FLOAT16_VALUE( -12.27),
SIMDE_FLOAT16_VALUE( 56.50), SIMDE_FLOAT16_VALUE( -76.81), SIMDE_FLOAT16_VALUE( -64.75), SIMDE_FLOAT16_VALUE( 37.06),
SIMDE_FLOAT16_VALUE( -38.09), SIMDE_FLOAT16_VALUE( -6.81), SIMDE_FLOAT16_VALUE( -84.06), SIMDE_FLOAT16_VALUE( 80.31),
SIMDE_FLOAT16_VALUE( -33.47), SIMDE_FLOAT16_VALUE( 48.41), SIMDE_FLOAT16_VALUE( -97.25), SIMDE_FLOAT16_VALUE( 47.66),
SIMDE_FLOAT16_VALUE( 44.38), SIMDE_FLOAT16_VALUE( -49.62), SIMDE_FLOAT16_VALUE( 50.88), SIMDE_FLOAT16_VALUE( 24.89),
SIMDE_FLOAT16_VALUE( -1.00), SIMDE_FLOAT16_VALUE( -20.66), SIMDE_FLOAT16_VALUE( 95.19), SIMDE_FLOAT16_VALUE( -29.44),
SIMDE_FLOAT16_VALUE( 76.38), SIMDE_FLOAT16_VALUE( 66.25), SIMDE_FLOAT16_VALUE( -18.91), SIMDE_FLOAT16_VALUE( 66.31),
SIMDE_FLOAT16_VALUE( 63.03), SIMDE_FLOAT16_VALUE( 8.35), SIMDE_FLOAT16_VALUE( 0.83), SIMDE_FLOAT16_VALUE( -22.19) },
{ SIMDE_FLOAT16_VALUE( -83.19), SIMDE_FLOAT16_VALUE( -35.38), SIMDE_FLOAT16_VALUE( 65.56), SIMDE_FLOAT16_VALUE( 73.31),
SIMDE_FLOAT16_VALUE( -12.21), SIMDE_FLOAT16_VALUE( -99.25), SIMDE_FLOAT16_VALUE( 10.37), SIMDE_FLOAT16_VALUE( 49.69),
SIMDE_FLOAT16_VALUE( -6.05), SIMDE_FLOAT16_VALUE( 26.30), SIMDE_FLOAT16_VALUE( 30.02), SIMDE_FLOAT16_VALUE( 60.47),
SIMDE_FLOAT16_VALUE( -25.31), SIMDE_FLOAT16_VALUE( 32.78), SIMDE_FLOAT16_VALUE( 8.15), SIMDE_FLOAT16_VALUE( -80.94),
SIMDE_FLOAT16_VALUE( 83.12), SIMDE_FLOAT16_VALUE( -40.97), SIMDE_FLOAT16_VALUE( 43.94), SIMDE_FLOAT16_VALUE( -17.86),
SIMDE_FLOAT16_VALUE( 38.38), SIMDE_FLOAT16_VALUE( 39.12), SIMDE_FLOAT16_VALUE( 52.72), SIMDE_FLOAT16_VALUE( 14.73),
SIMDE_FLOAT16_VALUE( 5.39), SIMDE_FLOAT16_VALUE( -66.19), SIMDE_FLOAT16_VALUE( -18.97), SIMDE_FLOAT16_VALUE( -31.58),
SIMDE_FLOAT16_VALUE( 42.16), SIMDE_FLOAT16_VALUE( 81.88), SIMDE_FLOAT16_VALUE( 46.22), SIMDE_FLOAT16_VALUE( 58.97) },
{ SIMDE_FLOAT16_VALUE( 14.77), SIMDE_FLOAT16_VALUE( 8.47), SIMDE_FLOAT16_VALUE( 65.56), SIMDE_FLOAT16_VALUE( 73.31),
SIMDE_FLOAT16_VALUE( 56.50), SIMDE_FLOAT16_VALUE( -76.81), SIMDE_FLOAT16_VALUE( 10.37), SIMDE_FLOAT16_VALUE( 49.69),
SIMDE_FLOAT16_VALUE( -6.05), SIMDE_FLOAT16_VALUE( 26.30), SIMDE_FLOAT16_VALUE( 30.02), SIMDE_FLOAT16_VALUE( 80.31),
SIMDE_FLOAT16_VALUE( -25.31), SIMDE_FLOAT16_VALUE( 48.41), SIMDE_FLOAT16_VALUE( 8.15), SIMDE_FLOAT16_VALUE( 47.66),
SIMDE_FLOAT16_VALUE( 83.12), SIMDE_FLOAT16_VALUE( -40.97), SIMDE_FLOAT16_VALUE( 50.88), SIMDE_FLOAT16_VALUE( 24.89),
SIMDE_FLOAT16_VALUE( 38.38), SIMDE_FLOAT16_VALUE( 39.12), SIMDE_FLOAT16_VALUE( 95.19), SIMDE_FLOAT16_VALUE( 14.73),
SIMDE_FLOAT16_VALUE( 76.38), SIMDE_FLOAT16_VALUE( 66.25), SIMDE_FLOAT16_VALUE( -18.91), SIMDE_FLOAT16_VALUE( 66.31),
SIMDE_FLOAT16_VALUE( 63.03), SIMDE_FLOAT16_VALUE( 81.88), SIMDE_FLOAT16_VALUE( 46.22), SIMDE_FLOAT16_VALUE( 58.97) } },
{ { SIMDE_FLOAT16_VALUE( -53.53), SIMDE_FLOAT16_VALUE( 11.77), SIMDE_FLOAT16_VALUE( 32.31), SIMDE_FLOAT16_VALUE( 34.28),
SIMDE_FLOAT16_VALUE( 12.53), SIMDE_FLOAT16_VALUE( -57.34), SIMDE_FLOAT16_VALUE( -16.05), SIMDE_FLOAT16_VALUE( -93.50),
SIMDE_FLOAT16_VALUE( 68.94), SIMDE_FLOAT16_VALUE( -86.00), SIMDE_FLOAT16_VALUE( 66.94), SIMDE_FLOAT16_VALUE( -56.34),
SIMDE_FLOAT16_VALUE( 46.75), SIMDE_FLOAT16_VALUE( -24.91), SIMDE_FLOAT16_VALUE( -37.31), SIMDE_FLOAT16_VALUE( 29.91),
SIMDE_FLOAT16_VALUE( 34.12), SIMDE_FLOAT16_VALUE( -93.38), SIMDE_FLOAT16_VALUE( -87.94), SIMDE_FLOAT16_VALUE( -27.48),
SIMDE_FLOAT16_VALUE( 45.75), SIMDE_FLOAT16_VALUE( 64.75), SIMDE_FLOAT16_VALUE( 87.25), SIMDE_FLOAT16_VALUE( -48.88),
SIMDE_FLOAT16_VALUE( 98.56), SIMDE_FLOAT16_VALUE( -31.73), SIMDE_FLOAT16_VALUE( 19.56), SIMDE_FLOAT16_VALUE( 40.72),
SIMDE_FLOAT16_VALUE( -49.88), SIMDE_FLOAT16_VALUE( -34.19), SIMDE_FLOAT16_VALUE( -0.32), SIMDE_FLOAT16_VALUE( -3.40) },
{ SIMDE_FLOAT16_VALUE( 77.56), SIMDE_FLOAT16_VALUE( -68.00), SIMDE_FLOAT16_VALUE( -69.12), SIMDE_FLOAT16_VALUE( -9.90),
SIMDE_FLOAT16_VALUE( -25.34), SIMDE_FLOAT16_VALUE( 14.82), SIMDE_FLOAT16_VALUE( -3.42), SIMDE_FLOAT16_VALUE( -56.38),
SIMDE_FLOAT16_VALUE( 28.80), SIMDE_FLOAT16_VALUE( -36.47), SIMDE_FLOAT16_VALUE( -12.74), SIMDE_FLOAT16_VALUE( -24.44),
SIMDE_FLOAT16_VALUE( 38.62), SIMDE_FLOAT16_VALUE( 49.97), SIMDE_FLOAT16_VALUE( -94.50), SIMDE_FLOAT16_VALUE( -27.23),
SIMDE_FLOAT16_VALUE( 56.62), SIMDE_FLOAT16_VALUE( -82.44), SIMDE_FLOAT16_VALUE( 45.28), SIMDE_FLOAT16_VALUE( 2.36),
SIMDE_FLOAT16_VALUE( 82.31), SIMDE_FLOAT16_VALUE( 32.53), SIMDE_FLOAT16_VALUE( 53.50), SIMDE_FLOAT16_VALUE( 80.88),
SIMDE_FLOAT16_VALUE( -99.19), SIMDE_FLOAT16_VALUE( -26.94), SIMDE_FLOAT16_VALUE( 21.56), SIMDE_FLOAT16_VALUE( -49.09),
SIMDE_FLOAT16_VALUE( 38.84), SIMDE_FLOAT16_VALUE( -78.75), SIMDE_FLOAT16_VALUE( 47.50), SIMDE_FLOAT16_VALUE( 16.42) },
{ SIMDE_FLOAT16_VALUE( 77.56), SIMDE_FLOAT16_VALUE( 11.77), SIMDE_FLOAT16_VALUE( 32.31), SIMDE_FLOAT16_VALUE( 34.28),
SIMDE_FLOAT16_VALUE( 12.53), SIMDE_FLOAT16_VALUE( 14.82), SIMDE_FLOAT16_VALUE( -3.42), SIMDE_FLOAT16_VALUE( -56.38),
SIMDE_FLOAT16_VALUE( 68.94), SIMDE_FLOAT16_VALUE( -36.47), SIMDE_FLOAT16_VALUE( 66.94), SIMDE_FLOAT16_VALUE( -24.44),
SIMDE_FLOAT16_VALUE( 46.75), SIMDE_FLOAT16_VALUE( 49.97), SIMDE_FLOAT16_VALUE( -37.31), SIMDE_FLOAT16_VALUE( 29.91),
SIMDE_FLOAT16_VALUE( 56.62), SIMDE_FLOAT16_VALUE( -82.44), SIMDE_FLOAT16_VALUE( 45.28), SIMDE_FLOAT16_VALUE( 2.36),
SIMDE_FLOAT16_VALUE( 82.31), SIMDE_FLOAT16_VALUE( 64.75), SIMDE_FLOAT16_VALUE( 87.25), SIMDE_FLOAT16_VALUE( 80.88),
SIMDE_FLOAT16_VALUE( 98.56), SIMDE_FLOAT16_VALUE( -26.94), SIMDE_FLOAT16_VALUE( 21.56), SIMDE_FLOAT16_VALUE( 40.72),
SIMDE_FLOAT16_VALUE( 38.84), SIMDE_FLOAT16_VALUE( -34.19), SIMDE_FLOAT16_VALUE( 47.50), SIMDE_FLOAT16_VALUE( 16.42) } },
{ { SIMDE_FLOAT16_VALUE( -46.78), SIMDE_FLOAT16_VALUE( 78.38), SIMDE_FLOAT16_VALUE( -93.50), SIMDE_FLOAT16_VALUE( 27.88),
SIMDE_FLOAT16_VALUE( -6.81), SIMDE_FLOAT16_VALUE( 3.10), SIMDE_FLOAT16_VALUE( 71.50), SIMDE_FLOAT16_VALUE( -78.00),
SIMDE_FLOAT16_VALUE( 66.62), SIMDE_FLOAT16_VALUE( -41.25), SIMDE_FLOAT16_VALUE( -2.45), SIMDE_FLOAT16_VALUE( 5.28),
SIMDE_FLOAT16_VALUE( -91.25), SIMDE_FLOAT16_VALUE( 3.03), SIMDE_FLOAT16_VALUE( 78.06), SIMDE_FLOAT16_VALUE( 65.31),
SIMDE_FLOAT16_VALUE( 20.56), SIMDE_FLOAT16_VALUE( 23.34), SIMDE_FLOAT16_VALUE( -32.31), SIMDE_FLOAT16_VALUE( 2.87),
SIMDE_FLOAT16_VALUE( -44.12), SIMDE_FLOAT16_VALUE( -78.81), SIMDE_FLOAT16_VALUE( -16.28), SIMDE_FLOAT16_VALUE( -43.38),
SIMDE_FLOAT16_VALUE( -5.77), SIMDE_FLOAT16_VALUE( -94.69), SIMDE_FLOAT16_VALUE( 7.55), SIMDE_FLOAT16_VALUE( -66.94),
SIMDE_FLOAT16_VALUE( -73.44), SIMDE_FLOAT16_VALUE( -44.94), SIMDE_FLOAT16_VALUE( 49.50), SIMDE_FLOAT16_VALUE( -20.23) },
{ SIMDE_FLOAT16_VALUE( -66.56), SIMDE_FLOAT16_VALUE( 56.03), SIMDE_FLOAT16_VALUE( -92.38), SIMDE_FLOAT16_VALUE( 26.61),
SIMDE_FLOAT16_VALUE( -40.88), SIMDE_FLOAT16_VALUE( 79.12), SIMDE_FLOAT16_VALUE( 48.59), SIMDE_FLOAT16_VALUE( -74.25),
SIMDE_FLOAT16_VALUE( -62.12), SIMDE_FLOAT16_VALUE( -53.84), SIMDE_FLOAT16_VALUE( 31.05), SIMDE_FLOAT16_VALUE( -53.38),
SIMDE_FLOAT16_VALUE( 49.19), SIMDE_FLOAT16_VALUE( 9.11), SIMDE_FLOAT16_VALUE( -88.06), SIMDE_FLOAT16_VALUE( -30.25),
SIMDE_FLOAT16_VALUE( -67.56), SIMDE_FLOAT16_VALUE( -20.39), SIMDE_FLOAT16_VALUE( 72.62), SIMDE_FLOAT16_VALUE( -11.70),
SIMDE_FLOAT16_VALUE( 0.78), SIMDE_FLOAT16_VALUE( -43.66), SIMDE_FLOAT16_VALUE( 44.94), SIMDE_FLOAT16_VALUE( 95.00),
SIMDE_FLOAT16_VALUE( -38.38), SIMDE_FLOAT16_VALUE( -47.50), SIMDE_FLOAT16_VALUE( -71.88), SIMDE_FLOAT16_VALUE( -11.84),
SIMDE_FLOAT16_VALUE( 7.55), SIMDE_FLOAT16_VALUE( 77.62), SIMDE_FLOAT16_VALUE( 67.94), SIMDE_FLOAT16_VALUE( 40.97) },
{ SIMDE_FLOAT16_VALUE( -46.78), SIMDE_FLOAT16_VALUE( 78.38), SIMDE_FLOAT16_VALUE( -92.38), SIMDE_FLOAT16_VALUE( 27.88),
SIMDE_FLOAT16_VALUE( -6.81), SIMDE_FLOAT16_VALUE( 79.12), SIMDE_FLOAT16_VALUE( 71.50), SIMDE_FLOAT16_VALUE( -74.25),
SIMDE_FLOAT16_VALUE( 66.62), SIMDE_FLOAT16_VALUE( -41.25), SIMDE_FLOAT16_VALUE( 31.05), SIMDE_FLOAT16_VALUE( 5.28),
SIMDE_FLOAT16_VALUE( 49.19), SIMDE_FLOAT16_VALUE( 9.11), SIMDE_FLOAT16_VALUE( 78.06), SIMDE_FLOAT16_VALUE( 65.31),
SIMDE_FLOAT16_VALUE( 20.56), SIMDE_FLOAT16_VALUE( 23.34), SIMDE_FLOAT16_VALUE( 72.62), SIMDE_FLOAT16_VALUE( 2.87),
SIMDE_FLOAT16_VALUE( 0.78), SIMDE_FLOAT16_VALUE( -43.66), SIMDE_FLOAT16_VALUE( 44.94), SIMDE_FLOAT16_VALUE( 95.00),
SIMDE_FLOAT16_VALUE( -5.77), SIMDE_FLOAT16_VALUE( -47.50), SIMDE_FLOAT16_VALUE( 7.55), SIMDE_FLOAT16_VALUE( -11.84),
SIMDE_FLOAT16_VALUE( 7.55), SIMDE_FLOAT16_VALUE( 77.62), SIMDE_FLOAT16_VALUE( 67.94), SIMDE_FLOAT16_VALUE( 40.97) } },
{ { SIMDE_FLOAT16_VALUE( 33.66), SIMDE_FLOAT16_VALUE( 75.56), SIMDE_FLOAT16_VALUE( -32.41), SIMDE_FLOAT16_VALUE( 92.81),
SIMDE_FLOAT16_VALUE( 54.72), SIMDE_FLOAT16_VALUE( -83.81), SIMDE_FLOAT16_VALUE( -81.44), SIMDE_FLOAT16_VALUE( 92.62),
SIMDE_FLOAT16_VALUE( -37.66), SIMDE_FLOAT16_VALUE( 49.62), SIMDE_FLOAT16_VALUE( -60.81), SIMDE_FLOAT16_VALUE( -88.50),
SIMDE_FLOAT16_VALUE( -41.28), SIMDE_FLOAT16_VALUE( -48.88), SIMDE_FLOAT16_VALUE( -18.73), SIMDE_FLOAT16_VALUE( -8.83),
SIMDE_FLOAT16_VALUE( 30.73), SIMDE_FLOAT16_VALUE( -46.12), SIMDE_FLOAT16_VALUE( 79.50), SIMDE_FLOAT16_VALUE( -68.50),
SIMDE_FLOAT16_VALUE( 10.22), SIMDE_FLOAT16_VALUE( 24.41), SIMDE_FLOAT16_VALUE( -73.44), SIMDE_FLOAT16_VALUE( 71.88),
SIMDE_FLOAT16_VALUE( 76.88), SIMDE_FLOAT16_VALUE( -45.34), SIMDE_FLOAT16_VALUE( -40.00), SIMDE_FLOAT16_VALUE( -15.55),
SIMDE_FLOAT16_VALUE( -67.75), SIMDE_FLOAT16_VALUE( -72.06), SIMDE_FLOAT16_VALUE( -74.56), SIMDE_FLOAT16_VALUE( 65.94) },
{ SIMDE_FLOAT16_VALUE( -96.50), SIMDE_FLOAT16_VALUE( -7.00), SIMDE_FLOAT16_VALUE( 58.72), SIMDE_FLOAT16_VALUE( 58.22),
SIMDE_FLOAT16_VALUE( 9.18), SIMDE_FLOAT16_VALUE( 77.31), SIMDE_FLOAT16_VALUE( 50.81), SIMDE_FLOAT16_VALUE( 71.50),
SIMDE_FLOAT16_VALUE( 26.91), SIMDE_FLOAT16_VALUE( 90.00), SIMDE_FLOAT16_VALUE( 83.00), SIMDE_FLOAT16_VALUE( 85.62),
SIMDE_FLOAT16_VALUE( -58.88), SIMDE_FLOAT16_VALUE( -35.69), SIMDE_FLOAT16_VALUE( -23.19), SIMDE_FLOAT16_VALUE( 71.88),
SIMDE_FLOAT16_VALUE( 18.19), SIMDE_FLOAT16_VALUE( -43.72), SIMDE_FLOAT16_VALUE( -96.62), SIMDE_FLOAT16_VALUE( -71.62),
SIMDE_FLOAT16_VALUE( 80.69), SIMDE_FLOAT16_VALUE( -70.06), SIMDE_FLOAT16_VALUE( -99.75), SIMDE_FLOAT16_VALUE( 57.59),
SIMDE_FLOAT16_VALUE( -15.41), SIMDE_FLOAT16_VALUE( -39.75), SIMDE_FLOAT16_VALUE( -57.97), SIMDE_FLOAT16_VALUE( 16.84),
SIMDE_FLOAT16_VALUE( -11.81), SIMDE_FLOAT16_VALUE( -32.56), SIMDE_FLOAT16_VALUE( -17.23), SIMDE_FLOAT16_VALUE( -8.31) },
{ SIMDE_FLOAT16_VALUE( 33.66), SIMDE_FLOAT16_VALUE( 75.56), SIMDE_FLOAT16_VALUE( 58.72), SIMDE_FLOAT16_VALUE( 92.81),
SIMDE_FLOAT16_VALUE( 54.72), SIMDE_FLOAT16_VALUE( 77.31), SIMDE_FLOAT16_VALUE( 50.81), SIMDE_FLOAT16_VALUE( 92.62),
SIMDE_FLOAT16_VALUE( 26.91), SIMDE_FLOAT16_VALUE( 90.00), SIMDE_FLOAT16_VALUE( 83.00), SIMDE_FLOAT16_VALUE( 85.62),
SIMDE_FLOAT16_VALUE( -41.28), SIMDE_FLOAT16_VALUE( -35.69), SIMDE_FLOAT16_VALUE( -18.73), SIMDE_FLOAT16_VALUE( 71.88),
SIMDE_FLOAT16_VALUE( 30.73), SIMDE_FLOAT16_VALUE( -43.72), SIMDE_FLOAT16_VALUE( 79.50), SIMDE_FLOAT16_VALUE( -68.50),
SIMDE_FLOAT16_VALUE( 80.69), SIMDE_FLOAT16_VALUE( 24.41), SIMDE_FLOAT16_VALUE( -73.44), SIMDE_FLOAT16_VALUE( 71.88),
SIMDE_FLOAT16_VALUE( 76.88), SIMDE_FLOAT16_VALUE( -39.75), SIMDE_FLOAT16_VALUE( -40.00), SIMDE_FLOAT16_VALUE( 16.84),
SIMDE_FLOAT16_VALUE( -11.81), SIMDE_FLOAT16_VALUE( -32.56), SIMDE_FLOAT16_VALUE( -17.23), SIMDE_FLOAT16_VALUE( 65.94) } },
{ { SIMDE_FLOAT16_VALUE( 60.44), SIMDE_FLOAT16_VALUE( -58.50), SIMDE_FLOAT16_VALUE( -50.09), SIMDE_FLOAT16_VALUE( -30.38),
SIMDE_FLOAT16_VALUE( -81.25), SIMDE_FLOAT16_VALUE( -99.25), SIMDE_FLOAT16_VALUE( -58.88), SIMDE_FLOAT16_VALUE( 45.69),
SIMDE_FLOAT16_VALUE( 90.75), SIMDE_FLOAT16_VALUE( -75.81), SIMDE_FLOAT16_VALUE( 31.31), SIMDE_FLOAT16_VALUE( -68.12),
SIMDE_FLOAT16_VALUE( -11.54), SIMDE_FLOAT16_VALUE( -91.88), SIMDE_FLOAT16_VALUE( -96.25), SIMDE_FLOAT16_VALUE( -93.38),
SIMDE_FLOAT16_VALUE( -35.59), SIMDE_FLOAT16_VALUE( -92.81), SIMDE_FLOAT16_VALUE( -65.00), SIMDE_FLOAT16_VALUE( -54.91),
SIMDE_FLOAT16_VALUE( -62.91), SIMDE_FLOAT16_VALUE( -64.75), SIMDE_FLOAT16_VALUE( -97.31), SIMDE_FLOAT16_VALUE( 21.69),
SIMDE_FLOAT16_VALUE( -4.47), SIMDE_FLOAT16_VALUE( -55.31), SIMDE_FLOAT16_VALUE( -61.47), SIMDE_FLOAT16_VALUE( 83.69),
SIMDE_FLOAT16_VALUE( 12.14), SIMDE_FLOAT16_VALUE( 21.31), SIMDE_FLOAT16_VALUE( -24.59), SIMDE_FLOAT16_VALUE( -27.42) },
{ SIMDE_FLOAT16_VALUE( 62.78), SIMDE_FLOAT16_VALUE( 25.31), SIMDE_FLOAT16_VALUE( 42.22), SIMDE_FLOAT16_VALUE( 81.56),
SIMDE_FLOAT16_VALUE( 26.05), SIMDE_FLOAT16_VALUE( 83.31), SIMDE_FLOAT16_VALUE( 27.25), SIMDE_FLOAT16_VALUE( 16.77),
SIMDE_FLOAT16_VALUE( -92.50), SIMDE_FLOAT16_VALUE( -41.44), SIMDE_FLOAT16_VALUE( 48.66), SIMDE_FLOAT16_VALUE( -4.03),
SIMDE_FLOAT16_VALUE( -33.31), SIMDE_FLOAT16_VALUE( 52.41), SIMDE_FLOAT16_VALUE( 2.60), SIMDE_FLOAT16_VALUE( 31.09),
SIMDE_FLOAT16_VALUE( 59.56), SIMDE_FLOAT16_VALUE( 37.62), SIMDE_FLOAT16_VALUE( 76.19), SIMDE_FLOAT16_VALUE( 96.69),
SIMDE_FLOAT16_VALUE( 72.94), SIMDE_FLOAT16_VALUE( 78.88), SIMDE_FLOAT16_VALUE( 18.36), SIMDE_FLOAT16_VALUE( -31.56),
SIMDE_FLOAT16_VALUE( -76.44), SIMDE_FLOAT16_VALUE( 56.88), SIMDE_FLOAT16_VALUE( -47.84), SIMDE_FLOAT16_VALUE( 35.69),
SIMDE_FLOAT16_VALUE( -21.80), SIMDE_FLOAT16_VALUE( 27.56), SIMDE_FLOAT16_VALUE( -91.75), SIMDE_FLOAT16_VALUE( -59.00) },
{ SIMDE_FLOAT16_VALUE( 62.78), SIMDE_FLOAT16_VALUE( 25.31), SIMDE_FLOAT16_VALUE( 42.22), SIMDE_FLOAT16_VALUE( 81.56),
SIMDE_FLOAT16_VALUE( 26.05), SIMDE_FLOAT16_VALUE( 83.31), SIMDE_FLOAT16_VALUE( 27.25), SIMDE_FLOAT16_VALUE( 45.69),
SIMDE_FLOAT16_VALUE( 90.75), SIMDE_FLOAT16_VALUE( -41.44), SIMDE_FLOAT16_VALUE( 48.66), SIMDE_FLOAT16_VALUE( -4.03),
SIMDE_FLOAT16_VALUE( -11.54), SIMDE_FLOAT16_VALUE( 52.41), SIMDE_FLOAT16_VALUE( 2.60), SIMDE_FLOAT16_VALUE( 31.09),
SIMDE_FLOAT16_VALUE( 59.56), SIMDE_FLOAT16_VALUE( 37.62), SIMDE_FLOAT16_VALUE( 76.19), SIMDE_FLOAT16_VALUE( 96.69),
SIMDE_FLOAT16_VALUE( 72.94), SIMDE_FLOAT16_VALUE( 78.88), SIMDE_FLOAT16_VALUE( 18.36), SIMDE_FLOAT16_VALUE( 21.69),
SIMDE_FLOAT16_VALUE( -4.47), SIMDE_FLOAT16_VALUE( 56.88), SIMDE_FLOAT16_VALUE( -47.84), SIMDE_FLOAT16_VALUE( 83.69),
SIMDE_FLOAT16_VALUE( 12.14), SIMDE_FLOAT16_VALUE( 27.56), SIMDE_FLOAT16_VALUE( -24.59), SIMDE_FLOAT16_VALUE( -27.42) } },
{ { SIMDE_FLOAT16_VALUE( -47.12), SIMDE_FLOAT16_VALUE( 50.47), SIMDE_FLOAT16_VALUE( -77.44), SIMDE_FLOAT16_VALUE( 78.94),
SIMDE_FLOAT16_VALUE( 33.81), SIMDE_FLOAT16_VALUE( 49.81), SIMDE_FLOAT16_VALUE( -4.32), SIMDE_FLOAT16_VALUE( 41.31),
SIMDE_FLOAT16_VALUE( -91.62), SIMDE_FLOAT16_VALUE( -55.66), SIMDE_FLOAT16_VALUE( -62.72), SIMDE_FLOAT16_VALUE( -24.94),
SIMDE_FLOAT16_VALUE( 96.75), SIMDE_FLOAT16_VALUE( 39.88), SIMDE_FLOAT16_VALUE( -93.81), SIMDE_FLOAT16_VALUE( 56.31),
SIMDE_FLOAT16_VALUE( -22.48), SIMDE_FLOAT16_VALUE( 82.38), SIMDE_FLOAT16_VALUE( 53.00), SIMDE_FLOAT16_VALUE( -49.56),
SIMDE_FLOAT16_VALUE( 61.19), SIMDE_FLOAT16_VALUE( -28.66), SIMDE_FLOAT16_VALUE( 18.88), SIMDE_FLOAT16_VALUE( 84.75),
SIMDE_FLOAT16_VALUE( -71.75), SIMDE_FLOAT16_VALUE( 71.00), SIMDE_FLOAT16_VALUE( 20.44), SIMDE_FLOAT16_VALUE( 6.45),
SIMDE_FLOAT16_VALUE( -1.42), SIMDE_FLOAT16_VALUE( 28.70), SIMDE_FLOAT16_VALUE( 47.44), SIMDE_FLOAT16_VALUE( 51.47) },
{ SIMDE_FLOAT16_VALUE( -20.83), SIMDE_FLOAT16_VALUE( 70.00), SIMDE_FLOAT16_VALUE( 30.38), SIMDE_FLOAT16_VALUE( -87.00),
SIMDE_FLOAT16_VALUE( 19.81), SIMDE_FLOAT16_VALUE( -73.94), SIMDE_FLOAT16_VALUE( 54.31), SIMDE_FLOAT16_VALUE( 28.20),
SIMDE_FLOAT16_VALUE( -29.61), SIMDE_FLOAT16_VALUE( 91.56), SIMDE_FLOAT16_VALUE( -96.75), SIMDE_FLOAT16_VALUE( -32.88),
SIMDE_FLOAT16_VALUE( 31.48), SIMDE_FLOAT16_VALUE( -90.56), SIMDE_FLOAT16_VALUE( -76.56), SIMDE_FLOAT16_VALUE( -91.00),
SIMDE_FLOAT16_VALUE( 91.81), SIMDE_FLOAT16_VALUE( 76.44), SIMDE_FLOAT16_VALUE( -40.56), SIMDE_FLOAT16_VALUE( 53.00),
SIMDE_FLOAT16_VALUE( -52.19), SIMDE_FLOAT16_VALUE( 78.31), SIMDE_FLOAT16_VALUE( 37.75), SIMDE_FLOAT16_VALUE( -23.95),
SIMDE_FLOAT16_VALUE( 49.34), SIMDE_FLOAT16_VALUE( -41.84), SIMDE_FLOAT16_VALUE( 82.50), SIMDE_FLOAT16_VALUE( -52.09),
SIMDE_FLOAT16_VALUE( 86.88), SIMDE_FLOAT16_VALUE( 29.94), SIMDE_FLOAT16_VALUE( 99.38), SIMDE_FLOAT16_VALUE( -33.97) },
{ SIMDE_FLOAT16_VALUE( -20.83), SIMDE_FLOAT16_VALUE( 70.00), SIMDE_FLOAT16_VALUE( 30.38), SIMDE_FLOAT16_VALUE( 78.94),
SIMDE_FLOAT16_VALUE( 33.81), SIMDE_FLOAT16_VALUE( 49.81), SIMDE_FLOAT16_VALUE( 54.31), SIMDE_FLOAT16_VALUE( 41.31),
SIMDE_FLOAT16_VALUE( -29.61), SIMDE_FLOAT16_VALUE( 91.56), SIMDE_FLOAT16_VALUE( -62.72), SIMDE_FLOAT16_VALUE( -24.94),
SIMDE_FLOAT16_VALUE( 96.75), SIMDE_FLOAT16_VALUE( 39.88), SIMDE_FLOAT16_VALUE( -76.56), SIMDE_FLOAT16_VALUE( 56.31),
SIMDE_FLOAT16_VALUE( 91.81), SIMDE_FLOAT16_VALUE( 82.38), SIMDE_FLOAT16_VALUE( 53.00), SIMDE_FLOAT16_VALUE( 53.00),
SIMDE_FLOAT16_VALUE( 61.19), SIMDE_FLOAT16_VALUE( 78.31), SIMDE_FLOAT16_VALUE( 37.75), SIMDE_FLOAT16_VALUE( 84.75),
SIMDE_FLOAT16_VALUE( 49.34), SIMDE_FLOAT16_VALUE( 71.00), SIMDE_FLOAT16_VALUE( 82.50), SIMDE_FLOAT16_VALUE( 6.45),
SIMDE_FLOAT16_VALUE( 86.88), SIMDE_FLOAT16_VALUE( 29.94), SIMDE_FLOAT16_VALUE( 99.38), SIMDE_FLOAT16_VALUE( 51.47) } },
{ { SIMDE_FLOAT16_VALUE( -0.06), SIMDE_FLOAT16_VALUE( 29.75), SIMDE_FLOAT16_VALUE( -20.98), SIMDE_FLOAT16_VALUE( -80.25),
SIMDE_FLOAT16_VALUE( 55.81), SIMDE_FLOAT16_VALUE( -66.69), SIMDE_FLOAT16_VALUE( 47.94), SIMDE_FLOAT16_VALUE( -73.81),
SIMDE_FLOAT16_VALUE( -75.06), SIMDE_FLOAT16_VALUE( 51.22), SIMDE_FLOAT16_VALUE( -6.66), SIMDE_FLOAT16_VALUE( 56.41),
SIMDE_FLOAT16_VALUE( 60.66), SIMDE_FLOAT16_VALUE( 16.80), SIMDE_FLOAT16_VALUE( 65.38), SIMDE_FLOAT16_VALUE( 52.44),
SIMDE_FLOAT16_VALUE( -6.75), SIMDE_FLOAT16_VALUE( -75.19), SIMDE_FLOAT16_VALUE( 5.45), SIMDE_FLOAT16_VALUE( 41.06),
SIMDE_FLOAT16_VALUE( -96.88), SIMDE_FLOAT16_VALUE( -56.81), SIMDE_FLOAT16_VALUE( -82.94), SIMDE_FLOAT16_VALUE( 52.47),
SIMDE_FLOAT16_VALUE( 1.35), SIMDE_FLOAT16_VALUE( 99.56), SIMDE_FLOAT16_VALUE( -99.62), SIMDE_FLOAT16_VALUE( -11.79),
SIMDE_FLOAT16_VALUE( 29.50), SIMDE_FLOAT16_VALUE( 99.75), SIMDE_FLOAT16_VALUE( 54.25), SIMDE_FLOAT16_VALUE( -70.56) },
{ SIMDE_FLOAT16_VALUE( 29.52), SIMDE_FLOAT16_VALUE( -66.75), SIMDE_FLOAT16_VALUE( -50.81), SIMDE_FLOAT16_VALUE( -14.67),
SIMDE_FLOAT16_VALUE( -33.41), SIMDE_FLOAT16_VALUE( 97.12), SIMDE_FLOAT16_VALUE( 11.53), SIMDE_FLOAT16_VALUE( -8.49),
SIMDE_FLOAT16_VALUE( 48.38), SIMDE_FLOAT16_VALUE( -95.12), SIMDE_FLOAT16_VALUE( -52.09), SIMDE_FLOAT16_VALUE( 9.03),
SIMDE_FLOAT16_VALUE( 21.67), SIMDE_FLOAT16_VALUE( -86.69), SIMDE_FLOAT16_VALUE( -38.50), SIMDE_FLOAT16_VALUE( -85.06),
SIMDE_FLOAT16_VALUE( -61.88), SIMDE_FLOAT16_VALUE( 66.94), SIMDE_FLOAT16_VALUE( 55.97), SIMDE_FLOAT16_VALUE( -58.72),
SIMDE_FLOAT16_VALUE( -89.88), SIMDE_FLOAT16_VALUE( 73.06), SIMDE_FLOAT16_VALUE( 93.75), SIMDE_FLOAT16_VALUE( 11.46),
SIMDE_FLOAT16_VALUE( 72.62), SIMDE_FLOAT16_VALUE( 94.12), SIMDE_FLOAT16_VALUE( 99.69), SIMDE_FLOAT16_VALUE( 2.12),
SIMDE_FLOAT16_VALUE( 93.88), SIMDE_FLOAT16_VALUE( 53.91), SIMDE_FLOAT16_VALUE( 31.56), SIMDE_FLOAT16_VALUE( 23.42) },
{ SIMDE_FLOAT16_VALUE( 29.52), SIMDE_FLOAT16_VALUE( 29.75), SIMDE_FLOAT16_VALUE( -20.98), SIMDE_FLOAT16_VALUE( -14.67),
SIMDE_FLOAT16_VALUE( 55.81), SIMDE_FLOAT16_VALUE( 97.12), SIMDE_FLOAT16_VALUE( 47.94), SIMDE_FLOAT16_VALUE( -8.49),
SIMDE_FLOAT16_VALUE( 48.38), SIMDE_FLOAT16_VALUE( 51.22), SIMDE_FLOAT16_VALUE( -6.66), SIMDE_FLOAT16_VALUE( 56.41),
SIMDE_FLOAT16_VALUE( 60.66), SIMDE_FLOAT16_VALUE( 16.80), SIMDE_FLOAT16_VALUE( 65.38), SIMDE_FLOAT16_VALUE( 52.44),
SIMDE_FLOAT16_VALUE( -6.75), SIMDE_FLOAT16_VALUE( 66.94), SIMDE_FLOAT16_VALUE( 55.97), SIMDE_FLOAT16_VALUE( 41.06),
SIMDE_FLOAT16_VALUE( -89.88), SIMDE_FLOAT16_VALUE( 73.06), SIMDE_FLOAT16_VALUE( 93.75), SIMDE_FLOAT16_VALUE( 52.47),
SIMDE_FLOAT16_VALUE( 72.62), SIMDE_FLOAT16_VALUE( 99.56), SIMDE_FLOAT16_VALUE( 99.69), SIMDE_FLOAT16_VALUE( 2.12),
SIMDE_FLOAT16_VALUE( 93.88), SIMDE_FLOAT16_VALUE( 99.75), SIMDE_FLOAT16_VALUE( 54.25), SIMDE_FLOAT16_VALUE( 23.42) } },
};
for (size_t i = 0 ; i < (sizeof(test_vec) / sizeof(test_vec[0])) ; i++) {
simde__m512h a = simde_mm512_loadu_ph(test_vec[i].a);
simde__m512h b = simde_mm512_loadu_ph(test_vec[i].b);
simde__m512h r = simde_mm512_max_ph(a, b);
simde_test_x86_assert_equal_f16x32(r, simde_mm512_loadu_ph(test_vec[i].r), 1);
}
return 0;
#else
fputc('\n', stdout);
for (int i = 0 ; i < 8 ; i++) {
simde__m512h a = simde_test_x86_random_f16x32(SIMDE_FLOAT16_VALUE(-100.0), SIMDE_FLOAT16_VALUE(100.0));
simde__m512h b = simde_test_x86_random_f16x32(SIMDE_FLOAT16_VALUE(-100.0), SIMDE_FLOAT16_VALUE(100.0));
simde__m512h r = simde_mm512_max_ph(a, b);
simde_test_x86_write_f16x32(2, a, SIMDE_TEST_VEC_POS_FIRST);
simde_test_x86_write_f16x32(2, b, SIMDE_TEST_VEC_POS_MIDDLE);
simde_test_x86_write_f16x32(2, r, SIMDE_TEST_VEC_POS_LAST);
}
return 1;
#endif
}
#endif
static int
test_simde_mm512_max_ps (SIMDE_MUNIT_TEST_ARGS) {
static const struct {
@ -3870,6 +4098,10 @@ SIMDE_TEST_FUNC_LIST_BEGIN
SIMDE_TEST_FUNC_LIST_ENTRY(mm512_mask_max_epu64)
SIMDE_TEST_FUNC_LIST_ENTRY(mm512_maskz_max_epu64)
#if defined(SIMDE_FLOAT16_IS_SCALAR)
SIMDE_TEST_FUNC_LIST_ENTRY(mm512_max_ph)
#endif
SIMDE_TEST_FUNC_LIST_ENTRY(mm512_max_ps)
SIMDE_TEST_FUNC_LIST_ENTRY(mm512_mask_max_ps)
SIMDE_TEST_FUNC_LIST_ENTRY(mm512_maskz_max_ps)