blob: 8dcc2833f775111254694f533b9b39705fd1e5cd [file] [edit]
#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){0x0000000000000000, 0x0000000000000000};
__m128i_result = (__m128i){0x0000000000000000, 0x0000000000000000};
__m128i_out = __lsx_vsubwod_h_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_vsubwod_h_b((__m128)v2u64_op0, (__m128)v2u64_op1);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0x40f3fa0000000000, 0x3ff0000000000001};
v2u64_op1 = (v2u64){0xc485edbcc0000000, 0x0000000000000000};
__m128i_result = (__m128i){0x007c000d00400000, 0x003f000000000000};
__m128i_out = __lsx_vsubwod_h_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){0x841f000fc28f801f, 0x0000000000000000};
__m128i_result = (__m128i){0x007c0000003e0080, 0x0000000000000000};
__m128i_out = __lsx_vsubwod_h_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){0xffffffffffffffff, 0xffffffffffffffff};
__m128i_result = (__m128i){0x0001000100010001, 0x0001000100010001};
__m128i_out = __lsx_vsubwod_h_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){0xffffffff00000000, 0xffffffffffffffff};
__m128i_result = (__m128i){0x0000000100000000, 0x0000000100000001};
__m128i_out = __lsx_vsubwod_w_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_vsubwod_w_h((__m128)v2u64_op0, (__m128)v2u64_op1);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0x0000000210011084, 0x000000017fff9000};
v2u64_op1 = (v2u64){0x0000000000000000, 0x0000000000000000};
__m128i_result = (__m128i){0x0000000000001001, 0x0000000000007fff};
__m128i_out = __lsx_vsubwod_w_h((__m128)v2u64_op0, (__m128)v2u64_op1);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0xff80000000000000, 0xff80000000000000};
v2u64_op1 = (v2u64){0x0000000000000000, 0x0000000000000000};
__m128i_result = (__m128i){0xffffff8000000000, 0xffffff8000000000};
__m128i_out = __lsx_vsubwod_w_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_vsubwod_w_h((__m128)v2u64_op0, (__m128)v2u64_op1);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0x00000000c2bac2c2, 0xfffffffffefefe6a};
v2u64_op1 = (v2u64){0x0000000000000000, 0x0000000000000000};
__m128i_result = (__m128i){0x00000000ffffc2ba, 0xfffffffffffffefe};
__m128i_out = __lsx_vsubwod_w_h((__m128)v2u64_op0, (__m128)v2u64_op1);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0x0000027f000000fe, 0x000000ff000000ff};
v2u64_op1 = (v2u64){0xfe80000000000001, 0x0000000000000000};
__m128i_result = (__m128i){0x0000018000000000, 0x0000000000000000};
__m128i_out = __lsx_vsubwod_w_h((__m128)v2u64_op0, (__m128)v2u64_op1);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0x00000000ffff7a53, 0x0000000000001f0a};
v2u64_op1 = (v2u64){0x0000000000000000, 0x0000000000000000};
__m128i_result = (__m128i){0x00000000ffffffff, 0x0000000000000000};
__m128i_out = __lsx_vsubwod_w_h((__m128)v2u64_op0, (__m128)v2u64_op1);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0x000000ff0000ff86, 0x0000000000000000};
v2u64_op1 = (v2u64){0x061202bffb141c38, 0xffa6ff91fdd8ef77};
__m128i_result = (__m128i){0xfffff9ee000004ec, 0x0000005a00000228};
__m128i_out = __lsx_vsubwod_w_h((__m128)v2u64_op0, (__m128)v2u64_op1);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0x000000001fe02000, 0x0000000000002000};
v2u64_op1 = (v2u64){0x000000001fe02000, 0x0000000000002000};
__m128i_result = (__m128i){0x0000000000000000, 0x0000000000000000};
__m128i_out = __lsx_vsubwod_w_h((__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){0xffffffffffffffff, 0xffffffffffffffff};
__m128i_result = (__m128i){0x0000000000000000, 0x0000000000000000};
__m128i_out = __lsx_vsubwod_w_h((__m128)v2u64_op0, (__m128)v2u64_op1);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0x020310d0c0030220, 0x30eb020302101b03};
v2u64_op1 = (v2u64){0x00000000c0dec4ca, 0x0000000002345454};
__m128i_result = (__m128i){0x00000203ffffff25, 0x000030ebffffffdc};
__m128i_out = __lsx_vsubwod_w_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){0x380fdfdfc0000000, 0x0000000000000000};
__m128i_result = (__m128i){0xffffc7f100004000, 0x0000000000000000};
__m128i_out = __lsx_vsubwod_w_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_vsubwod_w_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_vsubwod_d_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_vsubwod_d_w((__m128)v2u64_op0, (__m128)v2u64_op1);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0x00005dcbe7e830c0, 0x0000000000000000};
v2u64_op1 = (v2u64){0x000000000000e41b, 0x0000000015d926c7};
__m128i_result = (__m128i){0x0000000000005dcb, 0x0000000000000000};
__m128i_out = __lsx_vsubwod_d_w((__m128)v2u64_op0, (__m128)v2u64_op1);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0x0000000000000014, 0x0000000000000014};
v2u64_op1 = (v2u64){0x0000000000000000, 0x0000000000000000};
__m128i_result = (__m128i){0x0000000000000000, 0x0000000000000000};
__m128i_out = __lsx_vsubwod_d_w((__m128)v2u64_op0, (__m128)v2u64_op1);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0x00f000807000009e, 0x00f0008100800080};
v2u64_op1 = (v2u64){0x0003c853c843c87e, 0x0003c853c843c87e};
__m128i_result = (__m128i){0x0000000000ec382d, 0x0000000000ec382e};
__m128i_out = __lsx_vsubwod_d_w((__m128)v2u64_op0, (__m128)v2u64_op1);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0xfcfcfcfcfcfc0000, 0xfcfcfcfcfcfcfcfd};
v2u64_op1 = (v2u64){0x00009c7c00007176, 0x0000000000000000};
__m128i_result = (__m128i){0xfffffffffcfc6080, 0xfffffffffcfcfcfc};
__m128i_out = __lsx_vsubwod_d_w((__m128)v2u64_op0, (__m128)v2u64_op1);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0xbbc8ecc5f3ced5f3, 0xc0b4d1a5f8babad3};
v2u64_op1 = (v2u64){0xffaefffbffaefffb, 0xffaefffbffaefffb};
__m128i_result = (__m128i){0xffffffffbc19ecca, 0xffffffffc105d1aa};
__m128i_out = __lsx_vsubwod_d_w((__m128)v2u64_op0, (__m128)v2u64_op1);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0x0001000101fd01fe, 0x0001000100010001};
v2u64_op1 = (v2u64){0x0000000000fe00ff, 0x0000000000000000};
__m128i_result = (__m128i){0x0001000100010001, 0x0000000000000000};
__m128i_out = __lsx_vsubwod_q_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_vsubwod_q_d((__m128)v2u64_op0, (__m128)v2u64_op1);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0xfffff000fffff000, 0xfffff0000000ad3d};
v2u64_op1 = (v2u64){0x1000100010001000, 0x1000100010001000};
__m128i_result = (__m128i){0xefffdffff0009d3d, 0xffffffffffffffff};
__m128i_out = __lsx_vsubwod_q_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){0x0000ff0000000000, 0x000000ff000000ff};
__m128i_result = (__m128i){0xffffff00ffffff01, 0xffffffffffffffff};
__m128i_out = __lsx_vsubwod_q_d((__m128)v2u64_op0, (__m128)v2u64_op1);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0x0001000100010001, 0x000100010001007c};
v2u64_op1 = (v2u64){0x0000000000000000, 0x0000000000000000};
__m128i_result = (__m128i){0x000100010001007c, 0x0000000000000000};
__m128i_out = __lsx_vsubwod_q_d((__m128)v2u64_op0, (__m128)v2u64_op1);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0x7fff7fff7fff7fff, 0x5f675e96e29a5a60};
v2u64_op1 = (v2u64){0x7fff7fff7fff7fff, 0x00fe000100cf005f};
__m128i_result = (__m128i){0x5e695e95e1cb5a01, 0x0000000000000000};
__m128i_out = __lsx_vsubwod_q_d((__m128)v2u64_op0, (__m128)v2u64_op1);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0x7efefefe82010201, 0x0000000000000000};
v2u64_op1 = (v2u64){0x0000000000000000, 0x0000000000000000};
__m128i_result = (__m128i){0x0000000000000000, 0x0000000000000000};
__m128i_out = __lsx_vsubwod_q_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_vsubwod_q_d((__m128)v2u64_op0, (__m128)v2u64_op1);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
return 0;
}