Projects
home:lf14:branches:Mega:23.09
gcc
_service:tar_scm:LoongArch-Add-tests-for-ASX-ve...
Sign Up
Log In
Username
Password
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File _service:tar_scm:LoongArch-Add-tests-for-ASX-vector-xvfcmp-caf-ceq-cl.patch of Package gcc
From ab8716fe8109c738ac02b641160350d2b351466b Mon Sep 17 00:00:00 2001 From: Xiaolong Chen <chenxiaolong@loongson.cn> Date: Tue, 12 Sep 2023 16:45:33 +0800 Subject: [PATCH 116/124] LoongArch: Add tests for ASX vector xvfcmp{caf/ceq/cle/clt/cne/cor/cun} instructions. gcc/testsuite/ChangeLog: * gcc.target/loongarch/vector/lasx/lasx-xvfcmp_caf_s.c: New test. * gcc.target/loongarch/vector/lasx/lasx-xvfcmp_ceq_s.c: New test. * gcc.target/loongarch/vector/lasx/lasx-xvfcmp_cle_s.c: New test. * gcc.target/loongarch/vector/lasx/lasx-xvfcmp_clt_s.c: New test. * gcc.target/loongarch/vector/lasx/lasx-xvfcmp_cne_s.c: New test. * gcc.target/loongarch/vector/lasx/lasx-xvfcmp_cor_s.c: New test. * gcc.target/loongarch/vector/lasx/lasx-xvfcmp_cun_s.c: New test. Signed-off-by: Peng Fan <fanpeng@loongson.cn> Signed-off-by: ticat_fp <fanpeng@loongson.cn> --- .../loongarch/vector/lasx/lasx-xvfcmp_caf_s.c | 446 ++++++++ .../loongarch/vector/lasx/lasx-xvfcmp_ceq_s.c | 977 ++++++++++++++++++ .../loongarch/vector/lasx/lasx-xvfcmp_cle_s.c | 759 ++++++++++++++ .../loongarch/vector/lasx/lasx-xvfcmp_clt_s.c | 675 ++++++++++++ .../loongarch/vector/lasx/lasx-xvfcmp_cne_s.c | 872 ++++++++++++++++ .../loongarch/vector/lasx/lasx-xvfcmp_cor_s.c | 340 ++++++ .../loongarch/vector/lasx/lasx-xvfcmp_cun_s.c | 361 +++++++ 7 files changed, 4430 insertions(+) create mode 100644 gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_caf_s.c create mode 100644 gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_ceq_s.c create mode 100644 gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_cle_s.c create mode 100644 gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_clt_s.c create mode 100644 gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_cne_s.c create mode 100644 gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_cor_s.c create mode 100644 gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_cun_s.c diff --git a/gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_caf_s.c b/gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_caf_s.c new file mode 100644 index 000000000..fa3372358 --- /dev/null +++ b/gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_caf_s.c @@ -0,0 +1,446 @@ +/* { dg-do run } */ +/* { dg-options "-mlasx -w -fno-strict-aliasing" } */ +#include "../simd_correctness_check.h" +#include <lasxintrin.h> + +int +main () +{ + __m256i __m256i_op0, __m256i_op1, __m256i_op2, __m256i_out, __m256i_result; + __m256 __m256_op0, __m256_op1, __m256_op2, __m256_out, __m256_result; + __m256d __m256d_op0, __m256d_op1, __m256d_op2, __m256d_out, __m256d_result; + + int int_op0, int_op1, int_op2, int_out, int_result, i = 1, fail; + long int long_op0, long_op1, long_op2, lont_out, lont_result; + 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; + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_caf_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_caf_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0xff56ff55; + *((int *)&__m256_op0[4]) = 0xff01ff01; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0xff56ff55; + *((int *)&__m256_op0[0]) = 0xff01ff01; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x0000abff; + *((int *)&__m256_op1[4]) = 0x0000abff; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x0000abff; + *((int *)&__m256_op1[0]) = 0x0000abff; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_caf_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000001; + *((int *)&__m256_op0[4]) = 0x0000000a; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000001; + *((int *)&__m256_op0[0]) = 0x0000000a; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000040; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000040; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_caf_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x5d20a0a1; + *((int *)&__m256_op1[6]) = 0x5d20a0a1; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x5d20a0a1; + *((int *)&__m256_op1[2]) = 0x5d20a0a1; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_caf_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x0003ffff; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_caf_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0xffff8000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0xffff8000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0xffff8000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0xffff8000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0xffffffff; + *((int *)&__m256_op1[6]) = 0xffffffff; + *((int *)&__m256_op1[5]) = 0xffffffff; + *((int *)&__m256_op1[4]) = 0xffffffff; + *((int *)&__m256_op1[3]) = 0xffffffff; + *((int *)&__m256_op1[2]) = 0xffffffff; + *((int *)&__m256_op1[1]) = 0xffffffff; + *((int *)&__m256_op1[0]) = 0xffffffff; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_caf_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0xffffffff; + *((int *)&__m256_op0[6]) = 0xffffffff; + *((int *)&__m256_op0[5]) = 0xe07de080; + *((int *)&__m256_op0[4]) = 0x1f20607a; + *((int *)&__m256_op0[3]) = 0xffffffff; + *((int *)&__m256_op0[2]) = 0xffffffff; + *((int *)&__m256_op0[1]) = 0xe07de080; + *((int *)&__m256_op0[0]) = 0x1f20607a; + *((int *)&__m256_op1[7]) = 0xffffffff; + *((int *)&__m256_op1[6]) = 0xffffffff; + *((int *)&__m256_op1[5]) = 0xe07de080; + *((int *)&__m256_op1[4]) = 0x1f20607a; + *((int *)&__m256_op1[3]) = 0xffffffff; + *((int *)&__m256_op1[2]) = 0xffffffff; + *((int *)&__m256_op1[1]) = 0xe07de080; + *((int *)&__m256_op1[0]) = 0x1f20607a; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_caf_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0xffffffff; + *((int *)&__m256_op1[6]) = 0xffffffff; + *((int *)&__m256_op1[5]) = 0xe07de080; + *((int *)&__m256_op1[4]) = 0x1f20607a; + *((int *)&__m256_op1[3]) = 0xffffffff; + *((int *)&__m256_op1[2]) = 0xffffffff; + *((int *)&__m256_op1[1]) = 0xe07de080; + *((int *)&__m256_op1[0]) = 0x1f20607a; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_caf_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0xffffffff; + *((int *)&__m256_op0[6]) = 0xffffffff; + *((int *)&__m256_op0[5]) = 0xffffffff; + *((int *)&__m256_op0[4]) = 0xffffffff; + *((int *)&__m256_op0[3]) = 0xffffffff; + *((int *)&__m256_op0[2]) = 0xffffffff; + *((int *)&__m256_op0[1]) = 0xffffffff; + *((int *)&__m256_op0[0]) = 0xffffffff; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_caf_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000010; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000010; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0xffffffff; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0xffffffff; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_caf_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0xffffffff; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0xffffffff; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0xffffffff; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0xffffffff; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_caf_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op0[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op0[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op0[0]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[3]) = 0xa5a5a5a5a5a5a5a5; + *((unsigned long *)&__m256d_op1[2]) = 0xa5a5a5a5a5a99e03; + *((unsigned long *)&__m256d_op1[1]) = 0xa5a5a5a5a5a5a5a5; + *((unsigned long *)&__m256d_op1[0]) = 0xa5a5a5a5a5a99e03; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_caf_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000045; + *((unsigned long *)&__m256d_op0[2]) = 0x00000000000d0005; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000045; + *((unsigned long *)&__m256d_op0[0]) = 0x00000000000d0005; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000045; + *((unsigned long *)&__m256d_op1[2]) = 0x00000000000d0005; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000045; + *((unsigned long *)&__m256d_op1[0]) = 0x00000000000d0005; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_caf_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op0[2]) = 0x24342434ffff2435; + *((unsigned long *)&__m256d_op0[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op0[0]) = 0x24342434ffff2435; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_caf_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x00003fe000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x00003fe000000000; + *((unsigned long *)&__m256d_op1[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_caf_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_caf_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000002; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000002; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000002; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000002; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_caf_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_caf_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000013; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000013; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000013; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000013; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_caf_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0xfffeb664007ffd61; + *((unsigned long *)&__m256d_op0[2]) = 0xfffe97a1df5b41b0; + *((unsigned long *)&__m256d_op0[1]) = 0xfffeb664007ffd61; + *((unsigned long *)&__m256d_op0[0]) = 0xfffe97a1df5b41b0; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_caf_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_caf_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + return 0; +} diff --git a/gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_ceq_s.c b/gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_ceq_s.c new file mode 100644 index 000000000..6d6649f6f --- /dev/null +++ b/gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_ceq_s.c @@ -0,0 +1,977 @@ +/* { dg-do run } */ +/* { dg-options "-mlasx -w -fno-strict-aliasing" } */ +#include "../simd_correctness_check.h" +#include <lasxintrin.h> + +int +main () +{ + __m256i __m256i_op0, __m256i_op1, __m256i_op2, __m256i_out, __m256i_result; + __m256 __m256_op0, __m256_op1, __m256_op2, __m256_out, __m256_result; + __m256d __m256d_op0, __m256d_op1, __m256d_op2, __m256d_out, __m256d_result; + + int int_op0, int_op1, int_op2, int_out, int_result, i = 1, fail; + long int long_op0, long_op1, long_op2, lont_out, lont_result; + 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; + + *((int *)&__m256_op0[7]) = 0x00010101; + *((int *)&__m256_op0[6]) = 0x01010101; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00010100; + *((int *)&__m256_op0[1]) = 0x00010000; + *((int *)&__m256_op0[0]) = 0x01000100; + *((int *)&__m256_op1[7]) = 0xffffffff; + *((int *)&__m256_op1[6]) = 0xffffffff; + *((int *)&__m256_op1[5]) = 0xffffffff; + *((int *)&__m256_op1[4]) = 0xbf7f7fff; + *((int *)&__m256_op1[3]) = 0xffffffff; + *((int *)&__m256_op1[2]) = 0xffffffff; + *((int *)&__m256_op1[1]) = 0xffffffff; + *((int *)&__m256_op1[0]) = 0xe651bfff; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_ceq_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_ceq_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x000000ff; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x000000ff; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x0000ffff; + *((int *)&__m256_op1[6]) = 0xc0008001; + *((int *)&__m256_op1[5]) = 0x0000ffff; + *((int *)&__m256_op1[4]) = 0xc0008001; + *((int *)&__m256_op1[3]) = 0x0000ffff; + *((int *)&__m256_op1[2]) = 0xc0008001; + *((int *)&__m256_op1[1]) = 0x0000ffff; + *((int *)&__m256_op1[0]) = 0xc0008001; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_ceq_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_ceq_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0xffc6ffc6; + *((int *)&__m256_op0[6]) = 0x003a003a; + *((int *)&__m256_op0[5]) = 0xffffffff; + *((int *)&__m256_op0[4]) = 0xffffffff; + *((int *)&__m256_op0[3]) = 0xffc6ffc6; + *((int *)&__m256_op0[2]) = 0x003a003a; + *((int *)&__m256_op0[1]) = 0xffffffff; + *((int *)&__m256_op0[0]) = 0xffffffff; + *((int *)&__m256_op1[7]) = 0x71717171; + *((int *)&__m256_op1[6]) = 0x71010101; + *((int *)&__m256_op1[5]) = 0x8e8e8e8e; + *((int *)&__m256_op1[4]) = 0x8f00ffff; + *((int *)&__m256_op1[3]) = 0x71717171; + *((int *)&__m256_op1[2]) = 0x71010101; + *((int *)&__m256_op1[1]) = 0x8e8e8e8e; + *((int *)&__m256_op1[0]) = 0x8f00ffff; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_ceq_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x000e000e; + *((int *)&__m256_op1[4]) = 0x000e000e; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x000e000e; + *((int *)&__m256_op1[0]) = 0x000e000e; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_ceq_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000043; + *((int *)&__m256_op0[4]) = 0x0207f944; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000043; + *((int *)&__m256_op0[0]) = 0x0207f944; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_ceq_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x00000001; + *((int *)&__m256_op1[6]) = 0x9ffdf403; + *((int *)&__m256_op1[5]) = 0x00000001; + *((int *)&__m256_op1[4]) = 0x1ffd97c3; + *((int *)&__m256_op1[3]) = 0x00000001; + *((int *)&__m256_op1[2]) = 0x9ffdf403; + *((int *)&__m256_op1[1]) = 0x00000001; + *((int *)&__m256_op1[0]) = 0x1ffd97c3; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_ceq_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x7fff7fff; + *((int *)&__m256_op0[4]) = 0x7fff7fff; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x7fff7fff; + *((int *)&__m256_op0[0]) = 0x7fff7fff; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cueq_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000808; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffff00000000; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cueq_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0xbea2e127; + *((int *)&__m256_op1[6]) = 0xc046721f; + *((int *)&__m256_op1[5]) = 0x1729c073; + *((int *)&__m256_op1[4]) = 0x816edebe; + *((int *)&__m256_op1[3]) = 0xde91f010; + *((int *)&__m256_op1[2]) = 0x000006f9; + *((int *)&__m256_op1[1]) = 0x5ef1f90e; + *((int *)&__m256_op1[0]) = 0xfefaf30d; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cueq_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000200; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000200; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000200; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000200; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000009; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000009; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000009; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000009; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cueq_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0xffb80000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0xffb80000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cueq_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x0000ffff; + *((int *)&__m256_op0[6]) = 0x0000ffff; + *((int *)&__m256_op0[5]) = 0x0000ffff; + *((int *)&__m256_op0[4]) = 0x0000ffff; + *((int *)&__m256_op0[3]) = 0x0000ffff; + *((int *)&__m256_op0[2]) = 0x0000ffff; + *((int *)&__m256_op0[1]) = 0x0000ffff; + *((int *)&__m256_op0[0]) = 0x0000ffff; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cueq_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0xfff0fff0; + *((int *)&__m256_op0[6]) = 0xff01ff01; + *((int *)&__m256_op0[5]) = 0xfff0fff0; + *((int *)&__m256_op0[4]) = 0xfff0fff0; + *((int *)&__m256_op0[3]) = 0xfff0fff0; + *((int *)&__m256_op0[2]) = 0xff01ff01; + *((int *)&__m256_op0[1]) = 0xfff0fff0; + *((int *)&__m256_op0[0]) = 0xfff0fff0; + *((int *)&__m256_op1[7]) = 0xffefffef; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0xffefffef; + *((int *)&__m256_op1[4]) = 0xffefffef; + *((int *)&__m256_op1[3]) = 0xffefffef; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0xffefffef; + *((int *)&__m256_op1[0]) = 0xffefffef; + *((unsigned long *)&__m256i_result[3]) = 0xffffffff00000000; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffff00000000; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cueq_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x0000ffb1; + *((int *)&__m256_op1[6]) = 0x0001ff8f; + *((int *)&__m256_op1[5]) = 0x0001004c; + *((int *)&__m256_op1[4]) = 0x0001ff87; + *((int *)&__m256_op1[3]) = 0x0000ffb1; + *((int *)&__m256_op1[2]) = 0x0001ff8f; + *((int *)&__m256_op1[1]) = 0x0001004c; + *((int *)&__m256_op1[0]) = 0x0001ff87; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cueq_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x00010001; + *((int *)&__m256_op1[6]) = 0x00010001; + *((int *)&__m256_op1[5]) = 0x00010001; + *((int *)&__m256_op1[4]) = 0x00010001; + *((int *)&__m256_op1[3]) = 0x00010001; + *((int *)&__m256_op1[2]) = 0x00010001; + *((int *)&__m256_op1[1]) = 0x00010001; + *((int *)&__m256_op1[0]) = 0x00010001; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cueq_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0xffff0000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0xffff0000; + *((int *)&__m256_op0[4]) = 0xffff0000; + *((int *)&__m256_op0[3]) = 0xffff0000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0xffff0000; + *((int *)&__m256_op0[0]) = 0xffff0000; + *((int *)&__m256_op1[7]) = 0x007f8080; + *((int *)&__m256_op1[6]) = 0x007f007f; + *((int *)&__m256_op1[5]) = 0x007f8080; + *((int *)&__m256_op1[4]) = 0x007f007f; + *((int *)&__m256_op1[3]) = 0x007f8080; + *((int *)&__m256_op1[2]) = 0x007f007f; + *((int *)&__m256_op1[1]) = 0x007f8080; + *((int *)&__m256_op1[0]) = 0x007f007f; + *((unsigned long *)&__m256i_result[3]) = 0xffffffff00000000; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffff00000000; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cueq_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000033; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000033; + *((int *)&__m256_op1[7]) = 0x00004200; + *((int *)&__m256_op1[6]) = 0x80000000; + *((int *)&__m256_op1[5]) = 0x5fff5fff; + *((int *)&__m256_op1[4]) = 0x607f0000; + *((int *)&__m256_op1[3]) = 0x00004200; + *((int *)&__m256_op1[2]) = 0x80000000; + *((int *)&__m256_op1[1]) = 0x5fff5fff; + *((int *)&__m256_op1[0]) = 0x607f0000; + *((unsigned long *)&__m256i_result[3]) = 0x00000000ffffffff; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x00000000ffffffff; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cueq_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x7fff8000; + *((int *)&__m256_op1[6]) = 0x7fff0000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00008000; + *((int *)&__m256_op1[3]) = 0x7fff8000; + *((int *)&__m256_op1[2]) = 0x7fff0000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00008000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffff00000000; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffff00000000; + __m256i_out = __lasx_xvfcmp_cueq_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cueq_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x0000ffff; + *((int *)&__m256_op0[4]) = 0x0000ffff; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x0000ffff; + *((int *)&__m256_op0[0]) = 0x0000ffff; + *((int *)&__m256_op1[7]) = 0x00100010; + *((int *)&__m256_op1[6]) = 0x00030000; + *((int *)&__m256_op1[5]) = 0x00100010; + *((int *)&__m256_op1[4]) = 0x00030000; + *((int *)&__m256_op1[3]) = 0x00100010; + *((int *)&__m256_op1[2]) = 0x00030000; + *((int *)&__m256_op1[1]) = 0x00100010; + *((int *)&__m256_op1[0]) = 0x00030000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cueq_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cueq_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cueq_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0xf90c0c0c00000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0ca40c0c0c0c0cc0; + *((unsigned long *)&__m256d_op0[1]) = 0x0c0c0c0c0cb60cc0; + *((unsigned long *)&__m256d_op0[0]) = 0xfbe0b80c960c96d0; + *((unsigned long *)&__m256d_op1[3]) = 0x1b9763952fc4c101; + *((unsigned long *)&__m256d_op1[2]) = 0xe37affb42fc05f69; + *((unsigned long *)&__m256d_op1[1]) = 0x18b988e64facb558; + *((unsigned long *)&__m256d_op1[0]) = 0xe5fb66c81da8e5bb; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_ceq_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_ceq_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x001e001ea1bfa1bf; + *((unsigned long *)&__m256d_op0[2]) = 0x001e001e83e5422e; + *((unsigned long *)&__m256d_op0[1]) = 0x001e001ea1bfa1bf; + *((unsigned long *)&__m256d_op0[0]) = 0x011f011f0244420e; + *((unsigned long *)&__m256d_op1[3]) = 0xfffe00f7ffffffff; + *((unsigned long *)&__m256d_op1[2]) = 0xfffffffffff629d7; + *((unsigned long *)&__m256d_op1[1]) = 0xfffe00f7ffffffff; + *((unsigned long *)&__m256d_op1[0]) = 0xfffffffffff629d7; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_ceq_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000200; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000200; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000200; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000200; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_ceq_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_ceq_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op0[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op0[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op0[0]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[0]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_ceq_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x000000000007ffff; + *((unsigned long *)&__m256d_op0[2]) = 0x000000000007ffff; + *((unsigned long *)&__m256d_op0[1]) = 0x000000000007ffff; + *((unsigned long *)&__m256d_op0[0]) = 0x000000000007ffff; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_ceq_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0xfc003802fc000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0xfc003802fc000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0x7fffffff7fffffff; + *((unsigned long *)&__m256d_op1[2]) = 0x7ffffffffffffffe; + *((unsigned long *)&__m256d_op1[1]) = 0x7fffffff7fffffff; + *((unsigned long *)&__m256d_op1[0]) = 0x7ffffffffffffffe; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_ceq_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0x6018000000000cd1; + *((unsigned long *)&__m256d_op1[2]) = 0x6040190d00000000; + *((unsigned long *)&__m256d_op1[1]) = 0x6018000000000cd1; + *((unsigned long *)&__m256d_op1[0]) = 0x6040190d00000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_ceq_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x3eab77367fff4848; + *((unsigned long *)&__m256d_op0[2]) = 0x408480007fff0000; + *((unsigned long *)&__m256d_op0[1]) = 0x3eab77367fff4848; + *((unsigned long *)&__m256d_op0[0]) = 0x408480007fff0000; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_ceq_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_ceq_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x41dffbffffffffff; + *((unsigned long *)&__m256d_op0[2]) = 0xffffff00ff800000; + *((unsigned long *)&__m256d_op0[1]) = 0x41dffbffffffffff; + *((unsigned long *)&__m256d_op0[0]) = 0xffffff00ff800000; + *((unsigned long *)&__m256d_op1[3]) = 0xffe6ffe6e6800001; + *((unsigned long *)&__m256d_op1[2]) = 0x19660019ff806680; + *((unsigned long *)&__m256d_op1[1]) = 0xffe6ffe6e6800001; + *((unsigned long *)&__m256d_op1[0]) = 0x19660019ff806680; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_ceq_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x1c1c1c1c1c1c1c1c; + *((unsigned long *)&__m256d_op0[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op0[1]) = 0x1c1c1c1c1c1c1c1c; + *((unsigned long *)&__m256d_op0[0]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[0]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_ceq_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x00000000ffffffff; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x00000000ffffffff; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_ceq_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0x0000010100000101; + *((unsigned long *)&__m256d_op1[2]) = 0x0000010100000101; + *((unsigned long *)&__m256d_op1[1]) = 0x0000010100000101; + *((unsigned long *)&__m256d_op1[0]) = 0x0000010100000101; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_ceq_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000001000000010; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000001000000010; + *((unsigned long *)&__m256d_op1[3]) = 0x45d5555545d55555; + *((unsigned long *)&__m256d_op1[2]) = 0x74555555e8aaaaaa; + *((unsigned long *)&__m256d_op1[1]) = 0x45d5555545d55555; + *((unsigned long *)&__m256d_op1[0]) = 0x74555555e8aaaaaa; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cueq_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[0]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cueq_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0xfffffffffffffff6; + *((unsigned long *)&__m256d_op1[2]) = 0xfffffffffffffff6; + *((unsigned long *)&__m256d_op1[1]) = 0xfffffffffffffff6; + *((unsigned long *)&__m256d_op1[0]) = 0xfffffffffffffff6; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cueq_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op0[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op0[1]) = 0x00000000ffffffff; + *((unsigned long *)&__m256d_op0[0]) = 0xffffffff00000000; + *((unsigned long *)&__m256d_op1[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[1]) = 0x00000000ffffffff; + *((unsigned long *)&__m256d_op1[0]) = 0xffffffff00000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cueq_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cueq_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0003030300000300; + *((unsigned long *)&__m256d_op0[2]) = 0x0003030300000300; + *((unsigned long *)&__m256d_op0[1]) = 0x0003030300000100; + *((unsigned long *)&__m256d_op0[0]) = 0x0003030300000100; + *((unsigned long *)&__m256d_op1[3]) = 0x0000ffff0000ffff; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000ffff0000ffff; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cueq_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0xffffffffffff0000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0xffffffffffff0000; + *((unsigned long *)&__m256d_op1[3]) = 0x3eab77367fff4848; + *((unsigned long *)&__m256d_op1[2]) = 0x408480007fff0000; + *((unsigned long *)&__m256d_op1[1]) = 0x3eab77367fff4848; + *((unsigned long *)&__m256d_op1[0]) = 0x408480007fff0000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cueq_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cueq_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op0[2]) = 0xffffffff0007a861; + *((unsigned long *)&__m256d_op0[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op0[0]) = 0xffffffff0007a861; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cueq_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cueq_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0x0000007f00000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000007f00000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000007f00000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000007f00000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cueq_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0xfffffefffffffeff; + *((unsigned long *)&__m256d_op0[2]) = 0xfffffefffffffeff; + *((unsigned long *)&__m256d_op0[1]) = 0xfffffefffffffeff; + *((unsigned long *)&__m256d_op0[0]) = 0xfffffefffffffeff; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cueq_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + return 0; +} diff --git a/gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_cle_s.c b/gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_cle_s.c new file mode 100644 index 000000000..a64dd7598 --- /dev/null +++ b/gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_cle_s.c @@ -0,0 +1,759 @@ +/* { dg-do run } */ +/* { dg-options "-mlasx -w -fno-strict-aliasing" } */ +#include "../simd_correctness_check.h" +#include <lasxintrin.h> + +int +main () +{ + __m256i __m256i_op0, __m256i_op1, __m256i_op2, __m256i_out, __m256i_result; + __m256 __m256_op0, __m256_op1, __m256_op2, __m256_out, __m256_result; + __m256d __m256d_op0, __m256d_op1, __m256d_op2, __m256d_out, __m256d_result; + + int int_op0, int_op1, int_op2, int_out, int_result, i = 1, fail; + long int long_op0, long_op1, long_op2, lont_out, lont_result; + 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; + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x0018796d; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0xffffffff; + *((int *)&__m256_op1[6]) = 0xffffffff; + *((int *)&__m256_op1[5]) = 0xffffffff; + *((int *)&__m256_op1[4]) = 0xffffffff; + *((int *)&__m256_op1[3]) = 0xffffffff; + *((int *)&__m256_op1[2]) = 0xffffffff; + *((int *)&__m256_op1[1]) = 0xffffffff; + *((int *)&__m256_op1[0]) = 0xffffffff; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cle_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00fffb04; + *((int *)&__m256_op0[6]) = 0x02fddf20; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00fffb04; + *((int *)&__m256_op0[2]) = 0x02fddf20; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x41dfffc0; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x41dfffdf; + *((int *)&__m256_op1[2]) = 0xffc00000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffff00000000; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffff00000000; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cle_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0xffffffff; + *((int *)&__m256_op1[6]) = 0xffffffee; + *((int *)&__m256_op1[5]) = 0xffffffff; + *((int *)&__m256_op1[4]) = 0xffffffee; + *((int *)&__m256_op1[3]) = 0xffffffff; + *((int *)&__m256_op1[2]) = 0xffffffee; + *((int *)&__m256_op1[1]) = 0xffffffff; + *((int *)&__m256_op1[0]) = 0xffffffee; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cle_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cle_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0xffffffff; + *((int *)&__m256_op1[6]) = 0xffffffff; + *((int *)&__m256_op1[5]) = 0xffffffff; + *((int *)&__m256_op1[4]) = 0xffffffff; + *((int *)&__m256_op1[3]) = 0xffffffff; + *((int *)&__m256_op1[2]) = 0xffffffff; + *((int *)&__m256_op1[1]) = 0xffffffff; + *((int *)&__m256_op1[0]) = 0xffffffff; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cle_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cle_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x01fe007a; + *((int *)&__m256_op0[6]) = 0x01c40110; + *((int *)&__m256_op0[5]) = 0x019d00a2; + *((int *)&__m256_op0[4]) = 0x0039fff9; + *((int *)&__m256_op0[3]) = 0x01fe007a; + *((int *)&__m256_op0[2]) = 0x01c40110; + *((int *)&__m256_op0[1]) = 0x019d00a2; + *((int *)&__m256_op0[0]) = 0x003a0000; + *((int *)&__m256_op1[7]) = 0x0000fffe; + *((int *)&__m256_op1[6]) = 0x00800022; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0xffffffff; + *((int *)&__m256_op1[3]) = 0x0000fffe; + *((int *)&__m256_op1[2]) = 0x00800022; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0xffffffff; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cle_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000001; + *((int *)&__m256_op0[5]) = 0x7fff7ffe; + *((int *)&__m256_op0[4]) = 0xffffffff; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000001; + *((int *)&__m256_op0[1]) = 0x7fff7ffe; + *((int *)&__m256_op0[0]) = 0xffffffff; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000002; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000002; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000002; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000002; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cle_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x04000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x04000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x04000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x04000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cle_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000040; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000040; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffff00000000; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffff00000000; + __m256i_out = __lasx_xvfcmp_cle_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cle_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0xffffffff; + *((int *)&__m256_op0[6]) = 0xffffffff; + *((int *)&__m256_op0[5]) = 0xffffffff; + *((int *)&__m256_op0[4]) = 0xffffffff; + *((int *)&__m256_op0[3]) = 0xffffffff; + *((int *)&__m256_op0[2]) = 0xffffffff; + *((int *)&__m256_op0[1]) = 0xffffffff; + *((int *)&__m256_op0[0]) = 0xffffffff; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00010001; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00010001; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00010001; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00010001; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cle_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0xffffffff; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0xffffffff; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0x00000000ffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0x00000000ffffffff; + __m256i_out = __lasx_xvfcmp_cle_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x7fffffff7fffffff; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x000000007fffffff; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cle_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0xe161616161614e60; + *((unsigned long *)&__m256d_op0[2]) = 0xe161616161614e60; + *((unsigned long *)&__m256d_op0[1]) = 0xe161616161614e60; + *((unsigned long *)&__m256d_op0[0]) = 0xe161616161614e60; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cle_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000007773; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000003373; + *((unsigned long *)&__m256d_op1[3]) = 0x1616161616161616; + *((unsigned long *)&__m256d_op1[2]) = 0x161616167fffffff; + *((unsigned long *)&__m256d_op1[1]) = 0x7ffe16167f161616; + *((unsigned long *)&__m256d_op1[0]) = 0x161616167fffffff; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cle_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0xffffcc8000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x000000007dfdff4b; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0xbabababababababa; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0xbabababababababa; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cle_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000002a54290; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000002a54290; + *((unsigned long *)&__m256d_op1[3]) = 0x0101010183f9999b; + *((unsigned long *)&__m256d_op1[2]) = 0x0101010101010101; + *((unsigned long *)&__m256d_op1[1]) = 0x01010101d58f43c9; + *((unsigned long *)&__m256d_op1[0]) = 0x0101010101010101; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cle_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000ffff00000001; + *((unsigned long *)&__m256d_op0[2]) = 0x1010100f10100fd4; + *((unsigned long *)&__m256d_op0[1]) = 0x0000ffff00000001; + *((unsigned long *)&__m256d_op0[0]) = 0x1010100f10100fd4; + *((unsigned long *)&__m256d_op1[3]) = 0x0001000100010001; + *((unsigned long *)&__m256d_op1[2]) = 0x0001000100010001; + *((unsigned long *)&__m256d_op1[1]) = 0x0001000100010001; + *((unsigned long *)&__m256d_op1[0]) = 0x0001000100010001; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cle_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cle_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x00000000ffffffff; + *((unsigned long *)&__m256d_op0[2]) = 0x0100000001000100; + *((unsigned long *)&__m256d_op0[1]) = 0x00000000ffffffff; + *((unsigned long *)&__m256d_op0[0]) = 0x0100000001000100; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cle_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000002070145; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000002070145; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cle_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cle_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op0[2]) = 0xffffffff0007a861; + *((unsigned long *)&__m256d_op0[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op0[0]) = 0xffffffff0007a861; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000003; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000003; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000003; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000003; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cle_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x1b976395; + *((int *)&__m256_op0[6]) = 0x2fc4c101; + *((int *)&__m256_op0[5]) = 0xe37affb4; + *((int *)&__m256_op0[4]) = 0x2fc05f69; + *((int *)&__m256_op0[3]) = 0x18b988e6; + *((int *)&__m256_op0[2]) = 0x4facb558; + *((int *)&__m256_op0[1]) = 0xe5fb66c8; + *((int *)&__m256_op0[0]) = 0x1da8e5bb; + *((int *)&__m256_op1[7]) = 0x01a72334; + *((int *)&__m256_op1[6]) = 0xffff00ff; + *((int *)&__m256_op1[5]) = 0xff4f6838; + *((int *)&__m256_op1[4]) = 0xff937648; + *((int *)&__m256_op1[3]) = 0x00a2afb7; + *((int *)&__m256_op1[2]) = 0xfff00ecb; + *((int *)&__m256_op1[1]) = 0xffce110f; + *((int *)&__m256_op1[0]) = 0x004658c7; + *((unsigned long *)&__m256i_result[3]) = 0x00000000ffffffff; + *((unsigned long *)&__m256i_result[2]) = 0x00000000ffffffff; + *((unsigned long *)&__m256i_result[1]) = 0x00000000ffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffff00000000; + __m256i_out = __lasx_xvfcmp_cule_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0xffffffff; + *((int *)&__m256_op0[4]) = 0x00001000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0xffffffff; + *((int *)&__m256_op0[0]) = 0x00001000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffff00000000; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffff00000000; + __m256i_out = __lasx_xvfcmp_cule_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cule_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x0000ff00; + *((int *)&__m256_op0[6]) = 0x0000ffff; + *((int *)&__m256_op0[5]) = 0x000000ff; + *((int *)&__m256_op0[4]) = 0x000000ff; + *((int *)&__m256_op0[3]) = 0x0000ff00; + *((int *)&__m256_op0[2]) = 0x0000ffff; + *((int *)&__m256_op0[1]) = 0x000000ff; + *((int *)&__m256_op0[0]) = 0x000000ff; + *((int *)&__m256_op1[7]) = 0x0000ffee; + *((int *)&__m256_op1[6]) = 0x0000ff4c; + *((int *)&__m256_op1[5]) = 0x0000ff05; + *((int *)&__m256_op1[4]) = 0x0000ff3c; + *((int *)&__m256_op1[3]) = 0x0000fff9; + *((int *)&__m256_op1[2]) = 0x0000ff78; + *((int *)&__m256_op1[1]) = 0x0000ffa8; + *((int *)&__m256_op1[0]) = 0x0000ff31; + *((unsigned long *)&__m256i_result[3]) = 0xffffffff00000000; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffff00000000; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cule_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0xffffffff; + *((int *)&__m256_op1[6]) = 0xffffffff; + *((int *)&__m256_op1[5]) = 0xffff0000; + *((int *)&__m256_op1[4]) = 0xffff0000; + *((int *)&__m256_op1[3]) = 0xffffffff; + *((int *)&__m256_op1[2]) = 0xffffffff; + *((int *)&__m256_op1[1]) = 0xffff0000; + *((int *)&__m256_op1[0]) = 0xffff0000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cule_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x0000ff01; + *((int *)&__m256_op0[6]) = 0x00ff0000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x0000ff01; + *((int *)&__m256_op0[3]) = 0x0000ff01; + *((int *)&__m256_op0[2]) = 0x00ff0000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x0000ff01; + *((int *)&__m256_op1[7]) = 0xffffffff; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0xffffffff; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0xffffffff; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0xffffffff; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffff00000000; + *((unsigned long *)&__m256i_result[2]) = 0xffffffff00000000; + *((unsigned long *)&__m256i_result[1]) = 0xffffffff00000000; + *((unsigned long *)&__m256i_result[0]) = 0xffffffff00000000; + __m256i_out = __lasx_xvfcmp_cule_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00010000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00010000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x02000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x02000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cule_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0xffffffff; + *((int *)&__m256_op0[6]) = 0xffffffff; + *((int *)&__m256_op0[5]) = 0xffffffff; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0xffffffff; + *((int *)&__m256_op0[2]) = 0xffffffff; + *((int *)&__m256_op0[1]) = 0xffffffff; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x01010000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x01010000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cule_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0xffffffff; + *((int *)&__m256_op0[4]) = 0xffffffff; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0xffffffff; + *((int *)&__m256_op0[0]) = 0xffffffff; + *((int *)&__m256_op1[7]) = 0xffffffff; + *((int *)&__m256_op1[6]) = 0xffffffff; + *((int *)&__m256_op1[5]) = 0xffff0101; + *((int *)&__m256_op1[4]) = 0x00000001; + *((int *)&__m256_op1[3]) = 0xffffffff; + *((int *)&__m256_op1[2]) = 0xffffffff; + *((int *)&__m256_op1[1]) = 0xffff0101; + *((int *)&__m256_op1[0]) = 0x00000001; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cule_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0xfffffffb; + *((int *)&__m256_op0[6]) = 0xfffffffb; + *((int *)&__m256_op0[5]) = 0xfffffffb; + *((int *)&__m256_op0[4]) = 0xfffffffb; + *((int *)&__m256_op0[3]) = 0xfffffffb; + *((int *)&__m256_op0[2]) = 0xfffffffb; + *((int *)&__m256_op0[1]) = 0xfffffffb; + *((int *)&__m256_op0[0]) = 0xfffffffb; + *((int *)&__m256_op1[7]) = 0x0000ffff; + *((int *)&__m256_op1[6]) = 0x0001000e; + *((int *)&__m256_op1[5]) = 0x0000ffff; + *((int *)&__m256_op1[4]) = 0x0000ffff; + *((int *)&__m256_op1[3]) = 0x0000ffff; + *((int *)&__m256_op1[2]) = 0x0000ffff; + *((int *)&__m256_op1[1]) = 0x0000ffff; + *((int *)&__m256_op1[0]) = 0x0000ffff; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cule_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x8080808280808082; + *((unsigned long *)&__m256d_op0[2]) = 0x8080808280808082; + *((unsigned long *)&__m256d_op0[1]) = 0x8080808280808080; + *((unsigned long *)&__m256d_op0[0]) = 0x8080808280808082; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cule_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[2]) = 0xfffeffff10000000; + *((unsigned long *)&__m256d_op1[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[0]) = 0xfffeffff10000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cule_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0x0c6a240000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0f00204000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0c6a240000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0f00204000000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cule_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + return 0; +} diff --git a/gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_clt_s.c b/gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_clt_s.c new file mode 100644 index 000000000..733cc00ee --- /dev/null +++ b/gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_clt_s.c @@ -0,0 +1,675 @@ +/* { dg-do run } */ +/* { dg-options "-mlasx -w -fno-strict-aliasing" } */ +#include "../simd_correctness_check.h" +#include <lasxintrin.h> + +int +main () +{ + __m256i __m256i_op0, __m256i_op1, __m256i_op2, __m256i_out, __m256i_result; + __m256 __m256_op0, __m256_op1, __m256_op2, __m256_out, __m256_result; + __m256d __m256d_op0, __m256d_op1, __m256d_op2, __m256d_out, __m256d_result; + + int int_op0, int_op1, int_op2, int_out, int_result, i = 1, fail; + long int long_op0, long_op1, long_op2, lont_out, lont_result; + 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; + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0xfe02fe02; + *((int *)&__m256_op0[2]) = 0xfee5fe22; + *((int *)&__m256_op0[1]) = 0xff49fe42; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x0000ffff; + *((int *)&__m256_op1[6]) = 0x0000ff80; + *((int *)&__m256_op1[5]) = 0x00004686; + *((int *)&__m256_op1[4]) = 0x00007f79; + *((int *)&__m256_op1[3]) = 0xffffffff; + *((int *)&__m256_op1[2]) = 0x0000ffff; + *((int *)&__m256_op1[1]) = 0x0000f328; + *((int *)&__m256_op1[0]) = 0x0000dfff; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0x00000000ffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_clt_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x01000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x01000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffff00000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0xffffffff00000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_clt_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0xffff80cb; + *((int *)&__m256_op1[6]) = 0xfffffdf8; + *((int *)&__m256_op1[5]) = 0x00000815; + *((int *)&__m256_op1[4]) = 0x00000104; + *((int *)&__m256_op1[3]) = 0xffffffa4; + *((int *)&__m256_op1[2]) = 0xfffffffd; + *((int *)&__m256_op1[1]) = 0x00000007; + *((int *)&__m256_op1[0]) = 0x00000002; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_clt_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0xffffffff; + *((int *)&__m256_op0[4]) = 0xffffffff; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0xffff0000; + *((int *)&__m256_op0[0]) = 0xffffffff; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00003f3f; + *((int *)&__m256_op1[4]) = 0xc6c68787; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00003f3f; + *((int *)&__m256_op1[0]) = 0x87870000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_clt_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000002; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0xffffffff00000000; + __m256i_out = __lasx_xvfcmp_clt_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_clt_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0xffffffff; + *((int *)&__m256_op0[6]) = 0xffffffff; + *((int *)&__m256_op0[5]) = 0xffffffff; + *((int *)&__m256_op0[4]) = 0xffffffff; + *((int *)&__m256_op0[3]) = 0xffffffff; + *((int *)&__m256_op0[2]) = 0xffffffff; + *((int *)&__m256_op0[1]) = 0xffffffff; + *((int *)&__m256_op0[0]) = 0xffffffff; + *((int *)&__m256_op1[7]) = 0xffffffff; + *((int *)&__m256_op1[6]) = 0xffffffff; + *((int *)&__m256_op1[5]) = 0xffffffff; + *((int *)&__m256_op1[4]) = 0x0101ffff; + *((int *)&__m256_op1[3]) = 0xffffffff; + *((int *)&__m256_op1[2]) = 0xffffffff; + *((int *)&__m256_op1[1]) = 0xffffffff; + *((int *)&__m256_op1[0]) = 0x0101ffff; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_clt_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x01000100; + *((int *)&__m256_op0[6]) = 0x01000100; + *((int *)&__m256_op0[5]) = 0x01000100; + *((int *)&__m256_op0[4]) = 0x01000100; + *((int *)&__m256_op0[3]) = 0x01000100; + *((int *)&__m256_op0[2]) = 0x01000100; + *((int *)&__m256_op0[1]) = 0x01000100; + *((int *)&__m256_op0[0]) = 0x01000100; + *((int *)&__m256_op1[7]) = 0x7f800000; + *((int *)&__m256_op1[6]) = 0x7f800000; + *((int *)&__m256_op1[5]) = 0x62d2acee; + *((int *)&__m256_op1[4]) = 0x7fc00000; + *((int *)&__m256_op1[3]) = 0x7f800000; + *((int *)&__m256_op1[2]) = 0x7f800000; + *((int *)&__m256_op1[1]) = 0x62d2acee; + *((int *)&__m256_op1[0]) = 0x7fc00000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffff00000000; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffff00000000; + __m256i_out = __lasx_xvfcmp_clt_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x0000ff01; + *((int *)&__m256_op0[6]) = 0x00ff0000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x0000ff01; + *((int *)&__m256_op0[3]) = 0x0000ff01; + *((int *)&__m256_op0[2]) = 0x00ff0000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x0000ff01; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000808; + *((int *)&__m256_op1[4]) = 0x00000808; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000808; + *((int *)&__m256_op1[0]) = 0x00000808; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0xffffffff00000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0xffffffff00000000; + __m256i_out = __lasx_xvfcmp_clt_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0xffffffff; + *((int *)&__m256_op0[6]) = 0xffff8000; + *((int *)&__m256_op0[5]) = 0x7efefefe; + *((int *)&__m256_op0[4]) = 0x80ffffff; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x7efefefe; + *((int *)&__m256_op0[0]) = 0x80ffffff; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x00000000ffffffff; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x00000000ffffffff; + __m256i_out = __lasx_xvfcmp_clt_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0xffffffff; + *((int *)&__m256_op0[4]) = 0xffffffff; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0xffffffff; + *((int *)&__m256_op0[0]) = 0xffffffff; + *((int *)&__m256_op1[7]) = 0x0001ffaa; + *((int *)&__m256_op1[6]) = 0x0000040e; + *((int *)&__m256_op1[5]) = 0x00007168; + *((int *)&__m256_op1[4]) = 0x00007bb6; + *((int *)&__m256_op1[3]) = 0x0001ffe8; + *((int *)&__m256_op1[2]) = 0x0001fe9c; + *((int *)&__m256_op1[1]) = 0x00002282; + *((int *)&__m256_op1[0]) = 0x00001680; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cult_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x01010101; + *((int *)&__m256_op0[5]) = 0x55555501; + *((int *)&__m256_op0[4]) = 0xfefefeab; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x01010101; + *((int *)&__m256_op0[1]) = 0x55555501; + *((int *)&__m256_op0[0]) = 0xfefefeab; + *((int *)&__m256_op1[7]) = 0x00000105; + *((int *)&__m256_op1[6]) = 0xfffffefb; + *((int *)&__m256_op1[5]) = 0xffffff02; + *((int *)&__m256_op1[4]) = 0x000000fe; + *((int *)&__m256_op1[3]) = 0x00000105; + *((int *)&__m256_op1[2]) = 0xfffffefb; + *((int *)&__m256_op1[1]) = 0xffffff02; + *((int *)&__m256_op1[0]) = 0x000000fe; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cult_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000080; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000080; + *((int *)&__m256_op1[7]) = 0xffffffff; + *((int *)&__m256_op1[6]) = 0xffffffff; + *((int *)&__m256_op1[5]) = 0xffffffff; + *((int *)&__m256_op1[4]) = 0xffffffff; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0xffffffff; + *((int *)&__m256_op1[1]) = 0xffffffff; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0x00000000ffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffff00000000; + __m256i_out = __lasx_xvfcmp_cult_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x0000ffce; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x0000fc7c; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x0000ffce; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x0000fc7c; + *((int *)&__m256_op1[7]) = 0xe7e7e7e7; + *((int *)&__m256_op1[6]) = 0xe7e7e7e7; + *((int *)&__m256_op1[5]) = 0xe7e7e7e7; + *((int *)&__m256_op1[4]) = 0xe7e7e7e7; + *((int *)&__m256_op1[3]) = 0xe7e7e7e7; + *((int *)&__m256_op1[2]) = 0xe7e7e7e7; + *((int *)&__m256_op1[1]) = 0xe7e7e7e7; + *((int *)&__m256_op1[0]) = 0xe7e7e7e7; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cult_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0xffffffff; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0xffffffff; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0xffffffff; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0xffffffff; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0xffffffff; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0xffffffff; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0xffffffff; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0xffffffff; + *((unsigned long *)&__m256i_result[3]) = 0x00000000ffffffff; + *((unsigned long *)&__m256i_result[2]) = 0x00000000ffffffff; + *((unsigned long *)&__m256i_result[1]) = 0x00000000ffffffff; + *((unsigned long *)&__m256i_result[0]) = 0x00000000ffffffff; + __m256i_out = __lasx_xvfcmp_cult_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0xffffffff; + *((int *)&__m256_op0[6]) = 0xffffffff; + *((int *)&__m256_op0[5]) = 0xffffffff; + *((int *)&__m256_op0[4]) = 0xffffffff; + *((int *)&__m256_op0[3]) = 0xffffffff; + *((int *)&__m256_op0[2]) = 0xffffffff; + *((int *)&__m256_op0[1]) = 0xffffffff; + *((int *)&__m256_op0[0]) = 0xffffffff; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cult_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cult_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0xffffffff; + *((int *)&__m256_op1[6]) = 0xffffffff; + *((int *)&__m256_op1[5]) = 0xffffffff; + *((int *)&__m256_op1[4]) = 0x0007a861; + *((int *)&__m256_op1[3]) = 0xffffffff; + *((int *)&__m256_op1[2]) = 0xffffffff; + *((int *)&__m256_op1[1]) = 0xffffffff; + *((int *)&__m256_op1[0]) = 0x0007a861; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cult_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0xffffffff; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0xffffffff; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0xffffffff; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0xffffffff; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00100010; + *((int *)&__m256_op1[5]) = 0x00100010; + *((int *)&__m256_op1[4]) = 0x00100010; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00100010; + *((int *)&__m256_op1[1]) = 0x00100010; + *((int *)&__m256_op1[0]) = 0x00100010; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cult_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x01010101; + *((int *)&__m256_op0[6]) = 0x01010101; + *((int *)&__m256_op0[5]) = 0x01010101; + *((int *)&__m256_op0[4]) = 0x00000001; + *((int *)&__m256_op0[3]) = 0x01010101; + *((int *)&__m256_op0[2]) = 0x01010101; + *((int *)&__m256_op0[1]) = 0x01010101; + *((int *)&__m256_op0[0]) = 0x00000001; + *((int *)&__m256_op1[7]) = 0x000001e0; + *((int *)&__m256_op1[6]) = 0x01e001e0; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x000001e0; + *((int *)&__m256_op1[2]) = 0x01e001e0; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0x00000000ffffffff; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x00000000ffffffff; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cult_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0001000100010001; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0001000100010001; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_clt_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op0[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op0[0]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x000000000000007f; + *((unsigned long *)&__m256d_op1[0]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_clt_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0001000100010001; + *((unsigned long *)&__m256d_op0[2]) = 0x0001000100010001; + *((unsigned long *)&__m256d_op0[1]) = 0x0001000100010001; + *((unsigned long *)&__m256d_op0[0]) = 0x0001000100010001; + *((unsigned long *)&__m256d_op1[3]) = 0xf800d0d8ffffeecf; + *((unsigned long *)&__m256d_op1[2]) = 0x0000383fffffdf0d; + *((unsigned long *)&__m256d_op1[1]) = 0xf800d0d8ffffeecf; + *((unsigned long *)&__m256d_op1[0]) = 0x0000383fffffdf0d; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_clt_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x7fefffffffffffff; + *((unsigned long *)&__m256d_op0[2]) = 0x7fefffffffffffff; + *((unsigned long *)&__m256d_op0[1]) = 0x7fefffffffffffff; + *((unsigned long *)&__m256d_op0[0]) = 0x7fefffffffffffff; + *((unsigned long *)&__m256d_op1[3]) = 0x7fefffffffffffff; + *((unsigned long *)&__m256d_op1[2]) = 0x7fefffffffffffff; + *((unsigned long *)&__m256d_op1[1]) = 0x7fefffffffffffff; + *((unsigned long *)&__m256d_op1[0]) = 0x7fefffffffffffff; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_clt_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x001ffffe00200000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x001ffffe00200000; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_clt_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_clt_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_clt_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x2020000020200000; + *((unsigned long *)&__m256d_op0[2]) = 0x2020000020200000; + *((unsigned long *)&__m256d_op0[1]) = 0x0008000001010000; + *((unsigned long *)&__m256d_op0[0]) = 0x0101000001010000; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cult_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0x0006000000040000; + *((unsigned long *)&__m256d_op1[2]) = 0x0002000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0006000000040000; + *((unsigned long *)&__m256d_op1[0]) = 0x0002000000000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cult_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000ffff00000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000ffff00000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000ffff00000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000ffff00000000; + *((unsigned long *)&__m256d_op1[3]) = 0x0000ffff00000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000ffff00000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000ffff00000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000ffff00000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cult_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0xffffffff00000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0xffffffff00000000; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cult_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0xfff1000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0xfff1000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cult_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op0[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op0[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op0[0]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[3]) = 0xfffefffefffefffe; + *((unsigned long *)&__m256d_op1[2]) = 0xfffefffefffefffe; + *((unsigned long *)&__m256d_op1[1]) = 0xfffefffefffefffe; + *((unsigned long *)&__m256d_op1[0]) = 0xfffefffefffefffe; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cult_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + return 0; +} diff --git a/gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_cne_s.c b/gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_cne_s.c new file mode 100644 index 000000000..190741070 --- /dev/null +++ b/gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_cne_s.c @@ -0,0 +1,872 @@ +/* { dg-do run } */ +/* { dg-options "-mlasx -w -fno-strict-aliasing" } */ +#include "../simd_correctness_check.h" +#include <lasxintrin.h> + +int +main () +{ + __m256i __m256i_op0, __m256i_op1, __m256i_op2, __m256i_out, __m256i_result; + __m256 __m256_op0, __m256_op1, __m256_op2, __m256_out, __m256_result; + __m256d __m256d_op0, __m256d_op1, __m256d_op2, __m256d_out, __m256d_result; + + int int_op0, int_op1, int_op2, int_out, int_result, i = 1, fail; + long int long_op0, long_op1, long_op2, lont_out, lont_result; + 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; + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x7fff7fff; + *((int *)&__m256_op0[4]) = 0x7fff7fff; + *((int *)&__m256_op0[3]) = 0x7fff01fd; + *((int *)&__m256_op0[2]) = 0x7fff7fff; + *((int *)&__m256_op0[1]) = 0x00007fff; + *((int *)&__m256_op0[0]) = 0x7fff7fff; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0xffffffff00000000; + __m256i_out = __lasx_xvfcmp_cne_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000001; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000001; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffff00000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0xffffffff00000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cne_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0xdededede; + *((int *)&__m256_op0[6]) = 0xdededede; + *((int *)&__m256_op0[5]) = 0xdededede; + *((int *)&__m256_op0[4]) = 0xdededede; + *((int *)&__m256_op0[3]) = 0xdededede; + *((int *)&__m256_op0[2]) = 0xdededede; + *((int *)&__m256_op0[1]) = 0xdededede; + *((int *)&__m256_op0[0]) = 0xdededede; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cne_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000051; + *((int *)&__m256_op1[5]) = 0x00001010; + *((int *)&__m256_op1[4]) = 0x00000fff; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000051; + *((int *)&__m256_op1[1]) = 0x00001010; + *((int *)&__m256_op1[0]) = 0x00000fff; + *((unsigned long *)&__m256i_result[3]) = 0x00000000ffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0x00000000ffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cne_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000051; + *((int *)&__m256_op0[5]) = 0x00001010; + *((int *)&__m256_op0[4]) = 0x00000fff; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000051; + *((int *)&__m256_op0[1]) = 0x00001010; + *((int *)&__m256_op0[0]) = 0x00000fff; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0x00000000ffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0x00000000ffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cne_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x0000ffff; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x0000ffff; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x0000ffff; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x0000ffff; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffff00000000; + *((unsigned long *)&__m256i_result[2]) = 0xffffffff00000000; + *((unsigned long *)&__m256i_result[1]) = 0xffffffff00000000; + *((unsigned long *)&__m256i_result[0]) = 0xffffffff00000000; + __m256i_out = __lasx_xvfcmp_cne_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cne_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x000007c8; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x000007c8; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x00000000ffffffff; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x00000000ffffffff; + __m256i_out = __lasx_xvfcmp_cne_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0xffffffff; + *((int *)&__m256_op0[4]) = 0xffffffff; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0xffffffff; + *((int *)&__m256_op0[0]) = 0xffffffff; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x80000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x80000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cne_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x0000001f; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x0000001f; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x0000001f; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x0000001f; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cne_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0xfff8ff40; + *((int *)&__m256_op0[5]) = 0x0000ff01; + *((int *)&__m256_op0[4]) = 0x00090040; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0xfff8ff40; + *((int *)&__m256_op0[1]) = 0x0000ff01; + *((int *)&__m256_op0[0]) = 0x00090040; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cne_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0xffffffff; + *((int *)&__m256_op0[6]) = 0xffffffff; + *((int *)&__m256_op0[5]) = 0xffffffff; + *((int *)&__m256_op0[4]) = 0xffffffff; + *((int *)&__m256_op0[3]) = 0xffffffff; + *((int *)&__m256_op0[2]) = 0xffffffff; + *((int *)&__m256_op0[1]) = 0xffffffff; + *((int *)&__m256_op0[0]) = 0xffffffff; + *((int *)&__m256_op1[7]) = 0xff1cff1c; + *((int *)&__m256_op1[6]) = 0xff1cff1c; + *((int *)&__m256_op1[5]) = 0xff1cff1c; + *((int *)&__m256_op1[4]) = 0xff1cff1c; + *((int *)&__m256_op1[3]) = 0xff1cff1c; + *((int *)&__m256_op1[2]) = 0xff1cff1c; + *((int *)&__m256_op1[1]) = 0xff1cff1c; + *((int *)&__m256_op1[0]) = 0xff1cff1c; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cne_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00fe01f0; + *((int *)&__m256_op0[6]) = 0x00010000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00c40086; + *((int *)&__m256_op0[3]) = 0x00fe01f0; + *((int *)&__m256_op0[2]) = 0x00010000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00c40086; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0x00000000ffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0x00000000ffffffff; + __m256i_out = __lasx_xvfcmp_cune_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x0000ffff; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x0000ffff; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x0000ffff; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x0000ffff; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0x00000000ffffffff; + *((unsigned long *)&__m256i_result[2]) = 0x00000000ffffffff; + *((unsigned long *)&__m256i_result[1]) = 0x00000000ffffffff; + *((unsigned long *)&__m256i_result[0]) = 0x00000000ffffffff; + __m256i_out = __lasx_xvfcmp_cune_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0xffffffff; + *((int *)&__m256_op0[6]) = 0xffffffff; + *((int *)&__m256_op0[5]) = 0xffffffff; + *((int *)&__m256_op0[4]) = 0xffffffff; + *((int *)&__m256_op0[3]) = 0xffffffff; + *((int *)&__m256_op0[2]) = 0xffffffff; + *((int *)&__m256_op0[1]) = 0xffffffff; + *((int *)&__m256_op0[0]) = 0xffffffff; + *((int *)&__m256_op1[7]) = 0xffffffff; + *((int *)&__m256_op1[6]) = 0xffffffff; + *((int *)&__m256_op1[5]) = 0xffffffff; + *((int *)&__m256_op1[4]) = 0xffffffff; + *((int *)&__m256_op1[3]) = 0xffffffff; + *((int *)&__m256_op1[2]) = 0xffffffff; + *((int *)&__m256_op1[1]) = 0xffffffff; + *((int *)&__m256_op1[0]) = 0xffffffff; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cune_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000001; + *((int *)&__m256_op0[6]) = 0x00000001; + *((int *)&__m256_op0[5]) = 0x0fff0180; + *((int *)&__m256_op0[4]) = 0x0fff0181; + *((int *)&__m256_op0[3]) = 0x00000001; + *((int *)&__m256_op0[2]) = 0x00000001; + *((int *)&__m256_op0[1]) = 0x0fff0180; + *((int *)&__m256_op0[0]) = 0x0fff0181; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cune_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x0003ffff; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x00000000ffffffff; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cune_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0xffffffff; + *((int *)&__m256_op0[6]) = 0xfffffe20; + *((int *)&__m256_op0[5]) = 0x0000001d; + *((int *)&__m256_op0[4]) = 0xfffffe1f; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cune_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x5fa00000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x5fa00000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000004; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00007f95; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000004; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00007f95; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0x00000000ffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0x00000000ffffffff; + __m256i_out = __lasx_xvfcmp_cune_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x7f010000; + *((int *)&__m256_op0[5]) = 0x00010000; + *((int *)&__m256_op0[4]) = 0x00007f7f; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x7f010000; + *((int *)&__m256_op0[1]) = 0x00010000; + *((int *)&__m256_op0[0]) = 0x00007f7f; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0x00000000ffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0x00000000ffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cune_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cune_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cune_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cune_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x003f0200; + *((int *)&__m256_op0[6]) = 0x01400200; + *((int *)&__m256_op0[5]) = 0x003f00ff; + *((int *)&__m256_op0[4]) = 0x003f00c4; + *((int *)&__m256_op0[3]) = 0x003f0200; + *((int *)&__m256_op0[2]) = 0x01400200; + *((int *)&__m256_op0[1]) = 0x003f00ff; + *((int *)&__m256_op0[0]) = 0x003f00c4; + *((int *)&__m256_op1[7]) = 0x00000101; + *((int *)&__m256_op1[6]) = 0x01010101; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000101; + *((int *)&__m256_op1[2]) = 0x01010101; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cune_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cne_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x01fe000000ff00ff; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x01fe000001fe0000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cne_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0101010101010102; + *((unsigned long *)&__m256d_op0[2]) = 0x0101010201010204; + *((unsigned long *)&__m256d_op0[1]) = 0x0101010101010102; + *((unsigned long *)&__m256d_op0[0]) = 0x0101010101010102; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000e00ff00ff; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000ff00ff; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cne_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cne_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0xffffffff00000000; + *((unsigned long *)&__m256d_op0[2]) = 0x000000000000ffff; + *((unsigned long *)&__m256d_op0[1]) = 0xffffffff00000000; + *((unsigned long *)&__m256d_op0[0]) = 0xffffffff0000ffff; + *((unsigned long *)&__m256d_op1[3]) = 0xfff9fff9fff9fff9; + *((unsigned long *)&__m256d_op1[2]) = 0xfff90000fff9fff9; + *((unsigned long *)&__m256d_op1[1]) = 0xfff9fff9fff9fff9; + *((unsigned long *)&__m256d_op1[0]) = 0xfff90000fff9fff9; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cne_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0x0101010127272525; + *((unsigned long *)&__m256d_op1[2]) = 0x23a2a121179e951d; + *((unsigned long *)&__m256d_op1[1]) = 0x0101010127272525; + *((unsigned long *)&__m256d_op1[0]) = 0x23a2a121179e951d; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cne_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cne_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op0[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op0[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op0[0]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[0]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cne_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x00000000000000ff; + *((unsigned long *)&__m256d_op0[2]) = 0x00000000000000e7; + *((unsigned long *)&__m256d_op0[1]) = 0x00000000000000ff; + *((unsigned long *)&__m256d_op0[0]) = 0x00000000000000e7; + *((unsigned long *)&__m256d_op1[3]) = 0x00000005ffffffff; + *((unsigned long *)&__m256d_op1[2]) = 0x00000007ffffffce; + *((unsigned long *)&__m256d_op1[1]) = 0x00000005ffffffff; + *((unsigned long *)&__m256d_op1[0]) = 0x00000007ffffffce; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cne_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000002000000020; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000f0000000f; + *((unsigned long *)&__m256d_op0[1]) = 0x0000002000000020; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000f0000000f; + *((unsigned long *)&__m256d_op1[3]) = 0xdff8000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0xdff8000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0xdff8000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0xdff8000000000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cune_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[0]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cune_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cune_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000001; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000040002; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x000000000000007f; + *((unsigned long *)&__m256d_op1[0]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cune_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0xc600000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0xc600000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cune_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0006000000040000; + *((unsigned long *)&__m256d_op0[2]) = 0x0002000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0006000000040000; + *((unsigned long *)&__m256d_op0[0]) = 0x0002000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0x0006000000040000; + *((unsigned long *)&__m256d_op1[2]) = 0x0002000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0006000000040000; + *((unsigned long *)&__m256d_op1[0]) = 0x0002000000000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cune_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0xfffffff1fffffff1; + *((unsigned long *)&__m256d_op0[2]) = 0xfffffff1fffffff1; + *((unsigned long *)&__m256d_op0[1]) = 0xfffffff1fffffff1; + *((unsigned long *)&__m256d_op0[0]) = 0xfffffff1fffffff1; + *((unsigned long *)&__m256d_op1[3]) = 0x00ff00ff00ff00ff; + *((unsigned long *)&__m256d_op1[2]) = 0x00ff00ff00ff00ff; + *((unsigned long *)&__m256d_op1[1]) = 0x00ff00ff00ff00ff; + *((unsigned long *)&__m256d_op1[0]) = 0x00ff00ff00ff00ff; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cune_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0xff56ff55ff01ff01; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0xff56ff55ff01ff01; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cune_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0x0000800000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000800000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000800000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000800000000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cune_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cune_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op0[2]) = 0xffffffffffffff10; + *((unsigned long *)&__m256d_op0[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op0[0]) = 0xffffffffffffff10; + *((unsigned long *)&__m256d_op1[3]) = 0x0004000400040004; + *((unsigned long *)&__m256d_op1[2]) = 0x0004000500040005; + *((unsigned long *)&__m256d_op1[1]) = 0x0004000400040004; + *((unsigned long *)&__m256d_op1[0]) = 0x0004000500040005; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cune_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + return 0; +} diff --git a/gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_cor_s.c b/gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_cor_s.c new file mode 100644 index 000000000..8dd58f228 --- /dev/null +++ b/gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_cor_s.c @@ -0,0 +1,340 @@ +/* { dg-do run } */ +/* { dg-options "-mlasx -w -fno-strict-aliasing" } */ +#include "../simd_correctness_check.h" +#include <lasxintrin.h> + +int +main () +{ + __m256i __m256i_op0, __m256i_op1, __m256i_op2, __m256i_out, __m256i_result; + __m256 __m256_op0, __m256_op1, __m256_op2, __m256_out, __m256_result; + __m256d __m256d_op0, __m256d_op1, __m256d_op2, __m256d_out, __m256d_result; + + int int_op0, int_op1, int_op2, int_out, int_result, i = 1, fail; + long int long_op0, long_op1, long_op2, lont_out, lont_result; + 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; + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cor_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cor_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cor_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0xffffffff; + *((int *)&__m256_op0[6]) = 0xffffffff; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0xffffffff; + *((int *)&__m256_op0[2]) = 0xffffffff; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cor_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x01fe007a; + *((int *)&__m256_op1[6]) = 0x01c40110; + *((int *)&__m256_op1[5]) = 0x019d00a2; + *((int *)&__m256_op1[4]) = 0x0039fff9; + *((int *)&__m256_op1[3]) = 0x01fe007a; + *((int *)&__m256_op1[2]) = 0x01c40110; + *((int *)&__m256_op1[1]) = 0x019d00a2; + *((int *)&__m256_op1[0]) = 0x003a0000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cor_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0xfff10000; + *((int *)&__m256_op0[4]) = 0xfff10000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0xfff10000; + *((int *)&__m256_op0[0]) = 0xfff10000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0xfff10000; + *((int *)&__m256_op1[4]) = 0xfff10000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cor_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cor_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[2]) = 0xffffffffffff0000; + *((unsigned long *)&__m256d_op1[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[0]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cor_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0xffff00ffffffffff; + *((unsigned long *)&__m256d_op0[2]) = 0xffffffffff000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x000000ff00000000; + *((unsigned long *)&__m256d_op1[3]) = 0xffff00ffffffffff; + *((unsigned long *)&__m256d_op1[2]) = 0xffffffffff000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x000000ff00000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cor_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op0[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op0[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op0[0]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x000000000000ff00; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x000000000000ff00; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cor_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0xfffffffffefefeff; + *((unsigned long *)&__m256d_op0[2]) = 0xffffffffff295329; + *((unsigned long *)&__m256d_op0[1]) = 0xfffffffffefefeff; + *((unsigned long *)&__m256d_op0[0]) = 0xffffffffff295329; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000001; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000001; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cor_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000504fffff3271; + *((unsigned long *)&__m256d_op0[2]) = 0xffff47b4ffff5879; + *((unsigned long *)&__m256d_op0[1]) = 0x0000504fffff3271; + *((unsigned long *)&__m256d_op0[0]) = 0xffff47b4ffff5879; + *((unsigned long *)&__m256d_op1[3]) = 0x00ff010000ff017e; + *((unsigned long *)&__m256d_op1[2]) = 0x01fe01ae00ff00ff; + *((unsigned long *)&__m256d_op1[1]) = 0x00ff010000ff017e; + *((unsigned long *)&__m256d_op1[0]) = 0x01fe01ae00ff00ff; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cor_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000009; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000009; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000009; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000009; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000020006; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000020006; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000020006; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000020006; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cor_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cor_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cor_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + unsigned_int_out = __lasx_xvpickve2gr_wu (__m256i_op0, 0x7); + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0xffffff0100000001; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0xffffff0100000001; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cor_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + unsigned_int_out = __lasx_xvpickve2gr_wu (__m256i_op0, 0x2); + *((unsigned long *)&__m256d_op0[3]) = 0xffffffff00000000; + *((unsigned long *)&__m256d_op0[2]) = 0xffffffff00000000; + *((unsigned long *)&__m256d_op0[1]) = 0xffffffff00000000; + *((unsigned long *)&__m256d_op0[0]) = 0xffffffff00000000; + *((unsigned long *)&__m256d_op1[3]) = 0x0000ff0100ff0000; + *((unsigned long *)&__m256d_op1[2]) = 0x000000000000ff01; + *((unsigned long *)&__m256d_op1[1]) = 0x0000ff0100ff0000; + *((unsigned long *)&__m256d_op1[0]) = 0x000000000000ff01; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cor_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000002; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000050007; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000002; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000039; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cor_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + return 0; +} diff --git a/gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_cun_s.c b/gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_cun_s.c new file mode 100644 index 000000000..3230c101d --- /dev/null +++ b/gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_cun_s.c @@ -0,0 +1,361 @@ +/* { dg-do run } */ +/* { dg-options "-mlasx -w -fno-strict-aliasing" } */ +#include "../simd_correctness_check.h" +#include <lasxintrin.h> + +int +main () +{ + __m256i __m256i_op0, __m256i_op1, __m256i_op2, __m256i_out, __m256i_result; + __m256 __m256_op0, __m256_op1, __m256_op2, __m256_out, __m256_result; + __m256d __m256d_op0, __m256d_op1, __m256d_op2, __m256d_out, __m256d_result; + + int int_op0, int_op1, int_op2, int_out, int_result, i = 1, fail; + long int long_op0, long_op1, long_op2, lont_out, lont_result; + 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; + + *((int *)&__m256_op0[7]) = 0xffffffff; + *((int *)&__m256_op0[6]) = 0xffffffff; + *((int *)&__m256_op0[5]) = 0xffffffff; + *((int *)&__m256_op0[4]) = 0xffffffff; + *((int *)&__m256_op0[3]) = 0xffffffff; + *((int *)&__m256_op0[2]) = 0xffffffff; + *((int *)&__m256_op0[1]) = 0xffffffff; + *((int *)&__m256_op0[0]) = 0xffffffff; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cun_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cun_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x01ffffff; + *((int *)&__m256_op1[4]) = 0xfe000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x01ffffff; + *((int *)&__m256_op1[0]) = 0xfe000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cun_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x0000504f; + *((int *)&__m256_op0[6]) = 0xffff3271; + *((int *)&__m256_op0[5]) = 0xffff47b4; + *((int *)&__m256_op0[4]) = 0xffff5879; + *((int *)&__m256_op0[3]) = 0x0000504f; + *((int *)&__m256_op0[2]) = 0xffff3271; + *((int *)&__m256_op0[1]) = 0xffff47b4; + *((int *)&__m256_op0[0]) = 0xffff5879; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0x00000000ffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0x00000000ffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cun_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0xde00fe00; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x0000fe01; + *((int *)&__m256_op0[4]) = 0x0000fe01; + *((int *)&__m256_op0[3]) = 0xde00fe00; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x0000fe01; + *((int *)&__m256_op0[0]) = 0x0000fe01; + *((int *)&__m256_op1[7]) = 0x0000ffff; + *((int *)&__m256_op1[6]) = 0x0000ffff; + *((int *)&__m256_op1[5]) = 0x00ff00fe; + *((int *)&__m256_op1[4]) = 0x00ff00fe; + *((int *)&__m256_op1[3]) = 0x0000ffff; + *((int *)&__m256_op1[2]) = 0x0000ffff; + *((int *)&__m256_op1[1]) = 0x00ff00fe; + *((int *)&__m256_op1[0]) = 0x00ff00fe; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cun_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0xf3f3f3f3; + *((int *)&__m256_op0[6]) = 0xf3f3f3f3; + *((int *)&__m256_op0[5]) = 0xf3f3f3f3; + *((int *)&__m256_op0[4]) = 0xf3f3f3f3; + *((int *)&__m256_op0[3]) = 0xf3f3f3f3; + *((int *)&__m256_op0[2]) = 0xf3f3f3f3; + *((int *)&__m256_op0[1]) = 0xf3f3f3f3; + *((int *)&__m256_op0[0]) = 0xf3f3f3f3; + *((int *)&__m256_op1[7]) = 0xf3f3f3f3; + *((int *)&__m256_op1[6]) = 0xf3f3f3f3; + *((int *)&__m256_op1[5]) = 0xf3f3f3f3; + *((int *)&__m256_op1[4]) = 0xf3f3f3f3; + *((int *)&__m256_op1[3]) = 0xf3f3f3f3; + *((int *)&__m256_op1[2]) = 0xf3f3f3f3; + *((int *)&__m256_op1[1]) = 0xf3f3f3f3; + *((int *)&__m256_op1[0]) = 0xf3f3f3f3; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cun_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0xffffffff; + *((int *)&__m256_op0[6]) = 0xffffffff; + *((int *)&__m256_op0[5]) = 0xffffffff; + *((int *)&__m256_op0[4]) = 0x0007a861; + *((int *)&__m256_op0[3]) = 0xffffffff; + *((int *)&__m256_op0[2]) = 0xffffffff; + *((int *)&__m256_op0[1]) = 0xffffffff; + *((int *)&__m256_op0[0]) = 0x0007a861; + *((int *)&__m256_op1[7]) = 0x80008000; + *((int *)&__m256_op1[6]) = 0x80008000; + *((int *)&__m256_op1[5]) = 0x80008000; + *((int *)&__m256_op1[4]) = 0xfff98000; + *((int *)&__m256_op1[3]) = 0x80008000; + *((int *)&__m256_op1[2]) = 0x80008000; + *((int *)&__m256_op1[1]) = 0x80008000; + *((int *)&__m256_op1[0]) = 0xfff98000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cun_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000015d050192cb; + *((unsigned long *)&__m256d_op0[2]) = 0x028e509508b16ee9; + *((unsigned long *)&__m256d_op0[1]) = 0x000033ff01020e23; + *((unsigned long *)&__m256d_op0[0]) = 0x151196b58fd1114d; + *((unsigned long *)&__m256d_op1[3]) = 0x372e9d75e8aab100; + *((unsigned long *)&__m256d_op1[2]) = 0xc5c085372cfabfba; + *((unsigned long *)&__m256d_op1[1]) = 0x31730b5beb7c99f5; + *((unsigned long *)&__m256d_op1[0]) = 0x0658f2dc0eb21e3c; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cun_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op0[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op0[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op0[0]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[3]) = 0x1e1800001e180000; + *((unsigned long *)&__m256d_op1[2]) = 0x1e18000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x1e1800001e180000; + *((unsigned long *)&__m256d_op1[0]) = 0x1e18000000000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cun_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0xffffffffff000000; + *((unsigned long *)&__m256d_op1[2]) = 0xffffffffff000000; + *((unsigned long *)&__m256d_op1[1]) = 0xffffffffff000000; + *((unsigned long *)&__m256d_op1[0]) = 0xffffffffff000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cun_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[3]) = 0x0101010101010101; + *((unsigned long *)&__m256d_op1[2]) = 0x0101010101010203; + *((unsigned long *)&__m256d_op1[1]) = 0x0101010101010101; + *((unsigned long *)&__m256d_op1[0]) = 0x0101010101010101; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cun_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cun_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x00fe01f000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x00fe01f000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cun_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[0]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cun_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x00000000ffffffff; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x00000000ffffffff; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cun_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cun_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x000b000b000b000b; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x000b000b000b000b; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cun_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000001; + *((unsigned long *)&__m256d_op0[2]) = 0xffffffffffff8000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000001; + *((unsigned long *)&__m256d_op0[0]) = 0xffffffffffff8000; + *((unsigned long *)&__m256d_op1[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[0]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_cun_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_cun_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + return 0; +} -- 2.33.0
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.
浙ICP备2022010568号-2