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
434
thirdparty/simde/test/arm/neon/min.c
vendored
434
thirdparty/simde/test/arm/neon/min.c
vendored
|
|
@ -3,8 +3,137 @@
|
|||
#include "test-neon.h"
|
||||
#include "../../../simde/arm/neon/min.h"
|
||||
|
||||
static int
|
||||
test_simde_vminh_f16 (SIMDE_MUNIT_TEST_ARGS) {
|
||||
#if 1
|
||||
struct {
|
||||
simde_float16 a;
|
||||
simde_float16 b;
|
||||
simde_float16 r;
|
||||
} test_vec[] = {
|
||||
{ SIMDE_FLOAT16_VALUE( 2.150),
|
||||
SIMDE_FLOAT16_VALUE( 27.846),
|
||||
SIMDE_FLOAT16_VALUE( 2.150) },
|
||||
{ SIMDE_FLOAT16_VALUE( 2.072),
|
||||
SIMDE_FLOAT16_VALUE( 22.002),
|
||||
SIMDE_FLOAT16_VALUE( 2.072) },
|
||||
{ SIMDE_FLOAT16_VALUE( 5.820),
|
||||
SIMDE_FLOAT16_VALUE( -13.192),
|
||||
SIMDE_FLOAT16_VALUE( -13.192) },
|
||||
{ SIMDE_FLOAT16_VALUE( -8.482),
|
||||
SIMDE_FLOAT16_VALUE( -5.316),
|
||||
SIMDE_FLOAT16_VALUE( -8.482) },
|
||||
{ SIMDE_FLOAT16_VALUE( -2.206),
|
||||
SIMDE_FLOAT16_VALUE( 9.337),
|
||||
SIMDE_FLOAT16_VALUE( -2.206) },
|
||||
{ SIMDE_FLOAT16_VALUE( 3.861),
|
||||
SIMDE_FLOAT16_VALUE( 4.205),
|
||||
SIMDE_FLOAT16_VALUE( 3.861) },
|
||||
{ SIMDE_FLOAT16_VALUE( 23.398),
|
||||
SIMDE_FLOAT16_VALUE( -2.865),
|
||||
SIMDE_FLOAT16_VALUE( -2.865) },
|
||||
{ SIMDE_FLOAT16_VALUE( -20.857),
|
||||
SIMDE_FLOAT16_VALUE( 13.101),
|
||||
SIMDE_FLOAT16_VALUE( -20.857) },
|
||||
};
|
||||
|
||||
for (size_t i = 0 ; i < (sizeof(test_vec) / sizeof(test_vec[0])) ; i++) {
|
||||
simde_float16_t a, b, r;
|
||||
|
||||
a = test_vec[i].a;
|
||||
b = test_vec[i].b;
|
||||
r = simde_vminh_f16(a, b);
|
||||
|
||||
simde_assert_equal_f16(r, test_vec[i].r, 1);
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
||||
#else
|
||||
fputc('\n', stdout);
|
||||
for (int i = 0 ; i < 8 ; i++) {
|
||||
simde_float16_t a = simde_test_codegen_random_f16(-100.0f, 100.0f);
|
||||
simde_float16_t b = simde_test_codegen_random_f16(-100.0f, 100.0f);
|
||||
simde_float16_t r = simde_vminh_f16(a, b);
|
||||
|
||||
simde_test_codegen_write_f16(2, a, SIMDE_TEST_VEC_POS_FIRST);
|
||||
simde_test_codegen_write_f16(2, b, SIMDE_TEST_VEC_POS_MIDDLE);
|
||||
simde_test_codegen_write_f16(2, r, SIMDE_TEST_VEC_POS_LAST);
|
||||
}
|
||||
return 1;
|
||||
#endif
|
||||
}
|
||||
|
||||
static int
|
||||
test_simde_vmin_f16 (SIMDE_MUNIT_TEST_ARGS) {
|
||||
#if 1
|
||||
struct {
|
||||
simde_float16_t a[4];
|
||||
simde_float16_t b[4];
|
||||
simde_float16_t r[4];
|
||||
} test_vec[] = {
|
||||
{ { SIMDE_FLOAT16_VALUE(-7.60), SIMDE_FLOAT16_VALUE(5.20), SIMDE_FLOAT16_VALUE(7.20), SIMDE_FLOAT16_VALUE(-0.50) },
|
||||
{ SIMDE_FLOAT16_VALUE(8.60), SIMDE_FLOAT16_VALUE(8.00), SIMDE_FLOAT16_VALUE(-9.00), SIMDE_FLOAT16_VALUE(2.40) },
|
||||
{ SIMDE_FLOAT16_VALUE(-7.60), SIMDE_FLOAT16_VALUE(5.20), SIMDE_FLOAT16_VALUE(-9.00), SIMDE_FLOAT16_VALUE(-0.50) } },
|
||||
{ { SIMDE_FLOAT16_VALUE(6.60), SIMDE_FLOAT16_VALUE(-4.10), SIMDE_FLOAT16_VALUE(-5.60), SIMDE_FLOAT16_VALUE(9.60) },
|
||||
{ SIMDE_FLOAT16_VALUE(1.80), SIMDE_FLOAT16_VALUE(7.20), SIMDE_FLOAT16_VALUE(-9.80), SIMDE_FLOAT16_VALUE(7.90) },
|
||||
{ SIMDE_FLOAT16_VALUE(1.80), SIMDE_FLOAT16_VALUE(-4.10), SIMDE_FLOAT16_VALUE(-9.80), SIMDE_FLOAT16_VALUE(7.90) } },
|
||||
{ { SIMDE_FLOAT16_VALUE(-4.30), SIMDE_FLOAT16_VALUE(-2.80), SIMDE_FLOAT16_VALUE(3.50), SIMDE_FLOAT16_VALUE(-2.20) },
|
||||
{ SIMDE_FLOAT16_VALUE(-5.20), SIMDE_FLOAT16_VALUE(0.00), SIMDE_FLOAT16_VALUE(7.00), SIMDE_FLOAT16_VALUE(-2.10) },
|
||||
{ SIMDE_FLOAT16_VALUE(-5.20), SIMDE_FLOAT16_VALUE(-2.80), SIMDE_FLOAT16_VALUE(3.50), SIMDE_FLOAT16_VALUE(-2.20) } },
|
||||
{ { SIMDE_FLOAT16_VALUE(-3.90), SIMDE_FLOAT16_VALUE(5.60), SIMDE_FLOAT16_VALUE(1.20), SIMDE_FLOAT16_VALUE(-7.60) },
|
||||
{ SIMDE_FLOAT16_VALUE(9.00), SIMDE_FLOAT16_VALUE(8.30), SIMDE_FLOAT16_VALUE(-9.50), SIMDE_FLOAT16_VALUE(-8.00) },
|
||||
{ SIMDE_FLOAT16_VALUE(-3.90), SIMDE_FLOAT16_VALUE(5.60), SIMDE_FLOAT16_VALUE(-9.50), SIMDE_FLOAT16_VALUE(-8.00) } },
|
||||
{ { SIMDE_FLOAT16_VALUE(-5.30), SIMDE_FLOAT16_VALUE(4.00), SIMDE_FLOAT16_VALUE(0.50), SIMDE_FLOAT16_VALUE(4.80) },
|
||||
{ SIMDE_FLOAT16_VALUE(4.70), SIMDE_FLOAT16_VALUE(-1.80), SIMDE_FLOAT16_VALUE(4.10), SIMDE_FLOAT16_VALUE(5.60) },
|
||||
{ SIMDE_FLOAT16_VALUE(-5.30), SIMDE_FLOAT16_VALUE(-1.80), SIMDE_FLOAT16_VALUE(0.50), SIMDE_FLOAT16_VALUE(4.80) } },
|
||||
{ { SIMDE_FLOAT16_VALUE(8.70), SIMDE_FLOAT16_VALUE(8.70), SIMDE_FLOAT16_VALUE(6.40), SIMDE_FLOAT16_VALUE(-6.70) },
|
||||
{ SIMDE_FLOAT16_VALUE(-2.10), SIMDE_FLOAT16_VALUE(6.60), SIMDE_FLOAT16_VALUE(1.80), SIMDE_FLOAT16_VALUE(-6.20) },
|
||||
{ SIMDE_FLOAT16_VALUE(-2.10), SIMDE_FLOAT16_VALUE(6.60), SIMDE_FLOAT16_VALUE(1.80), SIMDE_FLOAT16_VALUE(-6.70) } },
|
||||
{ { SIMDE_FLOAT16_VALUE(-6.70), SIMDE_FLOAT16_VALUE(8.00), SIMDE_FLOAT16_VALUE(-7.40), SIMDE_FLOAT16_VALUE(-1.00) },
|
||||
{ SIMDE_FLOAT16_VALUE(-5.30), SIMDE_FLOAT16_VALUE(5.10), SIMDE_FLOAT16_VALUE(-10.00), SIMDE_FLOAT16_VALUE(-0.80) },
|
||||
{ SIMDE_FLOAT16_VALUE(-6.70), SIMDE_FLOAT16_VALUE(5.10), SIMDE_FLOAT16_VALUE(-10.00), SIMDE_FLOAT16_VALUE(-1.00) } },
|
||||
{ { SIMDE_FLOAT16_VALUE(-2.80), SIMDE_FLOAT16_VALUE(9.50), SIMDE_FLOAT16_VALUE(-3.20), SIMDE_FLOAT16_VALUE(6.50) },
|
||||
{ SIMDE_FLOAT16_VALUE(-4.00), SIMDE_FLOAT16_VALUE(3.60), SIMDE_FLOAT16_VALUE(-3.30), SIMDE_FLOAT16_VALUE(-6.70) },
|
||||
{ SIMDE_FLOAT16_VALUE(-4.00), SIMDE_FLOAT16_VALUE(3.60), SIMDE_FLOAT16_VALUE(-3.30), SIMDE_FLOAT16_VALUE(-6.70) } },
|
||||
{ { SIMDE_FLOAT16_VALUE(-7.90), SIMDE_FLOAT16_VALUE(0.40), SIMDE_FLOAT16_VALUE(-5.00), SIMDE_FLOAT16_VALUE(5.30) },
|
||||
{ SIMDE_FLOAT16_VALUE(5.80), SIMDE_FLOAT16_VALUE(9.40), SIMDE_FLOAT16_VALUE(1.00), SIMDE_FLOAT16_VALUE(-8.30) },
|
||||
{ SIMDE_FLOAT16_VALUE(-7.90), SIMDE_FLOAT16_VALUE(0.40), SIMDE_FLOAT16_VALUE(-5.00), SIMDE_FLOAT16_VALUE(-8.30) } },
|
||||
{ { SIMDE_FLOAT16_VALUE(-8.20), SIMDE_FLOAT16_VALUE(8.60), SIMDE_FLOAT16_VALUE(-6.20), SIMDE_FLOAT16_VALUE(-6.40) },
|
||||
{ SIMDE_FLOAT16_VALUE(1.40), SIMDE_FLOAT16_VALUE(9.70), SIMDE_FLOAT16_VALUE(0.80), SIMDE_FLOAT16_VALUE(-2.90) },
|
||||
{ SIMDE_FLOAT16_VALUE(-8.20), SIMDE_FLOAT16_VALUE(8.60), SIMDE_FLOAT16_VALUE(-6.20), SIMDE_FLOAT16_VALUE(-6.40) } },
|
||||
};
|
||||
|
||||
for (size_t i = 0 ; i < (sizeof(test_vec) / sizeof(test_vec[0])) ; i++) {
|
||||
simde_float16x4_t a, b, r;
|
||||
|
||||
a = simde_vld1_f16(test_vec[i].a);
|
||||
b = simde_vld1_f16(test_vec[i].b);
|
||||
r = simde_vmin_f16(a, b);
|
||||
|
||||
simde_test_arm_neon_assert_equal_f16x4(r, simde_vld1_f16(test_vec[i].r), 1);
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
||||
#else
|
||||
fputc('\n', stdout);
|
||||
for (int i = 0 ; i < 8 ; i++) {
|
||||
simde_float16x4_t a = simde_test_arm_neon_random_f16x4(-100.0f, 100.0f);
|
||||
simde_float16x4_t b = simde_test_arm_neon_random_f16x4(-100.0f, 100.0f);
|
||||
simde_float16x4_t r = simde_vmin_f16(a, b);
|
||||
|
||||
simde_test_arm_neon_write_f16x4(2, a, SIMDE_TEST_VEC_POS_FIRST);
|
||||
simde_test_arm_neon_write_f16x4(2, b, SIMDE_TEST_VEC_POS_MIDDLE);
|
||||
simde_test_arm_neon_write_f16x4(2, r, SIMDE_TEST_VEC_POS_LAST);
|
||||
}
|
||||
return 1;
|
||||
#endif
|
||||
}
|
||||
|
||||
static int
|
||||
test_simde_vmin_f32 (SIMDE_MUNIT_TEST_ARGS) {
|
||||
#if 1
|
||||
struct {
|
||||
simde_float32 a[2];
|
||||
simde_float32 b[2];
|
||||
|
|
@ -55,10 +184,25 @@ test_simde_vmin_f32 (SIMDE_MUNIT_TEST_ARGS) {
|
|||
}
|
||||
|
||||
return 0;
|
||||
|
||||
#else
|
||||
fputc('\n', stdout);
|
||||
for (int i = 0 ; i < 8 ; i++) {
|
||||
simde_float32x2_t a = simde_test_arm_neon_random_f32x2(-1000.0f, 1000.0f);
|
||||
simde_float32x2_t b = simde_test_arm_neon_random_f32x2(-1000.0f, 1000.0f);
|
||||
simde_float32x2_t r = simde_vmin_f32(a, b);
|
||||
|
||||
simde_test_arm_neon_write_f32x2(2, a, SIMDE_TEST_VEC_POS_FIRST);
|
||||
simde_test_arm_neon_write_f32x2(2, b, SIMDE_TEST_VEC_POS_MIDDLE);
|
||||
simde_test_arm_neon_write_f32x2(2, r, SIMDE_TEST_VEC_POS_LAST);
|
||||
}
|
||||
return 1;
|
||||
#endif
|
||||
}
|
||||
|
||||
static int
|
||||
test_simde_vmin_f64 (SIMDE_MUNIT_TEST_ARGS) {
|
||||
#if 1
|
||||
struct {
|
||||
simde_float64 a[1];
|
||||
simde_float64 b[1];
|
||||
|
|
@ -110,10 +254,25 @@ test_simde_vmin_f64 (SIMDE_MUNIT_TEST_ARGS) {
|
|||
}
|
||||
|
||||
return 0;
|
||||
|
||||
#else
|
||||
fputc('\n', stdout);
|
||||
for (int i = 0 ; i < 8 ; i++) {
|
||||
simde_float64x1_t a = simde_test_arm_neon_random_f64x1(SIMDE_FLOAT64_C(-1000.0), SIMDE_FLOAT64_C(1000.0));
|
||||
simde_float64x1_t b = simde_test_arm_neon_random_f64x1(SIMDE_FLOAT64_C(-1000.0), SIMDE_FLOAT64_C(1000.0));
|
||||
simde_float64x1_t r = simde_vmin_f64(a, b);
|
||||
|
||||
simde_test_arm_neon_write_f64x1(2, a, SIMDE_TEST_VEC_POS_FIRST);
|
||||
simde_test_arm_neon_write_f64x1(2, b, SIMDE_TEST_VEC_POS_MIDDLE);
|
||||
simde_test_arm_neon_write_f64x1(2, r, SIMDE_TEST_VEC_POS_LAST);
|
||||
}
|
||||
return 1;
|
||||
#endif
|
||||
}
|
||||
|
||||
static int
|
||||
test_simde_vmin_s8 (SIMDE_MUNIT_TEST_ARGS) {
|
||||
#if 1
|
||||
struct {
|
||||
int8_t a[8];
|
||||
int8_t b[8];
|
||||
|
|
@ -154,10 +313,25 @@ test_simde_vmin_s8 (SIMDE_MUNIT_TEST_ARGS) {
|
|||
}
|
||||
|
||||
return 0;
|
||||
|
||||
#else
|
||||
fputc('\n', stdout);
|
||||
for (int i = 0 ; i < 8 ; i++) {
|
||||
simde_int8x8_t a = simde_test_arm_neon_random_i8x8();
|
||||
simde_int8x8_t b = simde_test_arm_neon_random_i8x8();
|
||||
simde_int8x8_t r = simde_vmin_s8(a, b);
|
||||
|
||||
simde_test_arm_neon_write_i8x8(2, a, SIMDE_TEST_VEC_POS_FIRST);
|
||||
simde_test_arm_neon_write_i8x8(2, b, SIMDE_TEST_VEC_POS_MIDDLE);
|
||||
simde_test_arm_neon_write_i8x8(2, r, SIMDE_TEST_VEC_POS_LAST);
|
||||
}
|
||||
return 1;
|
||||
#endif
|
||||
}
|
||||
|
||||
static int
|
||||
test_simde_vmin_s16 (SIMDE_MUNIT_TEST_ARGS) {
|
||||
#if 1
|
||||
struct {
|
||||
int16_t a[4];
|
||||
int16_t b[4];
|
||||
|
|
@ -198,10 +372,25 @@ test_simde_vmin_s16 (SIMDE_MUNIT_TEST_ARGS) {
|
|||
}
|
||||
|
||||
return 0;
|
||||
|
||||
#else
|
||||
fputc('\n', stdout);
|
||||
for (int i = 0 ; i < 8 ; i++) {
|
||||
simde_int16x4_t a = simde_test_arm_neon_random_i16x4();
|
||||
simde_int16x4_t b = simde_test_arm_neon_random_i16x4();
|
||||
simde_int16x4_t r = simde_vmin_s16(a, b);
|
||||
|
||||
simde_test_arm_neon_write_i16x4(2, a, SIMDE_TEST_VEC_POS_FIRST);
|
||||
simde_test_arm_neon_write_i16x4(2, b, SIMDE_TEST_VEC_POS_MIDDLE);
|
||||
simde_test_arm_neon_write_i16x4(2, r, SIMDE_TEST_VEC_POS_LAST);
|
||||
}
|
||||
return 1;
|
||||
#endif
|
||||
}
|
||||
|
||||
static int
|
||||
test_simde_vmin_s32 (SIMDE_MUNIT_TEST_ARGS) {
|
||||
#if 1
|
||||
struct {
|
||||
int32_t a[2];
|
||||
int32_t b[2];
|
||||
|
|
@ -242,6 +431,20 @@ test_simde_vmin_s32 (SIMDE_MUNIT_TEST_ARGS) {
|
|||
}
|
||||
|
||||
return 0;
|
||||
|
||||
#else
|
||||
fputc('\n', stdout);
|
||||
for (int i = 0 ; i < 8 ; i++) {
|
||||
simde_int32x2_t a = simde_test_arm_neon_random_i32x2();
|
||||
simde_int32x2_t b = simde_test_arm_neon_random_i32x2();
|
||||
simde_int32x2_t r = simde_vmin_s32(a, b);
|
||||
|
||||
simde_test_arm_neon_write_i32x2(2, a, SIMDE_TEST_VEC_POS_FIRST);
|
||||
simde_test_arm_neon_write_i32x2(2, b, SIMDE_TEST_VEC_POS_MIDDLE);
|
||||
simde_test_arm_neon_write_i32x2(2, r, SIMDE_TEST_VEC_POS_LAST);
|
||||
}
|
||||
return 1;
|
||||
#endif
|
||||
}
|
||||
|
||||
static int
|
||||
|
|
@ -304,6 +507,7 @@ test_simde_x_vmin_s64 (SIMDE_MUNIT_TEST_ARGS) {
|
|||
|
||||
static int
|
||||
test_simde_vmin_u8 (SIMDE_MUNIT_TEST_ARGS) {
|
||||
#if 1
|
||||
struct {
|
||||
uint8_t a[16];
|
||||
uint8_t b[16];
|
||||
|
|
@ -344,10 +548,25 @@ test_simde_vmin_u8 (SIMDE_MUNIT_TEST_ARGS) {
|
|||
}
|
||||
|
||||
return 0;
|
||||
|
||||
#else
|
||||
fputc('\n', stdout);
|
||||
for (int i = 0 ; i < 8 ; i++) {
|
||||
simde_uint8x16_t a = simde_test_arm_neon_random_u8x16();
|
||||
simde_uint8x16_t b = simde_test_arm_neon_random_u8x16();
|
||||
simde_uint8x16_t r = simde_vmin_u8(a, b);
|
||||
|
||||
simde_test_arm_neon_write_u8x16(2, a, SIMDE_TEST_VEC_POS_FIRST);
|
||||
simde_test_arm_neon_write_u8x16(2, b, SIMDE_TEST_VEC_POS_MIDDLE);
|
||||
simde_test_arm_neon_write_u8x16(2, r, SIMDE_TEST_VEC_POS_LAST);
|
||||
}
|
||||
return 1;
|
||||
#endif
|
||||
}
|
||||
|
||||
static int
|
||||
test_simde_vmin_u16 (SIMDE_MUNIT_TEST_ARGS) {
|
||||
#if 1
|
||||
struct {
|
||||
uint16_t a[4];
|
||||
uint16_t b[4];
|
||||
|
|
@ -387,10 +606,25 @@ test_simde_vmin_u16 (SIMDE_MUNIT_TEST_ARGS) {
|
|||
}
|
||||
|
||||
return 0;
|
||||
|
||||
#else
|
||||
fputc('\n', stdout);
|
||||
for (int i = 0 ; i < 8 ; i++) {
|
||||
simde_uint16x4_t a = simde_test_arm_neon_random_u16x4();
|
||||
simde_uint16x4_t b = simde_test_arm_neon_random_u16x4();
|
||||
simde_uint16x4_t r = simde_vmin_u16(a, b);
|
||||
|
||||
simde_test_arm_neon_write_u16x4(2, a, SIMDE_TEST_VEC_POS_FIRST);
|
||||
simde_test_arm_neon_write_u16x4(2, b, SIMDE_TEST_VEC_POS_MIDDLE);
|
||||
simde_test_arm_neon_write_u16x4(2, r, SIMDE_TEST_VEC_POS_LAST);
|
||||
}
|
||||
return 1;
|
||||
#endif
|
||||
}
|
||||
|
||||
static int
|
||||
test_simde_vmin_u32 (SIMDE_MUNIT_TEST_ARGS) {
|
||||
#if 1
|
||||
struct {
|
||||
uint32_t a[2];
|
||||
uint32_t b[2];
|
||||
|
|
@ -430,6 +664,20 @@ test_simde_vmin_u32 (SIMDE_MUNIT_TEST_ARGS) {
|
|||
}
|
||||
|
||||
return 0;
|
||||
|
||||
#else
|
||||
fputc('\n', stdout);
|
||||
for (int i = 0 ; i < 8 ; i++) {
|
||||
simde_uint32x2_t a = simde_test_arm_neon_random_u32x2();
|
||||
simde_uint32x2_t b = simde_test_arm_neon_random_u32x2();
|
||||
simde_uint32x2_t r = simde_vmin_u32(a, b);
|
||||
|
||||
simde_test_arm_neon_write_u32x2(2, a, SIMDE_TEST_VEC_POS_FIRST);
|
||||
simde_test_arm_neon_write_u32x2(2, b, SIMDE_TEST_VEC_POS_MIDDLE);
|
||||
simde_test_arm_neon_write_u32x2(2, r, SIMDE_TEST_VEC_POS_LAST);
|
||||
}
|
||||
return 1;
|
||||
#endif
|
||||
}
|
||||
|
||||
static int
|
||||
|
|
@ -489,8 +737,72 @@ test_simde_x_vmin_u64 (SIMDE_MUNIT_TEST_ARGS) {
|
|||
#endif
|
||||
}
|
||||
|
||||
static int
|
||||
test_simde_vminq_f16 (SIMDE_MUNIT_TEST_ARGS) {
|
||||
#if 1
|
||||
struct {
|
||||
simde_float16_t a[8];
|
||||
simde_float16_t b[8];
|
||||
simde_float16_t r[8];
|
||||
} test_vec[] = {
|
||||
{ { SIMDE_FLOAT16_VALUE(-2.70), SIMDE_FLOAT16_VALUE(-1.60), SIMDE_FLOAT16_VALUE(-8.90), SIMDE_FLOAT16_VALUE(-8.00), SIMDE_FLOAT16_VALUE(-8.60), SIMDE_FLOAT16_VALUE(5.20), SIMDE_FLOAT16_VALUE(9.80), SIMDE_FLOAT16_VALUE(-8.20) },
|
||||
{ SIMDE_FLOAT16_VALUE(-9.40), SIMDE_FLOAT16_VALUE(-5.90), SIMDE_FLOAT16_VALUE(-0.20), SIMDE_FLOAT16_VALUE(-2.80), SIMDE_FLOAT16_VALUE(-7.30), SIMDE_FLOAT16_VALUE(7.50), SIMDE_FLOAT16_VALUE(7.20), SIMDE_FLOAT16_VALUE(8.30) },
|
||||
{ SIMDE_FLOAT16_VALUE(-9.40), SIMDE_FLOAT16_VALUE(-5.90), SIMDE_FLOAT16_VALUE(-8.90), SIMDE_FLOAT16_VALUE(-8.00), SIMDE_FLOAT16_VALUE(-8.60), SIMDE_FLOAT16_VALUE(5.20), SIMDE_FLOAT16_VALUE(7.20), SIMDE_FLOAT16_VALUE(-8.20) } },
|
||||
{ { SIMDE_FLOAT16_VALUE(-3.70), SIMDE_FLOAT16_VALUE(-9.00), SIMDE_FLOAT16_VALUE(-5.80), SIMDE_FLOAT16_VALUE(-1.30), SIMDE_FLOAT16_VALUE(-2.60), SIMDE_FLOAT16_VALUE(7.60), SIMDE_FLOAT16_VALUE(4.90), SIMDE_FLOAT16_VALUE(5.20) },
|
||||
{ SIMDE_FLOAT16_VALUE(-2.30), SIMDE_FLOAT16_VALUE(-1.20), SIMDE_FLOAT16_VALUE(-2.20), SIMDE_FLOAT16_VALUE(5.40), SIMDE_FLOAT16_VALUE(-6.00), SIMDE_FLOAT16_VALUE(-8.70), SIMDE_FLOAT16_VALUE(6.80), SIMDE_FLOAT16_VALUE(-0.80) },
|
||||
{ SIMDE_FLOAT16_VALUE(-3.70), SIMDE_FLOAT16_VALUE(-9.00), SIMDE_FLOAT16_VALUE(-5.80), SIMDE_FLOAT16_VALUE(-1.30), SIMDE_FLOAT16_VALUE(-6.00), SIMDE_FLOAT16_VALUE(-8.70), SIMDE_FLOAT16_VALUE(4.90), SIMDE_FLOAT16_VALUE(-0.80) } },
|
||||
{ { SIMDE_FLOAT16_VALUE(-8.30), SIMDE_FLOAT16_VALUE(-2.50), SIMDE_FLOAT16_VALUE(-9.40), SIMDE_FLOAT16_VALUE(4.90), SIMDE_FLOAT16_VALUE(-9.60), SIMDE_FLOAT16_VALUE(-7.10), SIMDE_FLOAT16_VALUE(-7.30), SIMDE_FLOAT16_VALUE(0.70) },
|
||||
{ SIMDE_FLOAT16_VALUE(8.00), SIMDE_FLOAT16_VALUE(-3.80), SIMDE_FLOAT16_VALUE(7.40), SIMDE_FLOAT16_VALUE(-3.10), SIMDE_FLOAT16_VALUE(2.30), SIMDE_FLOAT16_VALUE(6.50), SIMDE_FLOAT16_VALUE(-5.30), SIMDE_FLOAT16_VALUE(-4.90) },
|
||||
{ SIMDE_FLOAT16_VALUE(-8.30), SIMDE_FLOAT16_VALUE(-3.80), SIMDE_FLOAT16_VALUE(-9.40), SIMDE_FLOAT16_VALUE(-3.10), SIMDE_FLOAT16_VALUE(-9.60), SIMDE_FLOAT16_VALUE(-7.10), SIMDE_FLOAT16_VALUE(-7.30), SIMDE_FLOAT16_VALUE(-4.90) } },
|
||||
{ { SIMDE_FLOAT16_VALUE(1.10), SIMDE_FLOAT16_VALUE(8.40), SIMDE_FLOAT16_VALUE(-3.90), SIMDE_FLOAT16_VALUE(0.50), SIMDE_FLOAT16_VALUE(2.20), SIMDE_FLOAT16_VALUE(1.80), SIMDE_FLOAT16_VALUE(3.50), SIMDE_FLOAT16_VALUE(-4.10) },
|
||||
{ SIMDE_FLOAT16_VALUE(-3.60), SIMDE_FLOAT16_VALUE(7.40), SIMDE_FLOAT16_VALUE(1.80), SIMDE_FLOAT16_VALUE(-3.00), SIMDE_FLOAT16_VALUE(-9.70), SIMDE_FLOAT16_VALUE(-4.70), SIMDE_FLOAT16_VALUE(3.00), SIMDE_FLOAT16_VALUE(-8.30) },
|
||||
{ SIMDE_FLOAT16_VALUE(-3.60), SIMDE_FLOAT16_VALUE(7.40), SIMDE_FLOAT16_VALUE(-3.90), SIMDE_FLOAT16_VALUE(-3.00), SIMDE_FLOAT16_VALUE(-9.70), SIMDE_FLOAT16_VALUE(-4.70), SIMDE_FLOAT16_VALUE(3.00), SIMDE_FLOAT16_VALUE(-8.30) } },
|
||||
{ { SIMDE_FLOAT16_VALUE(-2.70), SIMDE_FLOAT16_VALUE(-3.20), SIMDE_FLOAT16_VALUE(-7.30), SIMDE_FLOAT16_VALUE(-6.10), SIMDE_FLOAT16_VALUE(0.00), SIMDE_FLOAT16_VALUE(6.60), SIMDE_FLOAT16_VALUE(-5.60), SIMDE_FLOAT16_VALUE(-1.20) },
|
||||
{ SIMDE_FLOAT16_VALUE(4.10), SIMDE_FLOAT16_VALUE(-1.90), SIMDE_FLOAT16_VALUE(-1.30), SIMDE_FLOAT16_VALUE(4.70), SIMDE_FLOAT16_VALUE(-1.10), SIMDE_FLOAT16_VALUE(-1.20), SIMDE_FLOAT16_VALUE(-2.60), SIMDE_FLOAT16_VALUE(4.80) },
|
||||
{ SIMDE_FLOAT16_VALUE(-2.70), SIMDE_FLOAT16_VALUE(-3.20), SIMDE_FLOAT16_VALUE(-7.30), SIMDE_FLOAT16_VALUE(-6.10), SIMDE_FLOAT16_VALUE(-1.10), SIMDE_FLOAT16_VALUE(-1.20), SIMDE_FLOAT16_VALUE(-5.60), SIMDE_FLOAT16_VALUE(-1.20) } },
|
||||
{ { SIMDE_FLOAT16_VALUE(-1.30), SIMDE_FLOAT16_VALUE(-7.60), SIMDE_FLOAT16_VALUE(-8.50), SIMDE_FLOAT16_VALUE(-4.90), SIMDE_FLOAT16_VALUE(8.10), SIMDE_FLOAT16_VALUE(-9.90), SIMDE_FLOAT16_VALUE(4.00), SIMDE_FLOAT16_VALUE(9.40) },
|
||||
{ SIMDE_FLOAT16_VALUE(3.50), SIMDE_FLOAT16_VALUE(3.00), SIMDE_FLOAT16_VALUE(-9.70), SIMDE_FLOAT16_VALUE(0.50), SIMDE_FLOAT16_VALUE(-7.70), SIMDE_FLOAT16_VALUE(-8.00), SIMDE_FLOAT16_VALUE(-2.90), SIMDE_FLOAT16_VALUE(-8.30) },
|
||||
{ SIMDE_FLOAT16_VALUE(-1.30), SIMDE_FLOAT16_VALUE(-7.60), SIMDE_FLOAT16_VALUE(-9.70), SIMDE_FLOAT16_VALUE(-4.90), SIMDE_FLOAT16_VALUE(-7.70), SIMDE_FLOAT16_VALUE(-9.90), SIMDE_FLOAT16_VALUE(-2.90), SIMDE_FLOAT16_VALUE(-8.30) } },
|
||||
{ { SIMDE_FLOAT16_VALUE(-6.20), SIMDE_FLOAT16_VALUE(0.80), SIMDE_FLOAT16_VALUE(-9.20), SIMDE_FLOAT16_VALUE(-8.50), SIMDE_FLOAT16_VALUE(-6.90), SIMDE_FLOAT16_VALUE(1.70), SIMDE_FLOAT16_VALUE(1.40), SIMDE_FLOAT16_VALUE(-7.40) },
|
||||
{ SIMDE_FLOAT16_VALUE(-3.40), SIMDE_FLOAT16_VALUE(-6.00), SIMDE_FLOAT16_VALUE(-7.90), SIMDE_FLOAT16_VALUE(-8.30), SIMDE_FLOAT16_VALUE(-9.10), SIMDE_FLOAT16_VALUE(5.30), SIMDE_FLOAT16_VALUE(-9.60), SIMDE_FLOAT16_VALUE(-5.20) },
|
||||
{ SIMDE_FLOAT16_VALUE(-6.20), SIMDE_FLOAT16_VALUE(-6.00), SIMDE_FLOAT16_VALUE(-9.20), SIMDE_FLOAT16_VALUE(-8.50), SIMDE_FLOAT16_VALUE(-9.10), SIMDE_FLOAT16_VALUE(1.70), SIMDE_FLOAT16_VALUE(-9.60), SIMDE_FLOAT16_VALUE(-7.40) } },
|
||||
{ { SIMDE_FLOAT16_VALUE(-1.60), SIMDE_FLOAT16_VALUE(0.00), SIMDE_FLOAT16_VALUE(-9.80), SIMDE_FLOAT16_VALUE(2.30), SIMDE_FLOAT16_VALUE(-6.60), SIMDE_FLOAT16_VALUE(6.30), SIMDE_FLOAT16_VALUE(-2.90), SIMDE_FLOAT16_VALUE(6.00) },
|
||||
{ SIMDE_FLOAT16_VALUE(0.10), SIMDE_FLOAT16_VALUE(-4.80), SIMDE_FLOAT16_VALUE(-3.50), SIMDE_FLOAT16_VALUE(-8.50), SIMDE_FLOAT16_VALUE(2.00), SIMDE_FLOAT16_VALUE(8.60), SIMDE_FLOAT16_VALUE(-6.70), SIMDE_FLOAT16_VALUE(7.20) },
|
||||
{ SIMDE_FLOAT16_VALUE(-1.60), SIMDE_FLOAT16_VALUE(-4.80), SIMDE_FLOAT16_VALUE(-9.80), SIMDE_FLOAT16_VALUE(-8.50), SIMDE_FLOAT16_VALUE(-6.60), SIMDE_FLOAT16_VALUE(6.30), SIMDE_FLOAT16_VALUE(-6.70), SIMDE_FLOAT16_VALUE(6.00) } },
|
||||
{ { SIMDE_FLOAT16_VALUE(0.10), SIMDE_FLOAT16_VALUE(1.20), SIMDE_FLOAT16_VALUE(-1.60), SIMDE_FLOAT16_VALUE(-8.20), SIMDE_FLOAT16_VALUE(3.10), SIMDE_FLOAT16_VALUE(8.00), SIMDE_FLOAT16_VALUE(-5.20), SIMDE_FLOAT16_VALUE(2.20) },
|
||||
{ SIMDE_FLOAT16_VALUE(-2.90), SIMDE_FLOAT16_VALUE(3.80), SIMDE_FLOAT16_VALUE(-7.10), SIMDE_FLOAT16_VALUE(-5.50), SIMDE_FLOAT16_VALUE(-2.30), SIMDE_FLOAT16_VALUE(-5.60), SIMDE_FLOAT16_VALUE(-7.30), SIMDE_FLOAT16_VALUE(-6.60) },
|
||||
{ SIMDE_FLOAT16_VALUE(-2.90), SIMDE_FLOAT16_VALUE(1.20), SIMDE_FLOAT16_VALUE(-7.10), SIMDE_FLOAT16_VALUE(-8.20), SIMDE_FLOAT16_VALUE(-2.30), SIMDE_FLOAT16_VALUE(-5.60), SIMDE_FLOAT16_VALUE(-7.30), SIMDE_FLOAT16_VALUE(-6.60) } },
|
||||
{ { SIMDE_FLOAT16_VALUE(9.10), SIMDE_FLOAT16_VALUE(-2.10), SIMDE_FLOAT16_VALUE(0.80), SIMDE_FLOAT16_VALUE(-4.60), SIMDE_FLOAT16_VALUE(-1.00), SIMDE_FLOAT16_VALUE(2.50), SIMDE_FLOAT16_VALUE(-2.60), SIMDE_FLOAT16_VALUE(-0.10) },
|
||||
{ SIMDE_FLOAT16_VALUE(-4.00), SIMDE_FLOAT16_VALUE(-2.00), SIMDE_FLOAT16_VALUE(4.00), SIMDE_FLOAT16_VALUE(2.50), SIMDE_FLOAT16_VALUE(-7.20), SIMDE_FLOAT16_VALUE(2.10), SIMDE_FLOAT16_VALUE(-2.10), SIMDE_FLOAT16_VALUE(-3.10) },
|
||||
{ SIMDE_FLOAT16_VALUE(-4.00), SIMDE_FLOAT16_VALUE(-2.10), SIMDE_FLOAT16_VALUE(0.80), SIMDE_FLOAT16_VALUE(-4.60), SIMDE_FLOAT16_VALUE(-7.20), SIMDE_FLOAT16_VALUE(2.10), SIMDE_FLOAT16_VALUE(-2.60), SIMDE_FLOAT16_VALUE(-3.10) } },
|
||||
};
|
||||
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_vminq_f16(a, b);
|
||||
simde_test_arm_neon_assert_equal_f16x8(r, simde_vld1q_f16(test_vec[i].r), 1);
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
||||
#else
|
||||
fputc('\n', stdout);
|
||||
for (int i = 0 ; i < 8 ; i++) {
|
||||
simde_float16x8_t a = simde_test_arm_neon_random_f16x8(-100.0f, 100.0f);
|
||||
simde_float16x8_t b = simde_test_arm_neon_random_f16x8(-100.0f, 100.0f);
|
||||
simde_float16x8_t r = simde_vminq_f16(a, b);
|
||||
|
||||
simde_test_arm_neon_write_f16x8(2, a, SIMDE_TEST_VEC_POS_FIRST);
|
||||
simde_test_arm_neon_write_f16x8(2, b, SIMDE_TEST_VEC_POS_MIDDLE);
|
||||
simde_test_arm_neon_write_f16x8(2, r, SIMDE_TEST_VEC_POS_LAST);
|
||||
}
|
||||
return 1;
|
||||
#endif
|
||||
}
|
||||
|
||||
static int
|
||||
test_simde_vminq_f32 (SIMDE_MUNIT_TEST_ARGS) {
|
||||
#if 1
|
||||
struct {
|
||||
simde_float32 a[4];
|
||||
simde_float32 b[4];
|
||||
|
|
@ -534,10 +846,25 @@ test_simde_vminq_f32 (SIMDE_MUNIT_TEST_ARGS) {
|
|||
}
|
||||
|
||||
return 0;
|
||||
|
||||
#else
|
||||
fputc('\n', stdout);
|
||||
for (int i = 0 ; i < 8 ; i++) {
|
||||
simde_float32x4_t a = simde_test_arm_neon_random_f32x4(-1000.0f, 1000.0f);
|
||||
simde_float32x4_t b = simde_test_arm_neon_random_f32x4(-1000.0f, 1000.0f);
|
||||
simde_float32x4_t r = simde_vminq_f32(a, b);
|
||||
|
||||
simde_test_arm_neon_write_f32x4(2, a, SIMDE_TEST_VEC_POS_FIRST);
|
||||
simde_test_arm_neon_write_f32x4(2, b, SIMDE_TEST_VEC_POS_MIDDLE);
|
||||
simde_test_arm_neon_write_f32x4(2, r, SIMDE_TEST_VEC_POS_LAST);
|
||||
}
|
||||
return 1;
|
||||
#endif
|
||||
}
|
||||
|
||||
static int
|
||||
test_simde_vminq_f64 (SIMDE_MUNIT_TEST_ARGS) {
|
||||
#if 1
|
||||
struct {
|
||||
simde_float64 a[2];
|
||||
simde_float64 b[2];
|
||||
|
|
@ -586,10 +913,25 @@ test_simde_vminq_f64 (SIMDE_MUNIT_TEST_ARGS) {
|
|||
}
|
||||
|
||||
return 0;
|
||||
|
||||
#else
|
||||
fputc('\n', stdout);
|
||||
for (int i = 0 ; i < 8 ; i++) {
|
||||
simde_float64x2_t a = simde_test_arm_neon_random_f64x2(SIMDE_FLOAT64_C(-1000.0), SIMDE_FLOAT64_C(1000.0));
|
||||
simde_float64x2_t b = simde_test_arm_neon_random_f64x2(SIMDE_FLOAT64_C(-1000.0), SIMDE_FLOAT64_C(1000.0));
|
||||
simde_float64x2_t r = simde_vminq_f64(a, b);
|
||||
|
||||
simde_test_arm_neon_write_f64x2(2, a, SIMDE_TEST_VEC_POS_FIRST);
|
||||
simde_test_arm_neon_write_f64x2(2, b, SIMDE_TEST_VEC_POS_MIDDLE);
|
||||
simde_test_arm_neon_write_f64x2(2, r, SIMDE_TEST_VEC_POS_LAST);
|
||||
}
|
||||
return 1;
|
||||
#endif
|
||||
}
|
||||
|
||||
static int
|
||||
test_simde_vminq_s8 (SIMDE_MUNIT_TEST_ARGS) {
|
||||
#if 1
|
||||
struct {
|
||||
int8_t a[16];
|
||||
int8_t b[16];
|
||||
|
|
@ -654,10 +996,25 @@ test_simde_vminq_s8 (SIMDE_MUNIT_TEST_ARGS) {
|
|||
}
|
||||
|
||||
return 0;
|
||||
|
||||
#else
|
||||
fputc('\n', stdout);
|
||||
for (int i = 0 ; i < 8 ; i++) {
|
||||
simde_int8x16_t a = simde_test_arm_neon_random_i8x16();
|
||||
simde_int8x16_t b = simde_test_arm_neon_random_i8x16();
|
||||
simde_int8x16_t r = simde_vminq_s8(a, b);
|
||||
|
||||
simde_test_arm_neon_write_i8x16(2, a, SIMDE_TEST_VEC_POS_FIRST);
|
||||
simde_test_arm_neon_write_i8x16(2, b, SIMDE_TEST_VEC_POS_MIDDLE);
|
||||
simde_test_arm_neon_write_i8x16(2, r, SIMDE_TEST_VEC_POS_LAST);
|
||||
}
|
||||
return 1;
|
||||
#endif
|
||||
}
|
||||
|
||||
static int
|
||||
test_simde_vminq_s16 (SIMDE_MUNIT_TEST_ARGS) {
|
||||
#if 1
|
||||
struct {
|
||||
int16_t a[8];
|
||||
int16_t b[8];
|
||||
|
|
@ -698,10 +1055,25 @@ test_simde_vminq_s16 (SIMDE_MUNIT_TEST_ARGS) {
|
|||
}
|
||||
|
||||
return 0;
|
||||
|
||||
#else
|
||||
fputc('\n', stdout);
|
||||
for (int i = 0 ; i < 8 ; i++) {
|
||||
simde_int16x8_t a = simde_test_arm_neon_random_i16x8();
|
||||
simde_int16x8_t b = simde_test_arm_neon_random_i16x8();
|
||||
simde_int16x8_t r = simde_vminq_s16(a, b);
|
||||
|
||||
simde_test_arm_neon_write_i16x8(2, a, SIMDE_TEST_VEC_POS_FIRST);
|
||||
simde_test_arm_neon_write_i16x8(2, b, SIMDE_TEST_VEC_POS_MIDDLE);
|
||||
simde_test_arm_neon_write_i16x8(2, r, SIMDE_TEST_VEC_POS_LAST);
|
||||
}
|
||||
return 1;
|
||||
#endif
|
||||
}
|
||||
|
||||
static int
|
||||
test_simde_vminq_s32 (SIMDE_MUNIT_TEST_ARGS) {
|
||||
#if 1
|
||||
struct {
|
||||
int32_t a[4];
|
||||
int32_t b[4];
|
||||
|
|
@ -741,6 +1113,20 @@ test_simde_vminq_s32 (SIMDE_MUNIT_TEST_ARGS) {
|
|||
}
|
||||
|
||||
return 0;
|
||||
|
||||
#else
|
||||
fputc('\n', stdout);
|
||||
for (int i = 0 ; i < 8 ; i++) {
|
||||
simde_int32x4_t a = simde_test_arm_neon_random_i32x4();
|
||||
simde_int32x4_t b = simde_test_arm_neon_random_i32x4();
|
||||
simde_int32x4_t r = simde_vminq_s32(a, b);
|
||||
|
||||
simde_test_arm_neon_write_i32x4(2, a, SIMDE_TEST_VEC_POS_FIRST);
|
||||
simde_test_arm_neon_write_i32x4(2, b, SIMDE_TEST_VEC_POS_MIDDLE);
|
||||
simde_test_arm_neon_write_i32x4(2, r, SIMDE_TEST_VEC_POS_LAST);
|
||||
}
|
||||
return 1;
|
||||
#endif
|
||||
}
|
||||
|
||||
static int
|
||||
|
|
@ -802,6 +1188,7 @@ test_simde_x_vminq_s64 (SIMDE_MUNIT_TEST_ARGS) {
|
|||
|
||||
static int
|
||||
test_simde_vminq_u8 (SIMDE_MUNIT_TEST_ARGS) {
|
||||
#if 1
|
||||
struct {
|
||||
uint8_t a[16];
|
||||
uint8_t b[16];
|
||||
|
|
@ -866,10 +1253,25 @@ test_simde_vminq_u8 (SIMDE_MUNIT_TEST_ARGS) {
|
|||
}
|
||||
|
||||
return 0;
|
||||
|
||||
#else
|
||||
fputc('\n', stdout);
|
||||
for (int i = 0 ; i < 8 ; i++) {
|
||||
simde_uint8x16_t a = simde_test_arm_neon_random_u8x16();
|
||||
simde_uint8x16_t b = simde_test_arm_neon_random_u8x16();
|
||||
simde_uint8x16_t r = simde_vminq_u8(a, b);
|
||||
|
||||
simde_test_arm_neon_write_u8x16(2, a, SIMDE_TEST_VEC_POS_FIRST);
|
||||
simde_test_arm_neon_write_u8x16(2, b, SIMDE_TEST_VEC_POS_MIDDLE);
|
||||
simde_test_arm_neon_write_u8x16(2, r, SIMDE_TEST_VEC_POS_LAST);
|
||||
}
|
||||
return 1;
|
||||
#endif
|
||||
}
|
||||
|
||||
static int
|
||||
test_simde_vminq_u16 (SIMDE_MUNIT_TEST_ARGS) {
|
||||
#if 1
|
||||
struct {
|
||||
uint16_t a[8];
|
||||
uint16_t b[8];
|
||||
|
|
@ -909,10 +1311,25 @@ test_simde_vminq_u16 (SIMDE_MUNIT_TEST_ARGS) {
|
|||
}
|
||||
|
||||
return 0;
|
||||
|
||||
#else
|
||||
fputc('\n', stdout);
|
||||
for (int i = 0 ; i < 8 ; i++) {
|
||||
simde_uint16x8_t a = simde_test_arm_neon_random_u16x8();
|
||||
simde_uint16x8_t b = simde_test_arm_neon_random_u16x8();
|
||||
simde_uint16x8_t r = simde_vminq_u16(a, b);
|
||||
|
||||
simde_test_arm_neon_write_u16x8(2, a, SIMDE_TEST_VEC_POS_FIRST);
|
||||
simde_test_arm_neon_write_u16x8(2, b, SIMDE_TEST_VEC_POS_MIDDLE);
|
||||
simde_test_arm_neon_write_u16x8(2, r, SIMDE_TEST_VEC_POS_LAST);
|
||||
}
|
||||
return 1;
|
||||
#endif
|
||||
}
|
||||
|
||||
static int
|
||||
test_simde_vminq_u32 (SIMDE_MUNIT_TEST_ARGS) {
|
||||
#if 1
|
||||
struct {
|
||||
uint32_t a[4];
|
||||
uint32_t b[4];
|
||||
|
|
@ -953,6 +1370,20 @@ test_simde_vminq_u32 (SIMDE_MUNIT_TEST_ARGS) {
|
|||
}
|
||||
|
||||
return 0;
|
||||
|
||||
#else
|
||||
fputc('\n', stdout);
|
||||
for (int i = 0 ; i < 8 ; i++) {
|
||||
simde_uint32x4_t a = simde_test_arm_neon_random_u32x4();
|
||||
simde_uint32x4_t b = simde_test_arm_neon_random_u32x4();
|
||||
simde_uint32x4_t r = simde_vminq_u32(a, b);
|
||||
|
||||
simde_test_arm_neon_write_u32x4(2, a, SIMDE_TEST_VEC_POS_FIRST);
|
||||
simde_test_arm_neon_write_u32x4(2, b, SIMDE_TEST_VEC_POS_MIDDLE);
|
||||
simde_test_arm_neon_write_u32x4(2, r, SIMDE_TEST_VEC_POS_LAST);
|
||||
}
|
||||
return 1;
|
||||
#endif
|
||||
}
|
||||
|
||||
static int
|
||||
|
|
@ -1013,6 +1444,8 @@ test_simde_x_vminq_u64 (SIMDE_MUNIT_TEST_ARGS) {
|
|||
}
|
||||
|
||||
SIMDE_TEST_FUNC_LIST_BEGIN
|
||||
SIMDE_TEST_FUNC_LIST_ENTRY(vminh_f16)
|
||||
SIMDE_TEST_FUNC_LIST_ENTRY(vmin_f16)
|
||||
SIMDE_TEST_FUNC_LIST_ENTRY(vmin_f32)
|
||||
SIMDE_TEST_FUNC_LIST_ENTRY(vmin_f64)
|
||||
SIMDE_TEST_FUNC_LIST_ENTRY(vmin_s8)
|
||||
|
|
@ -1024,6 +1457,7 @@ SIMDE_TEST_FUNC_LIST_ENTRY(vmin_u16)
|
|||
SIMDE_TEST_FUNC_LIST_ENTRY(vmin_u32)
|
||||
SIMDE_TEST_FUNC_LIST_ENTRY(x_vmin_u64)
|
||||
|
||||
SIMDE_TEST_FUNC_LIST_ENTRY(vminq_f16)
|
||||
SIMDE_TEST_FUNC_LIST_ENTRY(vminq_f32)
|
||||
SIMDE_TEST_FUNC_LIST_ENTRY(vminq_f64)
|
||||
SIMDE_TEST_FUNC_LIST_ENTRY(vminq_s8)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue