blob: 91d1e93764108f2d468818f3fc1e63d07f145c88 [file] [log] [blame]
#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};
__m128i_result = (__m128i){0x0000000000000000, 0x0000000000000000};
__m128i_out = __lsx_vslei_b((__m128)v2u64_op0, -12);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0x0f000d200e000c20, 0x11000f2010000e20};
__m128i_result = (__m128i){0x0000000000000000, 0x0000000000000000};
__m128i_out = __lsx_vslei_b((__m128)v2u64_op0, -6);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0x0000000000000000, 0xffff0000ffff0000};
__m128i_result = (__m128i){0xffffffffffffffff, 0xffffffffffffffff};
__m128i_out = __lsx_vslei_b((__m128)v2u64_op0, 11);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0x0000000000200000, 0x0000000000200008};
__m128i_result = (__m128i){0xffffffffff00ffff, 0xffffffffff00ffff};
__m128i_out = __lsx_vslei_b((__m128)v2u64_op0, 11);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0x3a8000003a800000, 0x0000000000000000};
__m128i_result = (__m128i){0x00ffffff00ffffff, 0xffffffffffffffff};
__m128i_out = __lsx_vslei_b((__m128)v2u64_op0, 15);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0x0000000000000000, 0x0000000000000000};
__m128i_result = (__m128i){0xffffffffffffffff, 0xffffffffffffffff};
__m128i_out = __lsx_vslei_h((__m128)v2u64_op0, 3);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0x0000000000000000, 0x0000000000000000};
__m128i_result = (__m128i){0xffffffffffffffff, 0xffffffffffffffff};
__m128i_out = __lsx_vslei_h((__m128)v2u64_op0, 6);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0xffffffffffffffff, 0x0000000000000000};
__m128i_result = (__m128i){0xffffffffffffffff, 0xffffffffffffffff};
__m128i_out = __lsx_vslei_h((__m128)v2u64_op0, 10);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0x1111113111111121, 0x1111113111111141};
__m128i_result = (__m128i){0x0000000000000000, 0x0000000000000000};
__m128i_out = __lsx_vslei_h((__m128)v2u64_op0, -14);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0x0000000000000000, 0x0000000000000101};
__m128i_result = (__m128i){0x0000000000000000, 0x0000000000000000};
__m128i_out = __lsx_vslei_h((__m128)v2u64_op0, -16);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0x00000000000000ff, 0x0000ffff00008080};
__m128i_result = (__m128i){0x0000000000000000, 0x000000000000ffff};
__m128i_out = __lsx_vslei_h((__m128)v2u64_op0, -4);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0x9c4d53d855f89514, 0x31dc2cc1bc268c93};
__m128i_result = (__m128i){0xffff00000000ffff, 0x00000000ffffffff};
__m128i_out = __lsx_vslei_h((__m128)v2u64_op0, 13);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0x0000000000000000, 0xffffffffffffffff};
__m128i_result = (__m128i){0x0000000000000000, 0x0000000000000000};
__m128i_out = __lsx_vslei_h((__m128)v2u64_op0, -7);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0xffffffffffffffff, 0xffffffffffffffff};
__m128i_result = (__m128i){0xffffffffffffffff, 0xffffffffffffffff};
__m128i_out = __lsx_vslei_h((__m128)v2u64_op0, 14);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0x0000000000000000, 0x0000000000000000};
__m128i_result = (__m128i){0x0000000000000000, 0x0000000000000000};
__m128i_out = __lsx_vslei_h((__m128)v2u64_op0, -16);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0x0002000200000001, 0x0000000200000000};
__m128i_result = (__m128i){0xffffffffffffffff, 0xffffffffffffffff};
__m128i_out = __lsx_vslei_h((__m128)v2u64_op0, 7);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0x0000000000000000, 0x0000000000000000};
__m128i_result = (__m128i){0x0000000000000000, 0x0000000000000000};
__m128i_out = __lsx_vslei_h((__m128)v2u64_op0, -10);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0x0000000000000000, 0x0000000000000000};
__m128i_result = (__m128i){0xffffffffffffffff, 0xffffffffffffffff};
__m128i_out = __lsx_vslei_w((__m128)v2u64_op0, 0);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0x0000000000000000, 0x0000000000000000};
__m128i_result = (__m128i){0x0000000000000000, 0x0000000000000000};
__m128i_out = __lsx_vslei_w((__m128)v2u64_op0, -9);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0x3fc000003fc00000, 0x3fc000003fc00000};
__m128i_result = (__m128i){0x0000000000000000, 0x0000000000000000};
__m128i_out = __lsx_vslei_w((__m128)v2u64_op0, 1);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0x0000000000000000, 0x0000000000000000};
__m128i_result = (__m128i){0xffffffffffffffff, 0xffffffffffffffff};
__m128i_out = __lsx_vslei_w((__m128)v2u64_op0, 0);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0xffff6080ffff4417, 0xffffb96bffff57c9};
__m128i_result = (__m128i){0xffffffffffffffff, 0xffffffffffffffff};
__m128i_out = __lsx_vslei_w((__m128)v2u64_op0, -7);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0x5779108fdedda7e4, 0xd78cfd70b5f65d76};
__m128i_result = (__m128i){0x00000000ffffffff, 0xffffffffffffffff};
__m128i_out = __lsx_vslei_w((__m128)v2u64_op0, -16);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0x0000000000000000, 0x0000000000000000};
__m128i_result = (__m128i){0x0000000000000000, 0x0000000000000000};
__m128i_out = __lsx_vslei_w((__m128)v2u64_op0, -14);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0x7ff8000000000000, 0xffffffffffffffff};
__m128i_result = (__m128i){0x0000000000000000, 0xffffffffffffffff};
__m128i_out = __lsx_vslei_d((__m128)v2u64_op0, 7);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0x02693fe0e7beb077, 0x000000001fc1a568};
__m128i_result = (__m128i){0x0000000000000000, 0x0000000000000000};
__m128i_out = __lsx_vslei_d((__m128)v2u64_op0, -6);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0xffffffffffffffff, 0x0000000000000000};
__m128i_result = (__m128i){0x0000000000000000, 0x0000000000000000};
__m128i_out = __lsx_vslei_d((__m128)v2u64_op0, -4);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0x00ff000000000000, 0x00ff000000ff0000};
__m128i_result = (__m128i){0x0000000000000000, 0x0000000000000000};
__m128i_out = __lsx_vslei_d((__m128)v2u64_op0, 5);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0xffb9917a6e7fffff, 0xf1819b7c0732a6b6};
__m128i_result = (__m128i){0xffffffffffffffff, 0xffffffffffffffff};
__m128i_out = __lsx_vslei_d((__m128)v2u64_op0, 12);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0x0000000000000000, 0x0000000000000000};
__m128i_result = (__m128i){0xffffffffffffffff, 0xffffffffffffffff};
__m128i_out = __lsx_vslei_d((__m128)v2u64_op0, 12);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0xff00ffffffffffff, 0x0037ffc8d7ff2800};
__m128i_result = (__m128i){0xffffffffffffffff, 0x0000000000000000};
__m128i_out = __lsx_vslei_d((__m128)v2u64_op0, -9);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0x00000000ffffffff, 0x0000000000000000};
__m128i_result = (__m128i){0x0000000000000000, 0xffffffffffffffff};
__m128i_out = __lsx_vslei_d((__m128)v2u64_op0, 0);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0x0000000000000000, 0x0000000000000000};
__m128i_result = (__m128i){0x0000000000000000, 0x0000000000000000};
__m128i_out = __lsx_vslei_d((__m128)v2u64_op0, -14);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
v2u64_op0 = (v2u64){0xf03ef03ef03ef03e, 0xf03ef03ef03ef03e};
__m128i_result = (__m128i){0xffffffffffffffff, 0xffffffffffffffff};
__m128i_out = __lsx_vslei_d((__m128)v2u64_op0, -9);
check_lsx_out(&__m128i_result, &__m128i_out, sizeof(__m128i_out), __FILE__, __LINE__);
return 0;
}