| #include "lsx_test_util.h" |
| #include <lsxintrin.h> |
| |
| int |
| main () |
| { |
| __m128i __m128i_out, __m128i_result; |
| __m128 __m128_out, __m128_result; |
| __m128d __m128d_out, __m128d_result; |
| v2u64 v2u64_op0, v2u64_op1, v2u64_op2; |
| v4i32 v4i32_op0, v4i32_op1, v4i32_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; |
| |
| v2u64_op0 = (v2u64){0x0000000000000000, 0x0000000000000000}; |
| v2u64_op1 = (v2u64){0x0000000000000020, 0x0000000000000000}; |
| __m128i_result = (__m128i){0x0000000000000000, 0x0000000000000000}; |
| __m128i_out = __lsx_vpackod_b((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0x0000000000000000, 0x0000000000000000}; |
| v2u64_op1 = (v2u64){0x0000000000000000, 0x0000000000000000}; |
| __m128i_result = (__m128i){0x0000000000000000, 0x0000000000000000}; |
| __m128i_out = __lsx_vpackod_b((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0x0000000000000000, 0x0000000000000000}; |
| v2u64_op1 = (v2u64){0xfe80000000000001, 0x0000000000000000}; |
| __m128i_result = (__m128i){0x00fe000000000000, 0x0000000000000000}; |
| __m128i_out = __lsx_vpackod_b((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0x0000000000000000, 0x0000000000000000}; |
| v2u64_op1 = (v2u64){0x0000000000000000, 0x0000000000000000}; |
| __m128i_result = (__m128i){0x0000000000000000, 0x0000000000000000}; |
| __m128i_out = __lsx_vpackod_b((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0x0000000000000000, 0x0000000000000000}; |
| v2u64_op1 = (v2u64){0x1000100000101000, 0x0010100000100000}; |
| __m128i_result = (__m128i){0x0010001000000010, 0x0000001000000000}; |
| __m128i_out = __lsx_vpackod_b((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0xffffffffffffffff, 0x21201f1e19181716}; |
| v2u64_op1 = (v2u64){0x3918371635143312, 0x01203f1e3d1c3b1a}; |
| __m128i_result = (__m128i){0xff39ff37ff35ff33, 0x21011f3f193d173b}; |
| __m128i_out = __lsx_vpackod_b((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0x00000100000000fc, 0x00000100000000fc}; |
| v2u64_op1 = (v2u64){0x0000000000000000, 0x0000000000000000}; |
| __m128i_result = (__m128i){0x0000010000000000, 0x0000010000000000}; |
| __m128i_out = __lsx_vpackod_b((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0x0000000000080008, 0x0000000000000002}; |
| v2u64_op1 = (v2u64){0xffffffffffffffff, 0x0000000000000000}; |
| __m128i_result = (__m128i){0x00ff00ff00ff00ff, 0x0000000000000000}; |
| __m128i_out = __lsx_vpackod_b((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0x0000000000000000, 0x0000000000000000}; |
| v2u64_op1 = (v2u64){0x0000000000000000, 0xffff0000ffff0000}; |
| __m128i_result = (__m128i){0x0000000000000000, 0x00ff000000ff0000}; |
| __m128i_out = __lsx_vpackod_b((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0x0000000000000000, 0x0000000000000000}; |
| v2u64_op1 = (v2u64){0xcd636363cd636363, 0xcd636363cd636363}; |
| __m128i_result = (__m128i){0x00cd006300cd0063, 0x00cd006300cd0063}; |
| __m128i_out = __lsx_vpackod_b((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0x0000000000000000, 0x0000000000000000}; |
| v2u64_op1 = (v2u64){0x2e34594c3b000000, 0x0000000000000000}; |
| __m128i_result = (__m128i){0x002e0059003b0000, 0x0000000000000000}; |
| __m128i_out = __lsx_vpackod_b((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0x0000000000000040, 0x0000000000000040}; |
| v2u64_op1 = (v2u64){0xfffc002000000000, 0x3ff0000000000000}; |
| __m128i_result = (__m128i){0x0000fffc00000000, 0x00003ff000000000}; |
| __m128i_out = __lsx_vpackod_h((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0x0000000000000000, 0x0000000000000000}; |
| v2u64_op1 = (v2u64){0x00000000000001fe, 0x0000000000000000}; |
| __m128i_result = (__m128i){0x0000000000000000, 0x0000000000000000}; |
| __m128i_out = __lsx_vpackod_h((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0x0000000100000015, 0x000000000000003a}; |
| v2u64_op1 = (v2u64){0x0000000000000000, 0x0000000000000000}; |
| __m128i_result = (__m128i){0x0000000000000000, 0x0000000000000000}; |
| __m128i_out = __lsx_vpackod_h((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0x0000000000000000, 0x0000000000000800}; |
| v2u64_op1 = (v2u64){0xffffffffffffffff, 0xffffffffffffffff}; |
| __m128i_result = (__m128i){0x0000ffff0000ffff, 0x0000ffff0000ffff}; |
| __m128i_out = __lsx_vpackod_h((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0x0000000000000000, 0x0000000000000000}; |
| v2u64_op1 = (v2u64){0x0000000000000000, 0x0000000000000000}; |
| __m128i_result = (__m128i){0x0000000000000000, 0x0000000000000000}; |
| __m128i_out = __lsx_vpackod_h((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0x0000000000000000, 0x0000000000000000}; |
| v2u64_op1 = (v2u64){0x0000000000000000, 0x0000000000000000}; |
| __m128i_result = (__m128i){0x0000000000000000, 0x0000000000000000}; |
| __m128i_out = __lsx_vpackod_h((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0xfe80ffffffffff02, 0x0000000000000000}; |
| v2u64_op1 = (v2u64){0xff80000000000000, 0x0000000000000000}; |
| __m128i_result = (__m128i){0xfe80ff80ffff0000, 0x0000000000000000}; |
| __m128i_out = __lsx_vpackod_h((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0x4f8000004f800000, 0x4f8000004f800000}; |
| v2u64_op1 = (v2u64){0x4f8000004f800000, 0x4f8000004f800000}; |
| __m128i_result = (__m128i){0x4f804f804f804f80, 0x4f804f804f804f80}; |
| __m128i_out = __lsx_vpackod_h((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0x7fff7fff7fff7ff8, 0x000000003fbf3fbf}; |
| v2u64_op1 = (v2u64){0xffffffffffff0000, 0xffffffffffffffff}; |
| __m128i_result = (__m128i){0x7fffffff7fffffff, 0x0000ffff3fbfffff}; |
| __m128i_out = __lsx_vpackod_h((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0x0000000000000000, 0x0000000000000000}; |
| v2u64_op1 = (v2u64){0x0000000000ff00ff, 0xffffffff80806362}; |
| __m128i_result = (__m128i){0x00000000000000ff, 0x0000ffff00008080}; |
| __m128i_out = __lsx_vpackod_h((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0x0000001400000000, 0xffffffff00000000}; |
| v2u64_op1 = (v2u64){0x0000000000000000, 0x0000000000000000}; |
| __m128i_result = (__m128i){0x0000000000000000, 0xffff000000000000}; |
| __m128i_out = __lsx_vpackod_h((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0x001e001e001e001e, 0x001e001e001e001e}; |
| v2u64_op1 = (v2u64){0xffaeffaeffaeffae, 0xffaeffaeffaeffae}; |
| __m128i_result = (__m128i){0x001effae001effae, 0x001effae001effae}; |
| __m128i_out = __lsx_vpackod_h((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0x000000000000003b, 0x0000440efffff000}; |
| v2u64_op1 = (v2u64){0x000000000000003b, 0x0000440efffff000}; |
| __m128i_result = (__m128i){0x0000000000000000, 0x00000000ffffffff}; |
| __m128i_out = __lsx_vpackod_h((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0x0000c90000000000, 0x0000cecd00004657}; |
| v2u64_op1 = (v2u64){0x00019d9a00008cae, 0x0000000000000000}; |
| __m128i_result = (__m128i){0x0000000100000000, 0x0000000000000000}; |
| __m128i_out = __lsx_vpackod_h((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0x0000000000000000, 0x0000000000000000}; |
| v2u64_op1 = (v2u64){0x000201000000000b, 0x0000000000000000}; |
| __m128i_result = (__m128i){0x0000000000020100, 0x0000000000000000}; |
| __m128i_out = __lsx_vpackod_w((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0x0000000001010000, 0x03574e3a62407e03}; |
| v2u64_op1 = (v2u64){0x0000000001010000, 0x03574e3a62407e03}; |
| __m128i_result = (__m128i){0x0000000000000000, 0x03574e3a03574e3a}; |
| __m128i_out = __lsx_vpackod_w((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0x0000000000000000, 0x0000000000000000}; |
| v2u64_op1 = (v2u64){0x00000001fffffffe, 0x00000001fffffffe}; |
| __m128i_result = (__m128i){0x0000000000000001, 0x0000000000000001}; |
| __m128i_out = __lsx_vpackod_w((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0x0000000000000000, 0x0000000000000000}; |
| v2u64_op1 = (v2u64){0x0000000000000000, 0x0000000000000000}; |
| __m128i_result = (__m128i){0x0000000000000000, 0x0000000000000000}; |
| __m128i_out = __lsx_vpackod_w((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0x0f000d200e000c20, 0x11000f2010000e20}; |
| v2u64_op1 = (v2u64){0x0000000000000000, 0x0000000000000000}; |
| __m128i_result = (__m128i){0x0f000d2000000000, 0x11000f2000000000}; |
| __m128i_out = __lsx_vpackod_w((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0x0000c000ffffc000, 0x0000006f00001f0a}; |
| v2u64_op1 = (v2u64){0x0000000000000000, 0x0000000000000000}; |
| __m128i_result = (__m128i){0x0000c00000000000, 0x0000006f00000000}; |
| __m128i_out = __lsx_vpackod_w((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0x0000ffff0000ff00, 0x0000ffff0000ffff}; |
| v2u64_op1 = (v2u64){0xffdfffdfffdffee0, 0xfffffffffffffef8}; |
| __m128i_result = (__m128i){0x0000ffffffdfffdf, 0x0000ffffffffffff}; |
| __m128i_out = __lsx_vpackod_w((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0xffffffffffffffff, 0xffffffffffffffff}; |
| v2u64_op1 = (v2u64){0x0000000000000000, 0x0000000000000000}; |
| __m128i_result = (__m128i){0xffffffff00000000, 0xffffffff00000000}; |
| __m128i_out = __lsx_vpackod_w((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0x0000000000000000, 0x0000000000000000}; |
| v2u64_op1 = (v2u64){0x0404050404040404, 0x0404050404040404}; |
| __m128i_result = (__m128i){0x0000000004040504, 0x0000000004040504}; |
| __m128i_out = __lsx_vpackod_w((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0x80006b0000000b00, 0x8000807f80808000}; |
| v2u64_op1 = (v2u64){0x80808080806b000b, 0x0000000000000000}; |
| __m128i_result = (__m128i){0x80006b0080808080, 0x8000807f00000000}; |
| __m128i_out = __lsx_vpackod_w((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0x0000400000004000, 0x0000000000000000}; |
| v2u64_op1 = (v2u64){0xffffffffffff0000, 0xffffffff00000000}; |
| __m128i_result = (__m128i){0x00004000ffffffff, 0x00000000ffffffff}; |
| __m128i_out = __lsx_vpackod_w((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0x0001000100010001, 0x0001000100010001}; |
| v2u64_op1 = (v2u64){0x0001000000000000, 0x0000000000000000}; |
| __m128i_result = (__m128i){0x0001000100010000, 0x0001000100000000}; |
| __m128i_out = __lsx_vpackod_w((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0x0000800000000000, 0x0000800000000000}; |
| v2u64_op1 = (v2u64){0x0000000000000000, 0x0000000000000000}; |
| __m128i_result = (__m128i){0x0000800000000000, 0x0000800000000000}; |
| __m128i_out = __lsx_vpackod_w((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0xfffefffefffefffe, 0xfffefffefffefffe}; |
| v2u64_op1 = (v2u64){0x0000000000000000, 0x0000000000000000}; |
| __m128i_result = (__m128i){0xfffefffe00000000, 0xfffefffe00000000}; |
| __m128i_out = __lsx_vpackod_w((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0x0000000000000000, 0x0000000000000000}; |
| v2u64_op1 = (v2u64){0x0000000000000000, 0x0000000000000000}; |
| __m128i_result = (__m128i){0x0000000000000000, 0x0000000000000000}; |
| __m128i_out = __lsx_vpackod_d((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0xe0404041e0404041, 0xe0404041e0404041}; |
| v2u64_op1 = (v2u64){0xe0404041c0404040, 0x803f800080000000}; |
| __m128i_result = (__m128i){0x803f800080000000, 0xe0404041e0404041}; |
| __m128i_out = __lsx_vpackod_d((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0x40f0001000000000, 0x40f0001000000000}; |
| v2u64_op1 = (v2u64){0xfffcfffcfffcfffc, 0xfffcfffcfffcfffc}; |
| __m128i_result = (__m128i){0xfffcfffcfffcfffc, 0x40f0001000000000}; |
| __m128i_out = __lsx_vpackod_d((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0x0000000000000000, 0x0000000000000000}; |
| v2u64_op1 = (v2u64){0x0000000000000000, 0x0000000000000000}; |
| __m128i_result = (__m128i){0x0000000000000000, 0x0000000000000000}; |
| __m128i_out = __lsx_vpackod_d((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0x0000000000000000, 0x0000000000000000}; |
| v2u64_op1 = (v2u64){0xffffffffffffffff, 0xffffffffffffffff}; |
| __m128i_result = (__m128i){0xffffffffffffffff, 0x0000000000000000}; |
| __m128i_out = __lsx_vpackod_d((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0x2222272011111410, 0x0000002000000020}; |
| v2u64_op1 = (v2u64){0x2222272011111410, 0x0000002000000020}; |
| __m128i_result = (__m128i){0x0000002000000020, 0x0000002000000020}; |
| __m128i_out = __lsx_vpackod_d((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0x0000000000000000, 0x0000000000000000}; |
| v2u64_op1 = (v2u64){0x0000000000000000, 0x0000000000000000}; |
| __m128i_result = (__m128i){0x0000000000000000, 0x0000000000000000}; |
| __m128i_out = __lsx_vpackod_d((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0x0000000000000000, 0x0000000000000000}; |
| v2u64_op1 = (v2u64){0x0000000000000000, 0x0000000000000000}; |
| __m128i_result = (__m128i){0x0000000000000000, 0x0000000000000000}; |
| __m128i_out = __lsx_vpackod_d((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0x03aa558e1d37b5a1, 0x000aa822a79308f6}; |
| v2u64_op1 = (v2u64){0x0000ff80fd820000, 0x00000000084d12ce}; |
| __m128i_result = (__m128i){0x00000000084d12ce, 0x000aa822a79308f6}; |
| __m128i_out = __lsx_vpackod_d((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| v2u64_op0 = (v2u64){0x0000ffff0000ffff, 0x0000ffff0000ffff}; |
| v2u64_op1 = (v2u64){0x5efeb3165bd7653d, 0xffff2356fe165486}; |
| __m128i_result = (__m128i){0xffff2356fe165486, 0x0000ffff0000ffff}; |
| __m128i_out = __lsx_vpackod_d((__m128)v2u64_op0, (__m128)v2u64_op1); |
| check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__); |
| |
| return 0; |
| } |