| #include "lasx_test_util.h" |
| #include <lasxintrin.h> |
| |
| int |
| main () |
| { |
| __m256i __m256i_out, __m256i_result; |
| __m256 __m256_out, __m256_result; |
| __m256d __m256d_out, __m256d_result; |
| v4u64 v4u64_op0, v4u64_op1, v4u64_op2; |
| v8i32 v8i32_op0, v8i32_op1, v8i32_op2; |
| |
| int int_op0, int_op1, i = 1, fail; |
| long int long_op0, long_op1; |
| long int long_int_out, long_int_result; |
| unsigned int unsigned_int_out, unsigned_int_result; |
| unsigned long int unsigned_long_int_out, unsigned_long_int_result; |
| |
| v4u64_op0 = (v4u64){0xf7ebfab800000000, 0x00000000c85221c0, |
| 0x3922d40000000000, 0x00000000ffffffff}; |
| __m256i_result = (__m256i){0x00000000000009f0, 0x0000000000000000, |
| 0x0000000000000f20, 0x0000000000000000}; |
| __m256i_out = __lasx_xvmskltz_b((__m256)v4u64_op0); |
| check_lasx_out(&__m256i_result, &__m256i_out, sizeof(__m256i_out), __FILE__, __LINE__); |
| |
| v4u64_op0 = (v4u64){0x5980000000000000, 0x0000000000000000, |
| 0x5980000000000000, 0x0000000000000000}; |
| __m256i_result = (__m256i){0x0000000000000040, 0x0000000000000000, |
| 0x0000000000000040, 0x0000000000000000}; |
| __m256i_out = __lasx_xvmskltz_b((__m256)v4u64_op0); |
| check_lasx_out(&__m256i_result, &__m256i_out, sizeof(__m256i_out), __FILE__, __LINE__); |
| |
| v4u64_op0 = (v4u64){0x1f9d9f9d201cb39e, 0x201c9f9d201cb29f, |
| 0x1f9d9f9d201cb39e, 0x1f9d9f9d1f9db29f}; |
| __m256i_result = (__m256i){0x0000000000003373, 0x0000000000000000, |
| 0x0000000000007773, 0x0000000000000000}; |
| __m256i_out = __lasx_xvmskltz_b((__m256)v4u64_op0); |
| check_lasx_out(&__m256i_result, &__m256i_out, sizeof(__m256i_out), __FILE__, __LINE__); |
| |
| v4u64_op0 = (v4u64){0x0000000000000000, 0x0000000000000000, |
| 0x0000000000000000, 0x0000000000000000}; |
| __m256i_result = (__m256i){0x0000000000000000, 0x0000000000000000, |
| 0x0000000000000000, 0x0000000000000000}; |
| __m256i_out = __lasx_xvmskltz_b((__m256)v4u64_op0); |
| check_lasx_out(&__m256i_result, &__m256i_out, sizeof(__m256i_out), __FILE__, __LINE__); |
| |
| v4u64_op0 = (v4u64){0x0101010200000000, 0x0101010101010101, |
| 0x0101010200000000, 0x0101010101010101}; |
| __m256i_result = (__m256i){0x0000000000000000, 0x0000000000000000, |
| 0x0000000000000000, 0x0000000000000000}; |
| __m256i_out = __lasx_xvmskltz_b((__m256)v4u64_op0); |
| check_lasx_out(&__m256i_result, &__m256i_out, sizeof(__m256i_out), __FILE__, __LINE__); |
| |
| v4u64_op0 = (v4u64){0xffffffffffffffff, 0xffffffffffffffff, |
| 0xffffffffffffffff, 0xffffffffffffffff}; |
| __m256i_result = (__m256i){0x000000000000ffff, 0x0000000000000000, |
| 0x000000000000ffff, 0x0000000000000000}; |
| __m256i_out = __lasx_xvmskltz_b((__m256)v4u64_op0); |
| check_lasx_out(&__m256i_result, &__m256i_out, sizeof(__m256i_out), __FILE__, __LINE__); |
| |
| v4u64_op0 = (v4u64){0xfffffeff000c057c, 0xffffffc000000000, |
| 0xfffffeff000c057c, 0xffffffc000000000}; |
| __m256i_result = (__m256i){0x000000000000f0f0, 0x0000000000000000, |
| 0x000000000000f0f0, 0x0000000000000000}; |
| __m256i_out = __lasx_xvmskltz_b((__m256)v4u64_op0); |
| check_lasx_out(&__m256i_result, &__m256i_out, sizeof(__m256i_out), __FILE__, __LINE__); |
| |
| v4u64_op0 = (v4u64){0x0000000000000000, 0x0000000000000000, |
| 0x0000000000000000, 0x0000000000000000}; |
| __m256i_result = (__m256i){0x0000000000000000, 0x0000000000000000, |
| 0x0000000000000000, 0x0000000000000000}; |
| __m256i_out = __lasx_xvmskltz_b((__m256)v4u64_op0); |
| check_lasx_out(&__m256i_result, &__m256i_out, sizeof(__m256i_out), __FILE__, __LINE__); |
| |
| v4u64_op0 = (v4u64){0x7fffffffffffffff, 0x0000000000000000, |
| 0x0000000000000000, 0x0000000000000000}; |
| __m256i_result = (__m256i){0x0000000000000007, 0x0000000000000000, |
| 0x0000000000000000, 0x0000000000000000}; |
| __m256i_out = __lasx_xvmskltz_h((__m256)v4u64_op0); |
| check_lasx_out(&__m256i_result, &__m256i_out, sizeof(__m256i_out), __FILE__, __LINE__); |
| |
| v4u64_op0 = (v4u64){0x40d74f979f99419f, 0x00000000ffff0000, |
| 0xffffffffffffffff, 0xffffffffffffffff}; |
| __m256i_result = (__m256i){0x0000000000000022, 0x0000000000000000, |
| 0x00000000000000ff, 0x0000000000000000}; |
| __m256i_out = __lasx_xvmskltz_h((__m256)v4u64_op0); |
| check_lasx_out(&__m256i_result, &__m256i_out, sizeof(__m256i_out), __FILE__, __LINE__); |
| |
| v4u64_op0 = (v4u64){0x0101010101010101, 0x0101010100000000, |
| 0x0101010101010101, 0x0101010100000000}; |
| __m256i_result = (__m256i){0x0000000000000000, 0x0000000000000000, |
| 0x0000000000000000, 0x0000000000000000}; |
| __m256i_out = __lasx_xvmskltz_h((__m256)v4u64_op0); |
| check_lasx_out(&__m256i_result, &__m256i_out, sizeof(__m256i_out), __FILE__, __LINE__); |
| |
| v4u64_op0 = (v4u64){0x8008000000000000, 0xe0f02081c1c4ce2c, |
| 0x8008000000000000, 0xe0f02081c1c4ce2c}; |
| __m256i_result = (__m256i){0x00000000000000b8, 0x0000000000000000, |
| 0x00000000000000b8, 0x0000000000000000}; |
| __m256i_out = __lasx_xvmskltz_h((__m256)v4u64_op0); |
| check_lasx_out(&__m256i_result, &__m256i_out, sizeof(__m256i_out), __FILE__, __LINE__); |
| |
| v4u64_op0 = (v4u64){0x0000000000000000, 0x0000000000000000, |
| 0x0000000000000000, 0x0000000000000000}; |
| __m256i_result = (__m256i){0x0000000000000000, 0x0000000000000000, |
| 0x0000000000000000, 0x0000000000000000}; |
| __m256i_out = __lasx_xvmskltz_h((__m256)v4u64_op0); |
| check_lasx_out(&__m256i_result, &__m256i_out, sizeof(__m256i_out), __FILE__, __LINE__); |
| |
| v4u64_op0 = (v4u64){0x00000001fffc0001, 0x00000001fffc0001, |
| 0x00000001fffc0001, 0x00000001fffc0001}; |
| __m256i_result = (__m256i){0x0000000000000022, 0x0000000000000000, |
| 0x0000000000000022, 0x0000000000000000}; |
| __m256i_out = __lasx_xvmskltz_h((__m256)v4u64_op0); |
| check_lasx_out(&__m256i_result, &__m256i_out, sizeof(__m256i_out), __FILE__, __LINE__); |
| |
| v4u64_op0 = (v4u64){0xffffb2f600006f48, 0x8000000100000001, |
| 0xffffb2f600006f48, 0x8000000100000001}; |
| __m256i_result = (__m256i){0x000000000000008c, 0x0000000000000000, |
| 0x000000000000008c, 0x0000000000000000}; |
| __m256i_out = __lasx_xvmskltz_h((__m256)v4u64_op0); |
| check_lasx_out(&__m256i_result, &__m256i_out, sizeof(__m256i_out), __FILE__, __LINE__); |
| |
| v4u64_op0 = (v4u64){0xffff800300000000, 0xffff801000000010, |
| 0xffff800300000000, 0xffff801000000010}; |
| __m256i_result = (__m256i){0x00000000000000cc, 0x0000000000000000, |
| 0x00000000000000cc, 0x0000000000000000}; |
| __m256i_out = __lasx_xvmskltz_h((__m256)v4u64_op0); |
| check_lasx_out(&__m256i_result, &__m256i_out, sizeof(__m256i_out), __FILE__, __LINE__); |
| |
| v4u64_op0 = (v4u64){0x0000ffff00000000, 0x0000ffff0000ffff, |
| 0x0000ffff0000ffc0, 0x0000ffff0000ffff}; |
| __m256i_result = (__m256i){0x0000000000000054, 0x0000000000000000, |
| 0x0000000000000055, 0x0000000000000000}; |
| __m256i_out = __lasx_xvmskltz_h((__m256)v4u64_op0); |
| check_lasx_out(&__m256i_result, &__m256i_out, sizeof(__m256i_out), __FILE__, __LINE__); |
| |
| v4u64_op0 = (v4u64){0x0000000000000000, 0x0000000000000000, |
| 0x0000000000000000, 0x0000000000000000}; |
| __m256i_result = (__m256i){0x0000000000000000, 0x0000000000000000, |
| 0x0000000000000000, 0x0000000000000000}; |
| __m256i_out = __lasx_xvmskltz_w((__m256)v4u64_op0); |
| check_lasx_out(&__m256i_result, &__m256i_out, sizeof(__m256i_out), __FILE__, __LINE__); |
| |
| v4u64_op0 = (v4u64){0x0a0a0a0a7f0a0a0a, 0x0a0a0a0a7f0a0a0a, |
| 0x0a0a0a0a7f0a0a0a, 0x0a0a0a0a7f0a0a0a}; |
| __m256i_result = (__m256i){0x0000000000000000, 0x0000000000000000, |
| 0x0000000000000000, 0x0000000000000000}; |
| __m256i_out = __lasx_xvmskltz_w((__m256)v4u64_op0); |
| check_lasx_out(&__m256i_result, &__m256i_out, sizeof(__m256i_out), __FILE__, __LINE__); |
| |
| v4u64_op0 = (v4u64){0x0000000000000404, 0x0000000001010101, |
| 0x0000000000000404, 0x0000000001010101}; |
| __m256i_result = (__m256i){0x0000000000000000, 0x0000000000000000, |
| 0x0000000000000000, 0x0000000000000000}; |
| __m256i_out = __lasx_xvmskltz_w((__m256)v4u64_op0); |
| check_lasx_out(&__m256i_result, &__m256i_out, sizeof(__m256i_out), __FILE__, __LINE__); |
| |
| v4u64_op0 = (v4u64){0x0000000000000000, 0x0000000000000000, |
| 0x0000000000000000, 0x0000000000000000}; |
| __m256i_result = (__m256i){0x0000000000000000, 0x0000000000000000, |
| 0x0000000000000000, 0x0000000000000000}; |
| __m256i_out = __lasx_xvmskltz_w((__m256)v4u64_op0); |
| check_lasx_out(&__m256i_result, &__m256i_out, sizeof(__m256i_out), __FILE__, __LINE__); |
| |
| v4u64_op0 = (v4u64){0x00630064004bffd0, 0x0000fffeffb9ff9d, |
| 0x0000ffff0049ffd2, 0xc080ffff0049ffd2}; |
| __m256i_result = (__m256i){0x0000000000000000, 0x0000000000000000, |
| 0x0000000000000002, 0x0000000000000000}; |
| __m256i_out = __lasx_xvmskltz_d((__m256)v4u64_op0); |
| check_lasx_out(&__m256i_result, &__m256i_out, sizeof(__m256i_out), __FILE__, __LINE__); |
| |
| v4u64_op0 = (v4u64){0x0000000000000000, 0x0000000000000000, |
| 0x0000000000000000, 0x0000000000000000}; |
| __m256i_result = (__m256i){0x0000000000000000, 0x0000000000000000, |
| 0x0000000000000000, 0x0000000000000000}; |
| __m256i_out = __lasx_xvmskltz_d((__m256)v4u64_op0); |
| check_lasx_out(&__m256i_result, &__m256i_out, sizeof(__m256i_out), __FILE__, __LINE__); |
| |
| v4u64_op0 = (v4u64){0x0000000000000000, 0x0000000000000000, |
| 0x0000000000000000, 0x0000000000000000}; |
| __m256i_result = (__m256i){0x0000000000000000, 0x0000000000000000, |
| 0x0000000000000000, 0x0000000000000000}; |
| __m256i_out = __lasx_xvmskltz_d((__m256)v4u64_op0); |
| check_lasx_out(&__m256i_result, &__m256i_out, sizeof(__m256i_out), __FILE__, __LINE__); |
| |
| v4u64_op0 = (v4u64){0xffffffffffffffff, 0xffffffffffffffff, |
| 0xffffffffffffffff, 0xffffffffffffffff}; |
| __m256i_result = (__m256i){0x0000000000000003, 0x0000000000000000, |
| 0x0000000000000003, 0x0000000000000000}; |
| __m256i_out = __lasx_xvmskltz_d((__m256)v4u64_op0); |
| check_lasx_out(&__m256i_result, &__m256i_out, sizeof(__m256i_out), __FILE__, __LINE__); |
| |
| v4u64_op0 = (v4u64){0x0000000000000088, 0x0000000000000000, |
| 0x0000000000000088, 0x0000000000000000}; |
| __m256i_result = (__m256i){0x0000000000000000, 0x0000000000000000, |
| 0x0000000000000000, 0x0000000000000000}; |
| __m256i_out = __lasx_xvmskltz_d((__m256)v4u64_op0); |
| check_lasx_out(&__m256i_result, &__m256i_out, sizeof(__m256i_out), __FILE__, __LINE__); |
| |
| v4u64_op0 = (v4u64){0x0000000000000000, 0x0000000000000000, |
| 0x0000000000000000, 0x0000000000000000}; |
| __m256i_result = (__m256i){0x0000000000000000, 0x0000000000000000, |
| 0x0000000000000000, 0x0000000000000000}; |
| __m256i_out = __lasx_xvmskltz_d((__m256)v4u64_op0); |
| check_lasx_out(&__m256i_result, &__m256i_out, sizeof(__m256i_out), __FILE__, __LINE__); |
| |
| v4u64_op0 = (v4u64){0x0000000000000000, 0x0000000000000000, |
| 0x0000000000000000, 0x0000000000000000}; |
| __m256i_result = (__m256i){0x0000000000000000, 0x0000000000000000, |
| 0x0000000000000000, 0x0000000000000000}; |
| __m256i_out = __lasx_xvmskltz_d((__m256)v4u64_op0); |
| check_lasx_out(&__m256i_result, &__m256i_out, sizeof(__m256i_out), __FILE__, __LINE__); |
| |
| v4u64_op0 = (v4u64){0x296e000018170000, 0x0000000000000000, |
| 0x296e000018170000, 0x0000000000000000}; |
| __m256i_result = (__m256i){0x0000000000000000, 0x0000000000000000, |
| 0x0000000000000000, 0x0000000000000000}; |
| __m256i_out = __lasx_xvmskltz_d((__m256)v4u64_op0); |
| check_lasx_out(&__m256i_result, &__m256i_out, sizeof(__m256i_out), __FILE__, __LINE__); |
| |
| v4u64_op0 = (v4u64){0x0000000000000000, 0x0000000000000000, |
| 0x0000000000000000, 0x0000000000000000}; |
| __m256i_result = (__m256i){0x0000000000000000, 0x0000000000000000, |
| 0x0000000000000000, 0x0000000000000000}; |
| __m256i_out = __lasx_xvmskltz_d((__m256)v4u64_op0); |
| check_lasx_out(&__m256i_result, &__m256i_out, sizeof(__m256i_out), __FILE__, __LINE__); |
| |
| v4u64_op0 = (v4u64){0x0000000000000000, 0x0000000000000000, |
| 0x0000000000000000, 0x0000000000000000}; |
| __m256i_result = (__m256i){0x0000000000000000, 0x0000000000000000, |
| 0x0000000000000000, 0x0000000000000000}; |
| __m256i_out = __lasx_xvmskltz_d((__m256)v4u64_op0); |
| check_lasx_out(&__m256i_result, &__m256i_out, sizeof(__m256i_out), __FILE__, __LINE__); |
| |
| v4u64_op0 = (v4u64){0x0000000000000000, 0x0000000000000000, |
| 0x0000000000000000, 0x0000000000000000}; |
| __m256i_result = (__m256i){0x0000000000000000, 0x0000000000000000, |
| 0x0000000000000000, 0x0000000000000000}; |
| __m256i_out = __lasx_xvmskltz_d((__m256)v4u64_op0); |
| check_lasx_out(&__m256i_result, &__m256i_out, sizeof(__m256i_out), __FILE__, __LINE__); |
| |
| return 0; |
| } |