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:
parent
e4e666f459
commit
3f10e05176
912 changed files with 224964 additions and 11502 deletions
155
thirdparty/simde/test/arm/neon/rsqrts.c
vendored
155
thirdparty/simde/test/arm/neon/rsqrts.c
vendored
|
|
@ -3,6 +3,50 @@
|
|||
#include "test-neon.h"
|
||||
#include "../../../simde/arm/neon/rsqrts.h"
|
||||
|
||||
static int
|
||||
test_simde_vrsqrts_f16 (SIMDE_MUNIT_TEST_ARGS) {
|
||||
struct {
|
||||
simde_float16_t a[4];
|
||||
simde_float16_t b[4];
|
||||
simde_float16_t r[4];
|
||||
} test_vec[] = {
|
||||
{ { SIMDE_FLOAT16_VALUE( -1.81), SIMDE_FLOAT16_VALUE( 6.08),
|
||||
SIMDE_FLOAT16_VALUE( 4.44), SIMDE_FLOAT16_VALUE( 6.63) },
|
||||
{ SIMDE_FLOAT16_VALUE( -0.75), SIMDE_FLOAT16_VALUE( 3.06),
|
||||
SIMDE_FLOAT16_VALUE( 5.97), SIMDE_FLOAT16_VALUE( -5.82) },
|
||||
{ SIMDE_FLOAT16_VALUE( 0.82), SIMDE_FLOAT16_VALUE( -7.80),
|
||||
SIMDE_FLOAT16_VALUE( -11.75), SIMDE_FLOAT16_VALUE( 20.79) } },
|
||||
{ { SIMDE_FLOAT16_VALUE( -4.07), SIMDE_FLOAT16_VALUE( 2.30),
|
||||
SIMDE_FLOAT16_VALUE( -7.18), SIMDE_FLOAT16_VALUE( -5.76) },
|
||||
{ SIMDE_FLOAT16_VALUE( -2.84), SIMDE_FLOAT16_VALUE( -2.53),
|
||||
SIMDE_FLOAT16_VALUE( 0.29), SIMDE_FLOAT16_VALUE( -6.65) },
|
||||
{ SIMDE_FLOAT16_VALUE( -4.28), SIMDE_FLOAT16_VALUE( 4.41),
|
||||
SIMDE_FLOAT16_VALUE( 2.54), SIMDE_FLOAT16_VALUE( -17.65) } },
|
||||
{ { SIMDE_FLOAT16_VALUE( -6.30), SIMDE_FLOAT16_VALUE( -9.44),
|
||||
SIMDE_FLOAT16_VALUE( 9.05), SIMDE_FLOAT16_VALUE( 4.99) },
|
||||
{ SIMDE_FLOAT16_VALUE( -1.04), SIMDE_FLOAT16_VALUE( 1.58),
|
||||
SIMDE_FLOAT16_VALUE( 3.75), SIMDE_FLOAT16_VALUE( -1.14) },
|
||||
{ SIMDE_FLOAT16_VALUE( -1.78), SIMDE_FLOAT16_VALUE( 8.96),
|
||||
SIMDE_FLOAT16_VALUE( -15.47), SIMDE_FLOAT16_VALUE( 4.34) } },
|
||||
{ { SIMDE_FLOAT16_VALUE( -6.57), SIMDE_FLOAT16_VALUE( -6.46),
|
||||
SIMDE_FLOAT16_VALUE( 4.91), SIMDE_FLOAT16_VALUE( 1.78) },
|
||||
{ SIMDE_FLOAT16_VALUE( -0.70), SIMDE_FLOAT16_VALUE( 8.06),
|
||||
SIMDE_FLOAT16_VALUE( 6.18), SIMDE_FLOAT16_VALUE( -6.90) },
|
||||
{ SIMDE_FLOAT16_VALUE( -0.80), SIMDE_FLOAT16_VALUE( 27.53),
|
||||
SIMDE_FLOAT16_VALUE( -13.67), SIMDE_FLOAT16_VALUE( 7.64) } },
|
||||
};
|
||||
|
||||
for (size_t i = 0 ; i < (sizeof(test_vec) / sizeof(test_vec[0])) ; i++) {
|
||||
simde_float16x4_t a = simde_vld1_f16(test_vec[i].a);
|
||||
simde_float16x4_t b = simde_vld1_f16(test_vec[i].b);
|
||||
simde_float16x4_t r = simde_vrsqrts_f16(a, b);
|
||||
|
||||
simde_test_arm_neon_assert_equal_f16x4(r, simde_vld1_f16(test_vec[i].r), 1);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int
|
||||
test_simde_vrsqrts_f32 (SIMDE_MUNIT_TEST_ARGS) {
|
||||
#if 1
|
||||
|
|
@ -119,6 +163,49 @@ test_simde_vrsqrts_f64 (SIMDE_MUNIT_TEST_ARGS) {
|
|||
#endif
|
||||
}
|
||||
|
||||
static int
|
||||
test_simde_vrsqrtsq_f16 (SIMDE_MUNIT_TEST_ARGS) {
|
||||
struct {
|
||||
simde_float16_t a[8];
|
||||
simde_float16_t b[8];
|
||||
simde_float16_t r[8];
|
||||
} test_vec[] = {
|
||||
{ { SIMDE_FLOAT16_VALUE( -2.14), SIMDE_FLOAT16_VALUE( -4.57), SIMDE_FLOAT16_VALUE( 6.16), SIMDE_FLOAT16_VALUE( -7.69),
|
||||
SIMDE_FLOAT16_VALUE( -5.58), SIMDE_FLOAT16_VALUE( 3.64), SIMDE_FLOAT16_VALUE( 5.46), SIMDE_FLOAT16_VALUE( -2.76) },
|
||||
{ SIMDE_FLOAT16_VALUE( -7.94), SIMDE_FLOAT16_VALUE( 2.13), SIMDE_FLOAT16_VALUE( -3.52), SIMDE_FLOAT16_VALUE( -2.01),
|
||||
SIMDE_FLOAT16_VALUE( 7.89), SIMDE_FLOAT16_VALUE( -4.25), SIMDE_FLOAT16_VALUE( 0.59), SIMDE_FLOAT16_VALUE( -8.41) },
|
||||
{ SIMDE_FLOAT16_VALUE( -7.00), SIMDE_FLOAT16_VALUE( 6.37), SIMDE_FLOAT16_VALUE( 12.34), SIMDE_FLOAT16_VALUE( -6.23),
|
||||
SIMDE_FLOAT16_VALUE( 23.51), SIMDE_FLOAT16_VALUE( 9.24), SIMDE_FLOAT16_VALUE( -0.11), SIMDE_FLOAT16_VALUE( -10.11) } },
|
||||
{ { SIMDE_FLOAT16_VALUE( -3.70), SIMDE_FLOAT16_VALUE( 9.56), SIMDE_FLOAT16_VALUE( 3.17), SIMDE_FLOAT16_VALUE( -4.64),
|
||||
SIMDE_FLOAT16_VALUE( 0.47), SIMDE_FLOAT16_VALUE( -6.48), SIMDE_FLOAT16_VALUE( 6.04), SIMDE_FLOAT16_VALUE( -4.62) },
|
||||
{ SIMDE_FLOAT16_VALUE( 4.55), SIMDE_FLOAT16_VALUE( -3.08), SIMDE_FLOAT16_VALUE( 4.22), SIMDE_FLOAT16_VALUE( 7.98),
|
||||
SIMDE_FLOAT16_VALUE( 5.30), SIMDE_FLOAT16_VALUE( 2.22), SIMDE_FLOAT16_VALUE( -1.53), SIMDE_FLOAT16_VALUE( -6.84) },
|
||||
{ SIMDE_FLOAT16_VALUE( 9.92), SIMDE_FLOAT16_VALUE( 16.22), SIMDE_FLOAT16_VALUE( -5.19), SIMDE_FLOAT16_VALUE( 20.01),
|
||||
SIMDE_FLOAT16_VALUE( 0.25), SIMDE_FLOAT16_VALUE( 8.69), SIMDE_FLOAT16_VALUE( 6.12), SIMDE_FLOAT16_VALUE( -14.30) } },
|
||||
{ { SIMDE_FLOAT16_VALUE( 7.64), SIMDE_FLOAT16_VALUE( -5.37), SIMDE_FLOAT16_VALUE( -4.53), SIMDE_FLOAT16_VALUE( 9.70),
|
||||
SIMDE_FLOAT16_VALUE( -4.41), SIMDE_FLOAT16_VALUE( -6.85), SIMDE_FLOAT16_VALUE( -1.58), SIMDE_FLOAT16_VALUE( -6.52) },
|
||||
{ SIMDE_FLOAT16_VALUE( 6.76), SIMDE_FLOAT16_VALUE( 1.95), SIMDE_FLOAT16_VALUE( -2.31), SIMDE_FLOAT16_VALUE( -8.82),
|
||||
SIMDE_FLOAT16_VALUE( -1.10), SIMDE_FLOAT16_VALUE( 9.02), SIMDE_FLOAT16_VALUE( -4.93), SIMDE_FLOAT16_VALUE( 5.20) },
|
||||
{ SIMDE_FLOAT16_VALUE( -24.32), SIMDE_FLOAT16_VALUE( 6.74), SIMDE_FLOAT16_VALUE( -3.73), SIMDE_FLOAT16_VALUE( 44.28),
|
||||
SIMDE_FLOAT16_VALUE( -0.93), SIMDE_FLOAT16_VALUE( 32.39), SIMDE_FLOAT16_VALUE( -2.39), SIMDE_FLOAT16_VALUE( 18.45) } },
|
||||
{ { SIMDE_FLOAT16_VALUE( 8.57), SIMDE_FLOAT16_VALUE( 8.24), SIMDE_FLOAT16_VALUE( -9.44), SIMDE_FLOAT16_VALUE( 3.12),
|
||||
SIMDE_FLOAT16_VALUE( 8.30), SIMDE_FLOAT16_VALUE( -2.87), SIMDE_FLOAT16_VALUE( -8.99), SIMDE_FLOAT16_VALUE( 3.60) },
|
||||
{ SIMDE_FLOAT16_VALUE( -4.83), SIMDE_FLOAT16_VALUE( 4.78), SIMDE_FLOAT16_VALUE( 1.10), SIMDE_FLOAT16_VALUE( 5.63),
|
||||
SIMDE_FLOAT16_VALUE( 9.35), SIMDE_FLOAT16_VALUE( -0.52), SIMDE_FLOAT16_VALUE( 6.77), SIMDE_FLOAT16_VALUE( 6.99) },
|
||||
{ SIMDE_FLOAT16_VALUE( 22.20), SIMDE_FLOAT16_VALUE( -18.19), SIMDE_FLOAT16_VALUE( 6.69), SIMDE_FLOAT16_VALUE( -7.28),
|
||||
SIMDE_FLOAT16_VALUE( -37.30), SIMDE_FLOAT16_VALUE( 0.75), SIMDE_FLOAT16_VALUE( 31.93), SIMDE_FLOAT16_VALUE( -11.08) } }
|
||||
};
|
||||
|
||||
for (size_t i = 0 ; i < (sizeof(test_vec) / sizeof(test_vec[0])) ; i++) {
|
||||
simde_float16x8_t a = simde_vld1q_f16(test_vec[i].a);
|
||||
simde_float16x8_t b = simde_vld1q_f16(test_vec[i].b);
|
||||
simde_float16x8_t r = simde_vrsqrtsq_f16(a, b);
|
||||
simde_test_arm_neon_assert_equal_f16x8(r, simde_vld1q_f16(test_vec[i].r), 1);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int
|
||||
test_simde_vrsqrtsq_f32 (SIMDE_MUNIT_TEST_ARGS) {
|
||||
#if 1
|
||||
|
|
@ -233,6 +320,71 @@ test_simde_vrsqrtsq_f64 (SIMDE_MUNIT_TEST_ARGS) {
|
|||
#endif
|
||||
}
|
||||
|
||||
static int
|
||||
test_simde_vrsqrtsh_f16 (SIMDE_MUNIT_TEST_ARGS) {
|
||||
struct {
|
||||
simde_float16_t a;
|
||||
simde_float16_t b;
|
||||
simde_float16_t r;
|
||||
} test_vec[] = {
|
||||
{ SIMDE_FLOAT16_VALUE( -1.81),
|
||||
SIMDE_FLOAT16_VALUE( -0.75),
|
||||
SIMDE_FLOAT16_VALUE( 0.82) },
|
||||
{ SIMDE_FLOAT16_VALUE( 4.44),
|
||||
SIMDE_FLOAT16_VALUE( 5.97),
|
||||
SIMDE_FLOAT16_VALUE( -11.75) },
|
||||
{ SIMDE_FLOAT16_VALUE( -4.07),
|
||||
SIMDE_FLOAT16_VALUE( -2.84),
|
||||
SIMDE_FLOAT16_VALUE( -4.28) },
|
||||
{ SIMDE_FLOAT16_VALUE( -7.18),
|
||||
SIMDE_FLOAT16_VALUE( 0.29),
|
||||
SIMDE_FLOAT16_VALUE( 2.54) },
|
||||
{ SIMDE_FLOAT16_VALUE( -6.30),
|
||||
SIMDE_FLOAT16_VALUE( -1.04),
|
||||
SIMDE_FLOAT16_VALUE( -1.78) },
|
||||
{ SIMDE_FLOAT16_VALUE( 9.05),
|
||||
SIMDE_FLOAT16_VALUE( 3.75),
|
||||
SIMDE_FLOAT16_VALUE( -15.47) },
|
||||
{ SIMDE_FLOAT16_VALUE( -6.57),
|
||||
SIMDE_FLOAT16_VALUE( -0.70),
|
||||
SIMDE_FLOAT16_VALUE( -0.80) },
|
||||
{ SIMDE_FLOAT16_VALUE( 4.91),
|
||||
SIMDE_FLOAT16_VALUE( 6.18),
|
||||
SIMDE_FLOAT16_VALUE( -13.67) },
|
||||
{ SIMDE_FLOAT16_VALUE( 6.08),
|
||||
SIMDE_FLOAT16_VALUE( 3.06),
|
||||
SIMDE_FLOAT16_VALUE( -7.80) },
|
||||
{ SIMDE_FLOAT16_VALUE( 6.63),
|
||||
SIMDE_FLOAT16_VALUE( -5.82),
|
||||
SIMDE_FLOAT16_VALUE( 20.79) },
|
||||
{ SIMDE_FLOAT16_VALUE( 2.30),
|
||||
SIMDE_FLOAT16_VALUE( -2.53),
|
||||
SIMDE_FLOAT16_VALUE( 4.41) },
|
||||
{ SIMDE_FLOAT16_VALUE( -5.76),
|
||||
SIMDE_FLOAT16_VALUE( -6.65),
|
||||
SIMDE_FLOAT16_VALUE( -17.65) },
|
||||
{ SIMDE_FLOAT16_VALUE( -9.44),
|
||||
SIMDE_FLOAT16_VALUE( 1.58),
|
||||
SIMDE_FLOAT16_VALUE( 8.96) },
|
||||
{ SIMDE_FLOAT16_VALUE( 4.99),
|
||||
SIMDE_FLOAT16_VALUE( -1.14),
|
||||
SIMDE_FLOAT16_VALUE( 4.34) },
|
||||
{ SIMDE_FLOAT16_VALUE( -6.46),
|
||||
SIMDE_FLOAT16_VALUE( 8.06),
|
||||
SIMDE_FLOAT16_VALUE( 27.53) },
|
||||
{ SIMDE_FLOAT16_VALUE( 1.78),
|
||||
SIMDE_FLOAT16_VALUE( -6.90),
|
||||
SIMDE_FLOAT16_VALUE( 7.64) }
|
||||
};
|
||||
|
||||
for (size_t i = 0 ; i < (sizeof(test_vec) / sizeof(test_vec[0])) ; i++) {
|
||||
simde_float16_t r = simde_vrsqrtsh_f16(test_vec[i].a, test_vec[i].b);
|
||||
simde_assert_equal_f16(r, test_vec[i].r, 1);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int
|
||||
test_simde_vrsqrtss_f32 (SIMDE_MUNIT_TEST_ARGS) {
|
||||
#if 1
|
||||
|
|
@ -344,12 +496,15 @@ test_simde_vrsqrtsd_f64 (SIMDE_MUNIT_TEST_ARGS) {
|
|||
}
|
||||
|
||||
SIMDE_TEST_FUNC_LIST_BEGIN
|
||||
SIMDE_TEST_FUNC_LIST_ENTRY(vrsqrts_f16)
|
||||
SIMDE_TEST_FUNC_LIST_ENTRY(vrsqrts_f32)
|
||||
SIMDE_TEST_FUNC_LIST_ENTRY(vrsqrts_f64)
|
||||
|
||||
SIMDE_TEST_FUNC_LIST_ENTRY(vrsqrtsq_f16)
|
||||
SIMDE_TEST_FUNC_LIST_ENTRY(vrsqrtsq_f32)
|
||||
SIMDE_TEST_FUNC_LIST_ENTRY(vrsqrtsq_f64)
|
||||
|
||||
SIMDE_TEST_FUNC_LIST_ENTRY(vrsqrtsh_f16)
|
||||
SIMDE_TEST_FUNC_LIST_ENTRY(vrsqrtss_f32)
|
||||
SIMDE_TEST_FUNC_LIST_ENTRY(vrsqrtsd_f64)
|
||||
SIMDE_TEST_FUNC_LIST_END
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue