From patchwork Wed Sep 13 03:43:28 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: chenxiaolong X-Patchwork-Id: 138628 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:9ecd:0:b0:3f2:4152:657d with SMTP id t13csp840623vqx; Tue, 12 Sep 2023 21:08:18 -0700 (PDT) X-Google-Smtp-Source: AGHT+IGCOYvgfiafUw9FZPhkE+qNPWZFPVprsA50XyFK4jrZwYICAgenFQJrv3w2d6Vy9CJSNeRv X-Received: by 2002:a17:907:75d7:b0:9a5:a543:2744 with SMTP id jl23-20020a17090775d700b009a5a5432744mr1935600ejc.33.1694578097942; Tue, 12 Sep 2023 21:08:17 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1694578097; cv=none; d=google.com; s=arc-20160816; b=h0cSEgmCiyFG26a5o5KrkuNvMFdB4mrWY/g3+9J4Vuhk2khdiRgH3HiWy28Sa6QY7z CKI+sGb3+BcykIMvPqLAkuITc8T1SFdbmHZBRWXnu38cbbrXB+p1aQQDgYQunU0gnrrj ry8vUvrxwgB4DA6ro43ayj+bpMNvOnNpqP2Fdt7ew5oy370erEcK6XxuHulGfVsu03Lk 2O3uNFjN6IliwFZBrjqUMvuYdyWeuobpNlTK22HNyRPxB/GGeOS6MTBk0GvGXuSKWrzY 4wQEo7NqQbcLChHsQVyl6eKELd5WODyb0TcuszEyFZ3XWGHhtdGyJhu3Gmh/Ggvl/Z1t 1u0Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:message-id:date:subject:cc:to:from:dmarc-filter :delivered-to; bh=N88qHJd1zvQbGK4tWi2mdVMW/ublix6bOk0KNGKac3g=; fh=3pFUYcpS/27XRzOf17GfR86AuNQu+P1CET04YURgCLs=; b=FJxX/fPDOYL2OgryiMqOuYpNsqSzqHmo/Wy1OQUxkWZY4zfBxx5x6ShNoBU0puJeOt aWC7uHa1hEC6iP4F7iNrARKkXLYsY+PIOrhOvFtPUTrzq7XT+r1AZOwXTZjyIR21QVF2 HQSRhZU472/5H16psgGhrEUuHqHsyQ+mFMVlvhZzWtwBIwQDtc8vqFywzUoYvx7nWC/p QXCjiIo2JsNKjgjUDT4PwstuvQDSViXCjY9tFUGfIepUuhA7WXzIXWw7FmKp42YIV400 br+mc/UHXdSFIritSVnZ6JkB2cVr0LzHJNHWWW0toJXTvXHKDMtd+S5x7X6cPWETOk/9 vvbQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) smtp.mailfrom="gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org" Received: from server2.sourceware.org (server2.sourceware.org. [2620:52:3:1:0:246e:9693:128c]) by mx.google.com with ESMTPS id l11-20020a170906938b00b009938cb10548si9816101ejx.549.2023.09.12.21.08.17 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 12 Sep 2023 21:08:17 -0700 (PDT) Received-SPF: pass (google.com: domain of gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) client-ip=2620:52:3:1:0:246e:9693:128c; Authentication-Results: mx.google.com; spf=pass (google.com: domain of gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) smtp.mailfrom="gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org" Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 7FD45394D893 for ; Wed, 13 Sep 2023 03:44:39 +0000 (GMT) X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from eggs.gnu.org (eggs.gnu.org [IPv6:2001:470:142:3::10]) by sourceware.org (Postfix) with ESMTPS id 27DC8382CF7F for ; Wed, 13 Sep 2023 03:43:52 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 27DC8382CF7F Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=loongson.cn Authentication-Results: sourceware.org; spf=fail smtp.mailfrom=loongson.cn Received: from mail.loongson.cn ([114.242.206.163]) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qgGmw-0005gx-SS for gcc-patches@gcc.gnu.org; Tue, 12 Sep 2023 23:43:51 -0400 Received: from loongson.cn (unknown [10.10.130.252]) by gateway (Coremail) with SMTP id _____8AxV_HmLwFluDEmAA--.9353S3; Wed, 13 Sep 2023 11:43:34 +0800 (CST) Received: from slurm-master.loongson.cn (unknown [10.10.130.252]) by localhost.localdomain (Coremail) with SMTP id AQAAf8CxfNzkLwFl+xECAA--.3660S4; Wed, 13 Sep 2023 11:43:32 +0800 (CST) From: Xiaolong Chen To: gcc-patches@gcc.gnu.org Cc: xry111@xry111.site, i@xen0n.name, xuchenghua@loongson.cn, chenglulu@loongson.cn, Xiaolong Chen Subject: [PATCH v4 20/22] LoongArch: Add tests for ASX vector xvfcmp{saf/seq/sle/slt/sne/sor/sun} instructions. Date: Wed, 13 Sep 2023 11:43:28 +0800 Message-Id: <20230913034330.8377-1-chenxiaolong@loongson.cn> X-Mailer: git-send-email 2.20.1 MIME-Version: 1.0 X-CM-TRANSID: AQAAf8CxfNzkLwFl+xECAA--.3660S4 X-CM-SenderInfo: hfkh05xldrz0tqj6z05rqj20fqof0/1tbiAQANBWUBHCIBXQAAsP X-Coremail-Antispam: 1Uk129KBj93XoWruFW5Zw47KF1DWFyrtw18p5X_Xr45Wr4xpr 1xJr13GayIkayUtrWUtFWaqr4qyr40ya4DJF17G3sru3Z5KF9Iqr47ArWUAr1kJF4UZF13 tFs8Jw48trWUGwcCm3ZEXasCq-sJn29KB7ZKAUJUUUU8529EdanIXcx71UUUUU7KY7ZEXa sCq-sGcSsGvfJ3Ic02F40EFcxC0VAKzVAqx4xG6I80ebIjqfuFe4nvWSU5nxnvy29KBjDU 0xBIdaVrnRJUUU92b4IE77IF4wAFF20E14v26r1j6r4UM7CY07I20VC2zVCF04k26cxKx2 IYs7xG6rWj6s0DM7CIcVAFz4kK6r106r15M28lY4IEw2IIxxk0rwA2F7IY1VAKz4vEj48v e4kI8wA2z4x0Y4vE2Ix0cI8IcVAFwI0_tr0E3s1l84ACjcxK6xIIjxv20xvEc7CjxVAFwI 0_Gr1j6F4UJwA2z4x0Y4vEx4A2jsIE14v26r4UJVWxJr1l84ACjcxK6I8E87Iv6xkF7I0E 14v26r4UJVWxJr1le2I262IYc4CY6c8Ij28IcVAaY2xG8wAqjxCEc2xF0cIa020Ex4CE44 I27wAqx4xG64xvF2IEw4CE5I8CrVC2j2WlYx0E2Ix0cI8IcVAFwI0_Gryq6s0DMcIj6I8E 87Iv67AKxVW8Jr0_Cr1UMcvjeVCFs4IE7xkEbVWUJVW8JwACjcxG0xvY0x0EwIxGrwACjc xG6xCI17CEII8vrVW3JVW8Jr1l42xK82IYc2Ij64vIr41l4I8I3I0E4IkC6x0Yz7v_Jr0_ Gr1lx2IqxVAqx4xG67AKxVWUJVWUGwC20s026x8GjcxK67AKxVWUGVWUWwC2zVAF1VAY17 CE14v26r126r1DMIIYrxkI7VAKI48JMIIF0xvE2Ix0cI8IcVAFwI0_tr0E3s1lIxAIcVC0 I7IYx2IY6xkF7I0E14v26r4UJVWxJr1lIxAIcVCF04k26cxKx2IYs7xG6r1j6r1xMIIF0x vEx4A2jsIE14v26r4UJVWxJr1lIxAIcVC2z280aVCY1x0267AKxVW8Jr0_Cr1UYxBIdaVF xhVjvjDU0xZFpf9x07bsJP_UUUUU= Received-SPF: pass client-ip=114.242.206.163; envelope-from=chenxiaolong@loongson.cn; helo=mail.loongson.cn X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Status: No, score=-13.8 required=5.0 tests=BAYES_00, GIT_PATCH_0, KAM_DMARC_STATUS, KAM_SHORT, SPF_FAIL, SPF_HELO_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org Sender: "Gcc-patches" X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1776893923401310038 X-GMAIL-MSGID: 1776893923401310038 gcc/testsuite/ChangeLog: * gcc.target/loongarch/vector/lasx/lasx-xvfcmp_saf_s.c: New test. * gcc.target/loongarch/vector/lasx/lasx-xvfcmp_seq_s.c: New test. * gcc.target/loongarch/vector/lasx/lasx-xvfcmp_sle_s.c: New test. * gcc.target/loongarch/vector/lasx/lasx-xvfcmp_slt_s.c: New test. * gcc.target/loongarch/vector/lasx/lasx-xvfcmp_sne_s.c: New test. * gcc.target/loongarch/vector/lasx/lasx-xvfcmp_sor_s.c: New test. * gcc.target/loongarch/vector/lasx/lasx-xvfcmp_sun_s.c: New test. --- .../loongarch/vector/lasx/lasx-xvfcmp_saf_s.c | 424 ++++++ .../loongarch/vector/lasx/lasx-xvfcmp_seq_s.c | 924 +++++++++++++ .../loongarch/vector/lasx/lasx-xvfcmp_sle_s.c | 627 +++++++++ .../loongarch/vector/lasx/lasx-xvfcmp_slt_s.c | 1212 +++++++++++++++++ .../loongarch/vector/lasx/lasx-xvfcmp_sne_s.c | 756 ++++++++++ .../loongarch/vector/lasx/lasx-xvfcmp_sor_s.c | 438 ++++++ .../loongarch/vector/lasx/lasx-xvfcmp_sun_s.c | 363 +++++ 7 files changed, 4744 insertions(+) create mode 100644 gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_saf_s.c create mode 100644 gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_seq_s.c create mode 100644 gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_sle_s.c create mode 100644 gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_slt_s.c create mode 100644 gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_sne_s.c create mode 100644 gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_sor_s.c create mode 100644 gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_sun_s.c diff --git a/gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_saf_s.c b/gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_saf_s.c new file mode 100644 index 00000000000..23cbc4bf024 --- /dev/null +++ b/gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_saf_s.c @@ -0,0 +1,424 @@ +/* { dg-do run } */ +/* { dg-options "-mlasx -w -fno-strict-aliasing" } */ +#include "../simd_correctness_check.h" +#include + +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_saf_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]) = 0x0eb7aaaa; + *((int *)&__m256_op1[6]) = 0xa6e6ac80; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x0eb7aaaa; + *((int *)&__m256_op1[2]) = 0xa6e6ac80; + *((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_saf_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x3fff3fff; + *((int *)&__m256_op0[6]) = 0x3fff3fff; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x3fff3fff; + *((int *)&__m256_op0[3]) = 0x3fff3fff; + *((int *)&__m256_op0[2]) = 0x3fff3fff; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x3fff3fff; + *((int *)&__m256_op1[7]) = 0x017e01fe; + *((int *)&__m256_op1[6]) = 0x01fe01fe; + *((int *)&__m256_op1[5]) = 0x05860606; + *((int *)&__m256_op1[4]) = 0x01fe0202; + *((int *)&__m256_op1[3]) = 0x017e01fe; + *((int *)&__m256_op1[2]) = 0x01fe0000; + *((int *)&__m256_op1[1]) = 0x05860606; + *((int *)&__m256_op1[0]) = 0x01fe0004; + *((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_saf_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x0000003f; + *((int *)&__m256_op0[6]) = 0x00390035; + *((int *)&__m256_op0[5]) = 0x8015003f; + *((int *)&__m256_op0[4]) = 0x0006001f; + *((int *)&__m256_op0[3]) = 0x0000003f; + *((int *)&__m256_op0[2]) = 0x00390035; + *((int *)&__m256_op0[1]) = 0x8015003f; + *((int *)&__m256_op0[0]) = 0x0006001f; + *((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_saf_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]) = 0xefdfefdf; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0xefdfefdf; + *((int *)&__m256_op1[4]) = 0xefdfefdf; + *((int *)&__m256_op1[3]) = 0xefdfefdf; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0xefdfefdf; + *((int *)&__m256_op1[0]) = 0xefdfefdf; + *((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_saf_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]) = 0x00ff00ff; + *((int *)&__m256_op1[6]) = 0x00ff00ff; + *((int *)&__m256_op1[5]) = 0x00ff00ff; + *((int *)&__m256_op1[4]) = 0x00ff00ff; + *((int *)&__m256_op1[3]) = 0x00ff00ff; + *((int *)&__m256_op1[2]) = 0x00ff00ff; + *((int *)&__m256_op1[1]) = 0x00ff00ff; + *((int *)&__m256_op1[0]) = 0x00ff00ff; + *((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_saf_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000001; + *((int *)&__m256_op0[6]) = 0x7bfffff0; + *((int *)&__m256_op0[5]) = 0x00000001; + *((int *)&__m256_op0[4]) = 0x80007fe8; + *((int *)&__m256_op0[3]) = 0x00000001; + *((int *)&__m256_op0[2]) = 0x7bfffff0; + *((int *)&__m256_op0[1]) = 0x00000001; + *((int *)&__m256_op0[0]) = 0x80007fe8; + *((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_saf_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x02020102; + *((int *)&__m256_op0[6]) = 0x02020102; + *((int *)&__m256_op0[5]) = 0x02020102; + *((int *)&__m256_op0[4]) = 0x02020102; + *((int *)&__m256_op0[3]) = 0x02020102; + *((int *)&__m256_op0[2]) = 0x02020102; + *((int *)&__m256_op0[1]) = 0x02020102; + *((int *)&__m256_op0[0]) = 0x02020102; + *((int *)&__m256_op1[7]) = 0x3e800000; + *((int *)&__m256_op1[6]) = 0x3e800000; + *((int *)&__m256_op1[5]) = 0x3e800000; + *((int *)&__m256_op1[4]) = 0x3e800000; + *((int *)&__m256_op1[3]) = 0x3e800000; + *((int *)&__m256_op1[2]) = 0x3e800000; + *((int *)&__m256_op1[1]) = 0x3e800000; + *((int *)&__m256_op1[0]) = 0x3e800000; + *((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_saf_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00ff00ff; + *((int *)&__m256_op0[6]) = 0x00ff00ff; + *((int *)&__m256_op0[5]) = 0x00ff00ff; + *((int *)&__m256_op0[4]) = 0x00ff00ff; + *((int *)&__m256_op0[3]) = 0x00ff00ff; + *((int *)&__m256_op0[2]) = 0x00ff00ff; + *((int *)&__m256_op0[1]) = 0x00ff00ff; + *((int *)&__m256_op0[0]) = 0x00ff00ff; + *((int *)&__m256_op1[7]) = 0xffffffff; + *((int *)&__m256_op1[6]) = 0xffffffff; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0xffffffff; + *((int *)&__m256_op1[3]) = 0xffffffff; + *((int *)&__m256_op1[2]) = 0xffffffff; + *((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_saf_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x80000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0xff88ff88; + *((int *)&__m256_op0[3]) = 0x80000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0xff88ff88; + *((int *)&__m256_op1[7]) = 0xfe01fe01; + *((int *)&__m256_op1[6]) = 0x0000fd02; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x3fc03fc0; + *((int *)&__m256_op1[3]) = 0xfe01fe01; + *((int *)&__m256_op1[2]) = 0x0000fd02; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x3fc03fc0; + *((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_saf_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]) = 0xffffb2f6; + *((int *)&__m256_op0[4]) = 0x00006f48; + *((int *)&__m256_op0[3]) = 0x00000001; + *((int *)&__m256_op0[2]) = 0x00000001; + *((int *)&__m256_op0[1]) = 0xffffb2f6; + *((int *)&__m256_op0[0]) = 0x00006f48; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x000000ff; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x000000ff; + *((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_saf_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_saf_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]) = 0x00100010; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00100010; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00100010; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00100010; + *((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_saf_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]) = 0x0000000000000020; + *((unsigned long *)&__m256d_op1[2]) = 0x0020000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000020; + *((unsigned long *)&__m256d_op1[0]) = 0x0020000000000000; + *((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_saf_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]) = 0x00000000ffffffff; + *((unsigned long *)&__m256d_op1[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[2]) = 0xfffffefefffffefe; + *((unsigned long *)&__m256d_op1[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[0]) = 0xfffffefe00000000; + *((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_saf_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_saf_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_saf_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000010; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000010; + *((unsigned long *)&__m256d_op1[3]) = 0x000408080c111414; + *((unsigned long *)&__m256d_op1[2]) = 0x000408080c111414; + *((unsigned long *)&__m256d_op1[1]) = 0x000408080c111414; + *((unsigned long *)&__m256d_op1[0]) = 0x000408080c111414; + *((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_saf_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x00000000ffdbbbcf; + *((unsigned long *)&__m256d_op0[2]) = 0x00000000ffb8579f; + *((unsigned long *)&__m256d_op0[1]) = 0x00000000ffdbbbcf; + *((unsigned long *)&__m256d_op0[0]) = 0x00000000ffb8579f; + *((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_saf_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000200000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000004000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000200000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000004000; + *((unsigned long *)&__m256d_op1[3]) = 0x3fffbfff80000000; + *((unsigned long *)&__m256d_op1[2]) = 0x00004000007f8000; + *((unsigned long *)&__m256d_op1[1]) = 0x3fffbfff80000000; + *((unsigned long *)&__m256d_op1[0]) = 0x00004000007f8000; + *((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_saf_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_seq_s.c b/gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_seq_s.c new file mode 100644 index 00000000000..6641d2c5848 --- /dev/null +++ b/gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_seq_s.c @@ -0,0 +1,924 @@ +/* { dg-do run } */ +/* { dg-options "-mlasx -w -fno-strict-aliasing" } */ +#include "../simd_correctness_check.h" +#include + +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_seq_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]) = 0x59800000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x59800000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x41d66000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x41d66000; + *((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_seq_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_seq_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]) = 0xffffffff; + *((int *)&__m256_op0[0]) = 0xa41aa42e; + *((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]) = 0xffffffff; + *((int *)&__m256_op1[0]) = 0xa41aa42e; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0x00000000ffffffff; + __m256i_out = __lasx_xvfcmp_seq_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]) = 0x83f95466; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0xffffffff; + *((int *)&__m256_op0[1]) = 0x01010101; + *((int *)&__m256_op0[0]) = 0x00005400; + *((int *)&__m256_op1[7]) = 0xffffffff; + *((int *)&__m256_op1[6]) = 0xfefefeff; + *((int *)&__m256_op1[5]) = 0xffffffff; + *((int *)&__m256_op1[4]) = 0xff295329; + *((int *)&__m256_op1[3]) = 0xffffffff; + *((int *)&__m256_op1[2]) = 0xfefefeff; + *((int *)&__m256_op1[1]) = 0xffffffff; + *((int *)&__m256_op1[0]) = 0xff295329; + *((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_seq_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_seq_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]) = 0x111ebb78; + *((int *)&__m256_op1[6]) = 0x4f9c4100; + *((int *)&__m256_op1[5]) = 0x1c386546; + *((int *)&__m256_op1[4]) = 0x809f3b50; + *((int *)&__m256_op1[3]) = 0x111ebb78; + *((int *)&__m256_op1[2]) = 0x4f9bf1ac; + *((int *)&__m256_op1[1]) = 0x21f6050d; + *((int *)&__m256_op1[0]) = 0x955d3f68; + *((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_seq_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]) = 0xffff0001; + *((int *)&__m256_op1[3]) = 0xffffffff; + *((int *)&__m256_op1[2]) = 0xffffffff; + *((int *)&__m256_op1[1]) = 0xffff0000; + *((int *)&__m256_op1[0]) = 0xffff0001; + *((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_seq_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_seq_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_seq_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00000100; + *((int *)&__m256_op0[5]) = 0x00000002; + *((int *)&__m256_op0[4]) = 0xff910072; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000100; + *((int *)&__m256_op0[1]) = 0x00000002; + *((int *)&__m256_op0[0]) = 0xff910072; + *((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_seq_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]) = 0xffff97a2; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0xffff97a2; + *((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_seq_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_sueq_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_sueq_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x55555555; + *((int *)&__m256_op0[6]) = 0x3f800000; + *((int *)&__m256_op0[5]) = 0x55555555; + *((int *)&__m256_op0[4]) = 0x80000000; + *((int *)&__m256_op0[3]) = 0x55555555; + *((int *)&__m256_op0[2]) = 0x3f800000; + *((int *)&__m256_op0[1]) = 0x55555555; + *((int *)&__m256_op0[0]) = 0x80000000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x0001fffe; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x0001fffe; + *((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_sueq_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00018002; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000002; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00018002; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000002; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00030000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00030000; + *((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_sueq_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0xffffffff; + *((int *)&__m256_op0[6]) = 0xfff70156; + *((int *)&__m256_op0[5]) = 0xffffffff; + *((int *)&__m256_op0[4]) = 0xfff70156; + *((int *)&__m256_op0[3]) = 0xffffffff; + *((int *)&__m256_op0[2]) = 0xfff70156; + *((int *)&__m256_op0[1]) = 0xffffffff; + *((int *)&__m256_op0[0]) = 0xfff70156; + *((int *)&__m256_op1[7]) = 0x7fefffff; + *((int *)&__m256_op1[6]) = 0xffffffff; + *((int *)&__m256_op1[5]) = 0x7fefffff; + *((int *)&__m256_op1[4]) = 0xffffffff; + *((int *)&__m256_op1[3]) = 0x7fefffff; + *((int *)&__m256_op1[2]) = 0xffffffff; + *((int *)&__m256_op1[1]) = 0x7fefffff; + *((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_sueq_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_sueq_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]) = 0x0000ff70; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x0000ff70; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000100; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000100; + *((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_sueq_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]) = 0x00000002; + *((int *)&__m256_op1[4]) = 0x00000008; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000002; + *((int *)&__m256_op1[0]) = 0x00000008; + *((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_sueq_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x4393a0a5; + *((int *)&__m256_op0[6]) = 0xbc606060; + *((int *)&__m256_op0[5]) = 0x43b32fee; + *((int *)&__m256_op0[4]) = 0xa9000000; + *((int *)&__m256_op0[3]) = 0x4393a0a5; + *((int *)&__m256_op0[2]) = 0xbc606060; + *((int *)&__m256_op0[1]) = 0x43b32fee; + *((int *)&__m256_op0[0]) = 0xa9000000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000001; + *((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_sueq_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]) = 0x00000003; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000003; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000003; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000003; + *((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_sueq_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0xfffeb664; + *((int *)&__m256_op0[6]) = 0x007ffd61; + *((int *)&__m256_op0[5]) = 0xfffe97a1; + *((int *)&__m256_op0[4]) = 0xdf5b41b0; + *((int *)&__m256_op0[3]) = 0xfffeb664; + *((int *)&__m256_op0[2]) = 0x007ffd61; + *((int *)&__m256_op0[1]) = 0xfffe97a1; + *((int *)&__m256_op0[0]) = 0xdf5b41b0; + *((int *)&__m256_op1[7]) = 0xfffeb683; + *((int *)&__m256_op1[6]) = 0x9ffffd80; + *((int *)&__m256_op1[5]) = 0xfffe97c0; + *((int *)&__m256_op1[4]) = 0x20010001; + *((int *)&__m256_op1[3]) = 0xfffeb683; + *((int *)&__m256_op1[2]) = 0x9ffffd80; + *((int *)&__m256_op1[1]) = 0xfffe97c0; + *((int *)&__m256_op1[0]) = 0x20010001; + *((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_sueq_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x053531f7c6334908; + *((unsigned long *)&__m256d_op0[2]) = 0x8e41dcbff87e7900; + *((unsigned long *)&__m256d_op0[1]) = 0x12eb8332e3e15093; + *((unsigned long *)&__m256d_op0[0]) = 0x9a7491f9e016ccd4; + *((unsigned long *)&__m256d_op1[3]) = 0x345947dcd192b5c4; + *((unsigned long *)&__m256d_op1[2]) = 0x182100c72280e687; + *((unsigned long *)&__m256d_op1[1]) = 0x4a1c80bb8e892e00; + *((unsigned long *)&__m256d_op1[0]) = 0x063ecfbd58abc4b7; + *((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_seq_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]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_seq_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_seq_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0xffffff90ffffff80; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0xffffff90ffffff80; + *((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_seq_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]) = 0xffff0002fffeffff; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0xffff0002fffeffff; + *((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_seq_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_seq_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_seq_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]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_seq_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]) = 0x000000010486048c; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000100000006; + *((unsigned long *)&__m256d_op1[1]) = 0x000000010486048c; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000100000006; + *((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_seq_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0xff00ff00ff00ef32; + *((unsigned long *)&__m256d_op0[2]) = 0xff00ff00ff00ef32; + *((unsigned long *)&__m256d_op0[1]) = 0xff00ff00ff00ef32; + *((unsigned long *)&__m256d_op0[0]) = 0xff00ff00ff00ef32; + *((unsigned long *)&__m256d_op1[3]) = 0x00ff00ff00ff00ff; + *((unsigned long *)&__m256d_op1[2]) = 0x00ff00ff00ef0120; + *((unsigned long *)&__m256d_op1[1]) = 0x00ff00ff00ff00ff; + *((unsigned long *)&__m256d_op1[0]) = 0x00ff00ff00ef0120; + *((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_seq_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_seq_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0xff00ffff00000001; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000002; + *((unsigned long *)&__m256d_op0[1]) = 0xff00ffff00000001; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000002; + *((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_seq_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_seq_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]) = 0x04e8296f08181818; + *((unsigned long *)&__m256d_op1[2]) = 0x032feea900000000; + *((unsigned long *)&__m256d_op1[1]) = 0x04e8296f08181818; + *((unsigned long *)&__m256d_op1[0]) = 0x032feea900000000; + *((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_seq_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0xffffffffff1cff1c; + *((unsigned long *)&__m256d_op0[2]) = 0xffffffffff1cff1c; + *((unsigned long *)&__m256d_op0[1]) = 0xffffffffff1cff1c; + *((unsigned long *)&__m256d_op0[0]) = 0xffffffffff1cff1c; + *((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_seq_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x1400080008000000; + *((unsigned long *)&__m256d_op0[2]) = 0x1400080008000000; + *((unsigned long *)&__m256d_op0[1]) = 0x1400080008000000; + *((unsigned long *)&__m256d_op0[0]) = 0x1400080008000000; + *((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_seq_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_seq_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]) = 0x000000000000ff80; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x000000000000ffff; + *((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_sueq_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]) = 0xffffffffffffffff; + *((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_sueq_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_sueq_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0xc1be9e9e9f000000; + *((unsigned long *)&__m256d_op0[2]) = 0x41d8585858400000; + *((unsigned long *)&__m256d_op0[1]) = 0xc1be9e9e9f000000; + *((unsigned long *)&__m256d_op0[0]) = 0x41d8585858400000; + *((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_sueq_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_sueq_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]) = 0xffff040000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0xffff040000000000; + *((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_sueq_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]) = 0x01fe01fe01fe01fe; + *((unsigned long *)&__m256d_op1[2]) = 0x01fe01fe01fe01fe; + *((unsigned long *)&__m256d_op1[1]) = 0x01fe01fe01fe01fe; + *((unsigned long *)&__m256d_op1[0]) = 0x01fe01fe01fe01fe; + *((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_sueq_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0xffffe045fffffeff; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x00000000ffffff7d; + *((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]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_sueq_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_sle_s.c b/gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_sle_s.c new file mode 100644 index 00000000000..d25fc25da24 --- /dev/null +++ b/gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_sle_s.c @@ -0,0 +1,627 @@ +/* { dg-do run } */ +/* { dg-options "-mlasx -w -fno-strict-aliasing" } */ +#include "../simd_correctness_check.h" +#include + +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]) = 0xffffff90; + *((int *)&__m256_op0[4]) = 0xffffff80; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0xffffff90; + *((int *)&__m256_op0[0]) = 0xffffff80; + *((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_sle_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_sle_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0xfefee0e3; + *((int *)&__m256_op0[6]) = 0xfefefe00; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0xfefee0e3; + *((int *)&__m256_op0[2]) = 0xfefefe00; + *((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_sle_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_sle_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_sle_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_sle_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x8000000a; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x8000000a; + *((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_sule_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]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_sule_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]) = 0x01010101; + *((int *)&__m256_op0[3]) = 0x01010101; + *((int *)&__m256_op0[2]) = 0x01010101; + *((int *)&__m256_op0[1]) = 0x01010101; + *((int *)&__m256_op0[0]) = 0x01010101; + *((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_sule_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]) = 0xffd8ffc7; + *((int *)&__m256_op0[4]) = 0xffdaff8a; + *((int *)&__m256_op0[3]) = 0xffffffff; + *((int *)&__m256_op0[2]) = 0xffffffff; + *((int *)&__m256_op0[1]) = 0xffd8ffc7; + *((int *)&__m256_op0[0]) = 0xffdaff8a; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0xffffb3b4; + *((int *)&__m256_op1[5]) = 0xfffffff5; + *((int *)&__m256_op1[4]) = 0xffff4738; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0xffffb3b4; + *((int *)&__m256_op1[1]) = 0xfffffff5; + *((int *)&__m256_op1[0]) = 0xffff4738; + *((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_sule_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_sule_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]) = 0xf7f7f7f7; + *((int *)&__m256_op1[6]) = 0xf7f7f7f8; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0xf7f7f7f7; + *((int *)&__m256_op1[2]) = 0xf7f7f7f8; + *((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_sule_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_sule_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]) = 0x5fa00000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x5fa00000; + *((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_sule_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x97541c5897541c58; + *((unsigned long *)&__m256d_op0[2]) = 0x97541c5897541c58; + *((unsigned long *)&__m256d_op0[1]) = 0x97541c5897541c58; + *((unsigned long *)&__m256d_op0[0]) = 0x97541c5897541c58; + *((unsigned long *)&__m256d_op1[3]) = 0x97541c5897541c58; + *((unsigned long *)&__m256d_op1[2]) = 0x97541c5897541c58; + *((unsigned long *)&__m256d_op1[1]) = 0x97541c5897541c58; + *((unsigned long *)&__m256d_op1[0]) = 0x97541c5897541c58; + *((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_sle_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x00000105fffffefb; + *((unsigned long *)&__m256d_op0[2]) = 0xffffff02000000fe; + *((unsigned long *)&__m256d_op0[1]) = 0x00000105fffffefb; + *((unsigned long *)&__m256d_op0[0]) = 0xffffff02000000fe; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x00000000000000fe; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x00000000000000fe; + *((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_sle_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000020afefb1; + *((unsigned long *)&__m256d_op0[2]) = 0x7f350104f7ebffff; + *((unsigned long *)&__m256d_op0[1]) = 0x00000000003fffc1; + *((unsigned long *)&__m256d_op0[0]) = 0x005c0003fff9ffff; + *((unsigned long *)&__m256d_op1[3]) = 0x000000000000ffff; + *((unsigned long *)&__m256d_op1[2]) = 0x0209fefb08140000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0003fffc00060000; + *((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_sle_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]) = 0xfffdfffdfffdfffd; + *((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_sle_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000008; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000008; + *((unsigned long *)&__m256d_op1[3]) = 0x00000003f8000004; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x00000003f8000004; + *((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_sle_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000003; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000010001; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000003; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000010001; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000003; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000010001; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000003; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000010001; + *((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_sle_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000080; + *((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]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_sle_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_sle_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_sle_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0xfffffffe00000001; + *((unsigned long *)&__m256d_op0[2]) = 0xfffffffe00000001; + *((unsigned long *)&__m256d_op0[1]) = 0xfffffffe00000001; + *((unsigned long *)&__m256d_op0[0]) = 0xfffffffe00000001; + *((unsigned long *)&__m256d_op1[3]) = 0x8000800080008000; + *((unsigned long *)&__m256d_op1[2]) = 0x800000ff800000ff; + *((unsigned long *)&__m256d_op1[1]) = 0x8000800080008000; + *((unsigned long *)&__m256d_op1[0]) = 0x800000ff800000ff; + *((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_sle_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000010100000101; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000010100000101; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000100000001; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000100000001; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000100000001; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000100000001; + *((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_sle_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0xfffeb6839ffffd80; + *((unsigned long *)&__m256d_op0[2]) = 0xfffe97c020010001; + *((unsigned long *)&__m256d_op0[1]) = 0xfffeb6839ffffd80; + *((unsigned long *)&__m256d_op0[0]) = 0xfffe97c020010001; + *((unsigned long *)&__m256d_op1[3]) = 0xfffeb6839ffffd80; + *((unsigned long *)&__m256d_op1[2]) = 0xfffe97c020010001; + *((unsigned long *)&__m256d_op1[1]) = 0xfffeb6839ffffd80; + *((unsigned long *)&__m256d_op1[0]) = 0xfffe97c020010001; + *((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_sle_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000001; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000001; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000001; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000001; + *((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_sle_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000ff0000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000ff0000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000ff0000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000ff0000; + *((unsigned long *)&__m256d_op1[3]) = 0x001f001fffffffff; + *((unsigned long *)&__m256d_op1[2]) = 0xffe0ffe000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x001f001fffffffff; + *((unsigned long *)&__m256d_op1[0]) = 0xffe0ffe000000000; + *((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_sle_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0xfc00000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0xfc00000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0xfc00000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0xfc00000000000000; + *((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_sule_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op0[2]) = 0xf5f5f5f5f5f5f5f5; + *((unsigned long *)&__m256d_op0[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op0[0]) = 0xf5f5f5f5f5f5f5f5; + *((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_sule_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x8d8d72728d8d7272; + *((unsigned long *)&__m256d_op0[2]) = 0x8d8d72728d8d8d8d; + *((unsigned long *)&__m256d_op0[1]) = 0x8d8d72728d8d7272; + *((unsigned long *)&__m256d_op0[0]) = 0x8d8d72728d8d8d8d; + *((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_sule_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_sule_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op0[2]) = 0xffff010100000001; + *((unsigned long *)&__m256d_op0[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op0[0]) = 0xffff010100000001; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x00000000ffffffff; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x00000000ffffffff; + *((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_sule_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_slt_s.c b/gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_slt_s.c new file mode 100644 index 00000000000..8210f749b11 --- /dev/null +++ b/gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_slt_s.c @@ -0,0 +1,1212 @@ +/* { dg-do run } */ +/* { dg-options "-mlasx -w -fno-strict-aliasing" } */ +#include "../simd_correctness_check.h" +#include + +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_slt_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]) = 0x00000101; + *((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_slt_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0xc08f7800; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0xffffffff; + *((int *)&__m256_op0[4]) = 0xfffffefd; + *((int *)&__m256_op0[3]) = 0xc08f7800; + *((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]) = 0x00000101; + *((int *)&__m256_op1[4]) = 0x00000102; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000101; + *((int *)&__m256_op1[0]) = 0x00000102; + *((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_slt_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_slt_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_slt_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]) = 0x001f1f3e; + *((int *)&__m256_op1[6]) = 0x3e1f1f00; + *((int *)&__m256_op1[5]) = 0x00030609; + *((int *)&__m256_op1[4]) = 0x09060300; + *((int *)&__m256_op1[3]) = 0x001f1f3e; + *((int *)&__m256_op1[2]) = 0x3e1f1f00; + *((int *)&__m256_op1[1]) = 0x00030609; + *((int *)&__m256_op1[0]) = 0x09060300; + *((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_slt_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]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000001; + *((int *)&__m256_op0[2]) = 0x00000001; + *((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_slt_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x7fffffff; + *((int *)&__m256_op0[6]) = 0x7fffffff; + *((int *)&__m256_op0[5]) = 0x7fffffff; + *((int *)&__m256_op0[4]) = 0x7fffffff; + *((int *)&__m256_op0[3]) = 0x7fffffff; + *((int *)&__m256_op0[2]) = 0x7fffffff; + *((int *)&__m256_op0[1]) = 0x7fffffff; + *((int *)&__m256_op0[0]) = 0x7fffffff; + *((int *)&__m256_op1[7]) = 0x20fc0000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x20fc0000; + *((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_slt_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]) = 0xffff0400; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0xffff0400; + *((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_slt_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]) = 0x08050501; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x08050501; + *((int *)&__m256_op1[7]) = 0x90909090; + *((int *)&__m256_op1[6]) = 0x90909090; + *((int *)&__m256_op1[5]) = 0x90909090; + *((int *)&__m256_op1[4]) = 0x90909090; + *((int *)&__m256_op1[3]) = 0x90909090; + *((int *)&__m256_op1[2]) = 0x90909090; + *((int *)&__m256_op1[1]) = 0x90909090; + *((int *)&__m256_op1[0]) = 0x90909090; + *((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_slt_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_slt_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00001ff8; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0xd8d8c000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00001ff8; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0xd8d8c000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x02020102; + *((int *)&__m256_op1[6]) = 0x02020102; + *((int *)&__m256_op1[5]) = 0x02020102; + *((int *)&__m256_op1[4]) = 0x02020102; + *((int *)&__m256_op1[3]) = 0x02020102; + *((int *)&__m256_op1[2]) = 0x02020102; + *((int *)&__m256_op1[1]) = 0x02020102; + *((int *)&__m256_op1[0]) = 0x02020102; + *((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_slt_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00ff00ff; + *((int *)&__m256_op0[6]) = 0x00ff00ff; + *((int *)&__m256_op0[5]) = 0x00ff00ff; + *((int *)&__m256_op0[4]) = 0x00ff00ff; + *((int *)&__m256_op0[3]) = 0x00ff00ff; + *((int *)&__m256_op0[2]) = 0x00ff00ff; + *((int *)&__m256_op0[1]) = 0x00ff00ff; + *((int *)&__m256_op0[0]) = 0x00ff00ff; + *((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_slt_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]) = 0xffe00000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000001; + *((int *)&__m256_op1[2]) = 0xffe00000; + *((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_slt_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x60000108; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x01060005; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x7fef0001; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000001; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0xfffffff8; + *((int *)&__m256_op1[4]) = 0xfffffff8; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0xfffffff8; + *((int *)&__m256_op1[0]) = 0xfc000000; + *((unsigned long *)&__m256i_result[3]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0x00000000ffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffff00000000; + __m256i_out = __lasx_xvfcmp_sult_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x327f0101; + *((int *)&__m256_op0[6]) = 0x01010102; + *((int *)&__m256_op0[5]) = 0x63000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x327f0101; + *((int *)&__m256_op0[2]) = 0x01010102; + *((int *)&__m256_op0[1]) = 0x63000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0xce7fffff; + *((int *)&__m256_op1[6]) = 0xfffffffe; + *((int *)&__m256_op1[5]) = 0x63000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0xce7fffff; + *((int *)&__m256_op1[2]) = 0xfffffffe; + *((int *)&__m256_op1[1]) = 0x63000000; + *((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_sult_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]) = 0x59800000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x59800000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x0eb7aaaa; + *((int *)&__m256_op1[6]) = 0xa6e6ac80; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x0eb7aaaa; + *((int *)&__m256_op1[2]) = 0xa6e6ac80; + *((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_sult_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]) = 0x00000007; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x00000007; + *((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_sult_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]) = 0xdbc80000; + *((int *)&__m256_op1[6]) = 0x00003fff; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0xdbc80000; + *((int *)&__m256_op1[2]) = 0x00003fff; + *((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_sult_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_sult_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]) = 0x00000002; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x0000007f; + *((int *)&__m256_op1[7]) = 0xfffffff3; + *((int *)&__m256_op1[6]) = 0x0000000b; + *((int *)&__m256_op1[5]) = 0xfffffff3; + *((int *)&__m256_op1[4]) = 0xfffffff3; + *((int *)&__m256_op1[3]) = 0xfffffff3; + *((int *)&__m256_op1[2]) = 0x0000000b; + *((int *)&__m256_op1[1]) = 0xfffffff3; + *((int *)&__m256_op1[0]) = 0xfffffff3; + *((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_sult_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x223d76f0; + *((int *)&__m256_op0[6]) = 0x9f3881ff; + *((int *)&__m256_op0[5]) = 0x3870ca8d; + *((int *)&__m256_op0[4]) = 0x013e76a0; + *((int *)&__m256_op0[3]) = 0x223d76f0; + *((int *)&__m256_op0[2]) = 0x9f37e357; + *((int *)&__m256_op0[1]) = 0x43ec0a1b; + *((int *)&__m256_op0[0]) = 0x2aba7ed0; + *((int *)&__m256_op1[7]) = 0x111ebb78; + *((int *)&__m256_op1[6]) = 0x4f9c4100; + *((int *)&__m256_op1[5]) = 0x1c386546; + *((int *)&__m256_op1[4]) = 0x809f3b50; + *((int *)&__m256_op1[3]) = 0x111ebb78; + *((int *)&__m256_op1[2]) = 0x4f9bf1ac; + *((int *)&__m256_op1[1]) = 0x21f6050d; + *((int *)&__m256_op1[0]) = 0x955d3f68; + *((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_sult_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x01010101; + *((int *)&__m256_op0[6]) = 0x27272525; + *((int *)&__m256_op0[5]) = 0x23a2a121; + *((int *)&__m256_op0[4]) = 0x179e951d; + *((int *)&__m256_op0[3]) = 0x01010101; + *((int *)&__m256_op0[2]) = 0x27272525; + *((int *)&__m256_op0[1]) = 0x23a2a121; + *((int *)&__m256_op0[0]) = 0x179e951d; + *((int *)&__m256_op1[7]) = 0x00001251; + *((int *)&__m256_op1[6]) = 0x00005111; + *((int *)&__m256_op1[5]) = 0x00000c4f; + *((int *)&__m256_op1[4]) = 0x00004b0f; + *((int *)&__m256_op1[3]) = 0x00001251; + *((int *)&__m256_op1[2]) = 0x00005111; + *((int *)&__m256_op1[1]) = 0x00000c4f; + *((int *)&__m256_op1[0]) = 0x00004b0f; + *((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_sult_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]) = 0x80000000; + *((int *)&__m256_op1[6]) = 0xff800000; + *((int *)&__m256_op1[5]) = 0x80000000; + *((int *)&__m256_op1[4]) = 0x80000000; + *((int *)&__m256_op1[3]) = 0x80000000; + *((int *)&__m256_op1[2]) = 0xff800000; + *((int *)&__m256_op1[1]) = 0x80000000; + *((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_sult_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]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000001; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000001; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000001; + *((int *)&__m256_op1[7]) = 0x7ff00000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x7ff00000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x7ff00000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x7ff00000; + *((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_sult_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]) = 0x000000ff; + *((int *)&__m256_op1[6]) = 0x000000ff; + *((int *)&__m256_op1[5]) = 0x000000ff; + *((int *)&__m256_op1[4]) = 0x000000ff; + *((int *)&__m256_op1[3]) = 0x000000ff; + *((int *)&__m256_op1[2]) = 0x000000ff; + *((int *)&__m256_op1[1]) = 0x000000ff; + *((int *)&__m256_op1[0]) = 0x000000ff; + *((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_sult_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0xfe01fe01; + *((int *)&__m256_op0[6]) = 0x7e81fd02; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x3fc001fe; + *((int *)&__m256_op0[3]) = 0xfe01fe01; + *((int *)&__m256_op0[2]) = 0x7e81fd02; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x3fc001fe; + *((int *)&__m256_op1[7]) = 0xfe01fe01; + *((int *)&__m256_op1[6]) = 0x7e81fd02; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x3fc001fe; + *((int *)&__m256_op1[3]) = 0xfe01fe01; + *((int *)&__m256_op1[2]) = 0x7e81fd02; + *((int *)&__m256_op1[1]) = 0x00000000; + *((int *)&__m256_op1[0]) = 0x3fc001fe; + *((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_sult_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_sult_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]) = 0x80000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x80000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x80000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x80000000; + *((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_sult_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]) = 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_slt_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0ff80100ffffffff; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0ff80100ffffffff; + *((unsigned long *)&__m256d_op1[3]) = 0x0000017000000080; + *((unsigned long *)&__m256d_op1[2]) = 0xc06500550055ffab; + *((unsigned long *)&__m256d_op1[1]) = 0x0000017000000080; + *((unsigned long *)&__m256d_op1[0]) = 0xc06500550055ffab; + *((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_slt_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x01480000052801a2; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x00000000ffdcff64; + *((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]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_slt_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x7ff0000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x7fefffffffffffff; + *((unsigned long *)&__m256d_op0[0]) = 0xffff000100000000; + *((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_slt_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000fe0100000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000fe0100000000; + *((unsigned long *)&__m256d_op1[3]) = 0x0000001900000019; + *((unsigned long *)&__m256d_op1[2]) = 0x0000001900000019; + *((unsigned long *)&__m256d_op1[1]) = 0x0000001900000019; + *((unsigned long *)&__m256d_op1[0]) = 0x0000001900000019; + *((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_slt_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x000000007fffffff; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x000000007fffffff; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x000000007fffffff; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x000000007fffffff; + *((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_slt_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]) = 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_slt_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x00ff00ffff00ff00; + *((unsigned long *)&__m256d_op0[2]) = 0x00000fff00004542; + *((unsigned long *)&__m256d_op0[1]) = 0x00ff00ffff00ff00; + *((unsigned long *)&__m256d_op0[0]) = 0x00000fff00004542; + *((unsigned long *)&__m256d_op1[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x000000000000ffff; + *((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_slt_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000001; + *((unsigned long *)&__m256d_op0[2]) = 0xfffffffffffffffe; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000001; + *((unsigned long *)&__m256d_op0[0]) = 0xfffffffffffffffe; + *((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_slt_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x000000ff000000ff; + *((unsigned long *)&__m256d_op0[2]) = 0x000000ff000000ff; + *((unsigned long *)&__m256d_op0[1]) = 0x000000ff000000ff; + *((unsigned long *)&__m256d_op0[0]) = 0x000000ff000000ff; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x00aa00ab00ff00ff; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x00aa00ab00ff00ff; + *((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_slt_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]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0xffffffffffffffff; + *((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_slt_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000001e0007ffff; + *((unsigned long *)&__m256d_op0[2]) = 0x0000001e0007ffff; + *((unsigned long *)&__m256d_op0[1]) = 0x0000001e0007ffff; + *((unsigned long *)&__m256d_op0[0]) = 0x0000001e0007ffff; + *((unsigned long *)&__m256d_op1[3]) = 0xffe37fe3001d001d; + *((unsigned long *)&__m256d_op1[2]) = 0x00000000ffff8000; + *((unsigned long *)&__m256d_op1[1]) = 0xffe37fe3001d001d; + *((unsigned long *)&__m256d_op1[0]) = 0x00000000ffff8000; + *((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_slt_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0xffffffa30000165a; + *((unsigned long *)&__m256d_op0[2]) = 0x0000104000000000; + *((unsigned long *)&__m256d_op0[1]) = 0xffffffa30000165a; + *((unsigned long *)&__m256d_op0[0]) = 0x0000104000000000; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000022beb03f; + *((unsigned long *)&__m256d_op1[2]) = 0x7fffffffa2beb040; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000022beb03f; + *((unsigned long *)&__m256d_op1[0]) = 0x7fffffffa2beb040; + *((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_slt_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]) = 0x00003fe000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x00003fe000000000; + *((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_slt_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x00000000ffff0008; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x00000000ffff0008; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x000000430207f944; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x000000430207f944; + *((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_slt_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]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_slt_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0xfe01fe017e81fd02; + *((unsigned long *)&__m256d_op0[2]) = 0x000000003fc001fe; + *((unsigned long *)&__m256d_op0[1]) = 0xfe01fe017e81fd02; + *((unsigned long *)&__m256d_op0[0]) = 0x000000003fc001fe; + *((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_slt_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]) = 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]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[2]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_slt_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0xffff000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0xffff000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x00000000000000fe; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x00000000000000fe; + *((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_sult_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]) = 0x0000003868686a20; + *((unsigned long *)&__m256d_op1[2]) = 0x0045b8ae81bce1d8; + *((unsigned long *)&__m256d_op1[1]) = 0x0000003868686a20; + *((unsigned long *)&__m256d_op1[0]) = 0x0045b8ae81bce1d8; + *((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_sult_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x001175f10e4330e8; + *((unsigned long *)&__m256d_op0[2]) = 0xff8f0842ff29211e; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0xfffff8d9ffa7103d; + *((unsigned long *)&__m256d_op1[3]) = 0x001175f10e4330e8; + *((unsigned long *)&__m256d_op1[2]) = 0xff8f0842ff29211e; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0xfffff8d9ffa7103d; + *((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_sult_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]) = 0x0000000000000008; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000080000; + *((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_sult_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x000b004a00440040; + *((unsigned long *)&__m256d_op0[2]) = 0x8020004a0011002a; + *((unsigned long *)&__m256d_op0[1]) = 0x000b004a00440040; + *((unsigned long *)&__m256d_op0[0]) = 0x8020004a0011002a; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0fff0fff00000020; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0fff0fff00000020; + *((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_sult_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x8000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x8000000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x8000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x8000000000000000; + *((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_sult_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0002000000020000; + *((unsigned long *)&__m256d_op0[2]) = 0xfff0000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0002000000020000; + *((unsigned long *)&__m256d_op0[0]) = 0xfff0000000000000; + *((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_sult_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x4040404040404040; + *((unsigned long *)&__m256d_op0[2]) = 0x4040404040404040; + *((unsigned long *)&__m256d_op0[1]) = 0x4040404040404040; + *((unsigned long *)&__m256d_op0[0]) = 0x4040404040404040; + *((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_sult_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]) = 0x7ff0000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x7ff0000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x7ff0000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x7ff0000000000000; + *((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_sult_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x000000ff00000000; + *((unsigned long *)&__m256d_op0[2]) = 0x00ffffffffffffff; + *((unsigned long *)&__m256d_op0[1]) = 0x000000ff00000000; + *((unsigned long *)&__m256d_op0[0]) = 0x00ffffffffffffff; + *((unsigned long *)&__m256d_op1[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[2]) = 0xfffefffefffeffff; + *((unsigned long *)&__m256d_op1[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[0]) = 0xfffefffefffeffff; + *((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_sult_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_sult_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000860601934; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000800200028; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000860601934; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000800200028; + *((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_sult_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_sult_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]) = 0xffffffff00000000; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000002; + *((unsigned long *)&__m256d_op1[2]) = 0x4079808280057efe; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x007ffcfcfd020202; + *((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_sult_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000400000004; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000400000004; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x00000000000000ff; + *((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_sult_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_sult_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_sult_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_sne_s.c b/gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_sne_s.c new file mode 100644 index 00000000000..9d015a5c858 --- /dev/null +++ b/gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_sne_s.c @@ -0,0 +1,756 @@ +/* { dg-do run } */ +/* { dg-options "-mlasx -w -fno-strict-aliasing" } */ +#include "../simd_correctness_check.h" +#include + +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]) = 0x80808080; + *((int *)&__m256_op0[6]) = 0x80808080; + *((int *)&__m256_op0[5]) = 0x80808080; + *((int *)&__m256_op0[4]) = 0x80808080; + *((int *)&__m256_op0[3]) = 0x80808080; + *((int *)&__m256_op0[2]) = 0x80808080; + *((int *)&__m256_op0[1]) = 0x80808080; + *((int *)&__m256_op0[0]) = 0x80808080; + *((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_sne_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0xefefefef; + *((int *)&__m256_op0[6]) = 0xefefefef; + *((int *)&__m256_op0[5]) = 0xefefefef; + *((int *)&__m256_op0[4]) = 0xefefefef; + *((int *)&__m256_op0[3]) = 0xefefefef; + *((int *)&__m256_op0[2]) = 0xefefef6e; + *((int *)&__m256_op0[1]) = 0xeeeeeeee; + *((int *)&__m256_op0[0]) = 0xeeeeeeee; + *((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_sne_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x7f800000; + *((int *)&__m256_op0[6]) = 0x7f800000; + *((int *)&__m256_op0[5]) = 0x7f800000; + *((int *)&__m256_op0[4]) = 0x7f800000; + *((int *)&__m256_op0[3]) = 0x7f800000; + *((int *)&__m256_op0[2]) = 0x7f800000; + *((int *)&__m256_op0[1]) = 0x7f800000; + *((int *)&__m256_op0[0]) = 0x7f800000; + *((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_sne_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]) = 0x0000ffff; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x0000ffff; + *((int *)&__m256_op1[7]) = 0x00ff00ff; + *((int *)&__m256_op1[6]) = 0x00ff00ff; + *((int *)&__m256_op1[5]) = 0x00ff00ff; + *((int *)&__m256_op1[4]) = 0x00ff00ff; + *((int *)&__m256_op1[3]) = 0x00ff00ff; + *((int *)&__m256_op1[2]) = 0x00ff00ff; + *((int *)&__m256_op1[1]) = 0x00ff00ff; + *((int *)&__m256_op1[0]) = 0x00ff00ff; + *((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_sne_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]) = 0x80000000; + *((int *)&__m256_op1[4]) = 0x80000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x80000000; + *((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_sne_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_sne_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]) = 0x40404040; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x40404040; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0xfefefefe; + *((int *)&__m256_op1[4]) = 0x3f800000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0xfefefefe; + *((int *)&__m256_op1[0]) = 0x3f800000; + *((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_sne_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_sne_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]) = 0xffff0101; + *((int *)&__m256_op0[4]) = 0x00000001; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0xffff0101; + *((int *)&__m256_op0[0]) = 0x00000001; + *((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_sne_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]) = 0x0010bfc8; + *((int *)&__m256_op1[6]) = 0x0010bf52; + *((int *)&__m256_op1[5]) = 0xfff1bfca; + *((int *)&__m256_op1[4]) = 0x0011bfcb; + *((int *)&__m256_op1[3]) = 0x0010bfc8; + *((int *)&__m256_op1[2]) = 0x0010bf52; + *((int *)&__m256_op1[1]) = 0xfff1bfca; + *((int *)&__m256_op1[0]) = 0x0011bfcb; + *((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_sune_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]) = 0x80008000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x80008000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x80008000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x80008000; + *((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_sune_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x00060000; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00060000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x00000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000166; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x00000166; + *((int *)&__m256_op1[0]) = 0x00000000; + *((unsigned long *)&__m256i_result[3]) = 0x00000000ffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffff00000000; + *((unsigned long *)&__m256i_result[1]) = 0x00000000ffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffff00000000; + __m256i_out = __lasx_xvfcmp_sune_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x0000004a; + *((int *)&__m256_op0[6]) = 0x557baac4; + *((int *)&__m256_op0[5]) = 0x556caad9; + *((int *)&__m256_op0[4]) = 0xaabbaa88; + *((int *)&__m256_op0[3]) = 0x0000004a; + *((int *)&__m256_op0[2]) = 0x557baac4; + *((int *)&__m256_op0[1]) = 0x556caad9; + *((int *)&__m256_op0[0]) = 0xaabbaa88; + *((int *)&__m256_op1[7]) = 0x09090909; + *((int *)&__m256_op1[6]) = 0x09090909; + *((int *)&__m256_op1[5]) = 0x09090909; + *((int *)&__m256_op1[4]) = 0x09090909; + *((int *)&__m256_op1[3]) = 0x09090909; + *((int *)&__m256_op1[2]) = 0x09090909; + *((int *)&__m256_op1[1]) = 0x09090909; + *((int *)&__m256_op1[0]) = 0x09090909; + *((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_sune_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_sune_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x80000000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x80000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x80000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x80000000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x80000000; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x80000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x80000000; + *((int *)&__m256_op1[2]) = 0x00000000; + *((int *)&__m256_op1[1]) = 0x80000000; + *((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_sune_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]) = 0x00000020; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0x00000020; + *((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_sune_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_sune_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_sne_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0xbabababababababa; + *((unsigned long *)&__m256d_op0[2]) = 0xbabababababababa; + *((unsigned long *)&__m256d_op0[1]) = 0xbabababababababa; + *((unsigned long *)&__m256d_op0[0]) = 0xbabababababababa; + *((unsigned long *)&__m256d_op1[3]) = 0x88888a6d0962002e; + *((unsigned long *)&__m256d_op1[2]) = 0xdb8a3109fe0f0020; + *((unsigned long *)&__m256d_op1[1]) = 0x0000007fff01fffb; + *((unsigned long *)&__m256d_op1[0]) = 0xdb8e20990cce025a; + *((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_sne_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]) = 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_sne_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_sne_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000010001; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000010001; + *((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_sne_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0xfffffffffffffe00; + *((unsigned long *)&__m256d_op0[2]) = 0xfffffffffffffe00; + *((unsigned long *)&__m256d_op0[1]) = 0xfffffffffffffe00; + *((unsigned long *)&__m256d_op0[0]) = 0xfffffffffffffe00; + *((unsigned long *)&__m256d_op1[3]) = 0x8000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x000000ffff88ff88; + *((unsigned long *)&__m256d_op1[1]) = 0x8000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x000000ffff88ff88; + *((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_sne_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_sne_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x00000005ffffffff; + *((unsigned long *)&__m256d_op0[2]) = 0x00000007ffffffce; + *((unsigned long *)&__m256d_op0[1]) = 0x00000005ffffffff; + *((unsigned long *)&__m256d_op0[0]) = 0x00000007ffffffce; + *((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_sne_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0xff00000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x00000000000000fe; + *((unsigned long *)&__m256d_op0[1]) = 0xff00000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x00000000000000fe; + *((unsigned long *)&__m256d_op1[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[2]) = 0xfffffffffffebeb8; + *((unsigned long *)&__m256d_op1[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[0]) = 0xfffffffffffebeb8; + *((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_sune_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0xfafafafafafafafa; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0xfefefefefefefefe; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000fefefe; + *((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]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_sune_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_sune_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000ffee0000ff4c; + *((unsigned long *)&__m256d_op0[2]) = 0x0000ff050000ff3c; + *((unsigned long *)&__m256d_op0[1]) = 0x0000fff90000ff78; + *((unsigned long *)&__m256d_op0[0]) = 0x0000ffa80000ff31; + *((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_sune_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]) = 0x0020002000200020; + *((unsigned long *)&__m256d_op1[2]) = 0x0020000000200000; + *((unsigned long *)&__m256d_op1[1]) = 0x0020002000200020; + *((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]) = 0x0000000000000000; + __m256i_out = __lasx_xvfcmp_sune_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x000000017bfffff0; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000180007fe8; + *((unsigned long *)&__m256d_op0[1]) = 0x000000017bfffff0; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000180007fe8; + *((unsigned long *)&__m256d_op1[3]) = 0x00000000ffffffff; + *((unsigned long *)&__m256d_op1[2]) = 0x0100000001000100; + *((unsigned long *)&__m256d_op1[1]) = 0x00000000ffffffff; + *((unsigned long *)&__m256d_op1[0]) = 0x0100000001000100; + *((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_sune_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0c6a240000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0f00204000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0c6a240000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0f00204000000000; + *((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_sune_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]) = 0x0000000000010001; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000010001; + *((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_sune_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x00000000000a0008; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x00000000000a0008; + *((unsigned long *)&__m256d_op1[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256d_op1[2]) = 0xffffffff00000000; + *((unsigned long *)&__m256d_op1[1]) = 0xffffffffffffffff; + *((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_sune_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]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0x0000000000000000; + *((unsigned long *)&__m256i_result[0]) = 0xffffffffffffffff; + __m256i_out = __lasx_xvfcmp_sune_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]) = 0x00000000ffffffff; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x00000000ffffffff; + *((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_sune_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x000000010000685e; + *((unsigned long *)&__m256d_op0[2]) = 0x000020a4ffffbe4f; + *((unsigned long *)&__m256d_op0[1]) = 0x000000010000685e; + *((unsigned long *)&__m256d_op0[0]) = 0x000020a4ffffbe4f; + *((unsigned long *)&__m256d_op1[3]) = 0x0087ff87f807ff87; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0087ff87f807ff87; + *((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_sune_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_sune_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]) = 0xfd02fd02fd02fd02; + *((unsigned long *)&__m256d_op1[2]) = 0xfd02fd02fd02fd02; + *((unsigned long *)&__m256d_op1[1]) = 0xfd02fd02fd02fd02; + *((unsigned long *)&__m256d_op1[0]) = 0xfd02fd02fd02fd02; + *((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_sune_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]) = 0x7fffffff80000000; + *((unsigned long *)&__m256d_op1[2]) = 0x7fffffff80000000; + *((unsigned long *)&__m256d_op1[1]) = 0x7fffffff80000000; + *((unsigned long *)&__m256d_op1[0]) = 0x7fffffff80000000; + *((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_sune_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_sor_s.c b/gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_sor_s.c new file mode 100644 index 00000000000..a61681073d5 --- /dev/null +++ b/gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_sor_s.c @@ -0,0 +1,438 @@ +/* { dg-do run } */ +/* { dg-options "-mlasx -w -fno-strict-aliasing" } */ +#include "../simd_correctness_check.h" +#include + +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_sor_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_sor_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_sor_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]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000001; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000001; + *((int *)&__m256_op0[1]) = 0x80000000; + *((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]) = 0xffffffff; + *((unsigned long *)&__m256i_result[3]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[2]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[1]) = 0xffffffffffffffff; + *((unsigned long *)&__m256i_result[0]) = 0xffffffff00000000; + __m256i_out = __lasx_xvfcmp_sor_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]) = 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_sor_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_sor_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]) = 0x00000064; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x00000781; + *((int *)&__m256_op0[0]) = 0x00000064; + *((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_sor_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_sor_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x0c6a2400; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x0f002040; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x0c6a2400; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x0f002040; + *((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_sor_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_sor_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000000; + *((int *)&__m256_op0[6]) = 0x0000000c; + *((int *)&__m256_op0[5]) = 0x00000000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x00000000; + *((int *)&__m256_op0[2]) = 0x0000000c; + *((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_sor_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0101010101010101; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0101010101010101; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0feff00000000000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0feff00000000000; + *((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_sor_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]) = 0x0000003868686a20; + *((unsigned long *)&__m256d_op1[2]) = 0x0045b8ae81bce1d8; + *((unsigned long *)&__m256d_op1[1]) = 0x0000003868686a20; + *((unsigned long *)&__m256d_op1[0]) = 0x0045b8ae81bce1d8; + *((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_sor_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x3ff0000000000000; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x3ff0000000000000; + *((unsigned long *)&__m256d_op1[3]) = 0x0101010101010101; + *((unsigned long *)&__m256d_op1[2]) = 0x3ff1808001020101; + *((unsigned long *)&__m256d_op1[1]) = 0x0101010101010101; + *((unsigned long *)&__m256d_op1[0]) = 0x3ff1808001020101; + *((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_sor_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000005; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000005; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000005; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000000000005; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000005; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000005; + *((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_sor_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_sor_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000001; + *((unsigned long *)&__m256d_op0[2]) = 0xffffffffffffffdc; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000001; + *((unsigned long *)&__m256d_op0[0]) = 0xffffffffffffffdc; + *((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_sor_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000ffff0000ffff; + *((unsigned long *)&__m256d_op0[2]) = 0x0000ffff0000ffff; + *((unsigned long *)&__m256d_op0[1]) = 0x0000ffff0000ffff; + *((unsigned long *)&__m256d_op0[0]) = 0x0000ffff0000ffff; + *((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_sor_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_sor_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0xe0e0e0e0e0e0e0e0; + *((unsigned long *)&__m256d_op0[2]) = 0xfefefefeffe0e0e0; + *((unsigned long *)&__m256d_op0[1]) = 0xe0e0e0e0e0e0e0e0; + *((unsigned long *)&__m256d_op0[0]) = 0xfefefefeffe0e0e0; + *((unsigned long *)&__m256d_op1[3]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[2]) = 0x0000000040004000; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000040004000; + *((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_sor_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]) = 0xfffffffffffffff8; + *((unsigned long *)&__m256d_op1[2]) = 0xfffffffffffffff8; + *((unsigned long *)&__m256d_op1[1]) = 0xfffffffffffffff8; + *((unsigned long *)&__m256d_op1[0]) = 0xfffffffffffffff8; + *((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_sor_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]) = 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_sor_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_sun_s.c b/gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_sun_s.c new file mode 100644 index 00000000000..41f274920a1 --- /dev/null +++ b/gcc/testsuite/gcc.target/loongarch/vector/lasx/lasx-xvfcmp_sun_s.c @@ -0,0 +1,363 @@ +/* { dg-do run } */ +/* { dg-options "-mlasx -w -fno-strict-aliasing" } */ +#include "../simd_correctness_check.h" +#include + +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]) = 0x1e180000; + *((int *)&__m256_op0[6]) = 0x00000000; + *((int *)&__m256_op0[5]) = 0x1e180000; + *((int *)&__m256_op0[4]) = 0x00000000; + *((int *)&__m256_op0[3]) = 0x1e180000; + *((int *)&__m256_op0[2]) = 0x00000000; + *((int *)&__m256_op0[1]) = 0x1e180000; + *((int *)&__m256_op0[0]) = 0x00000000; + *((int *)&__m256_op1[7]) = 0x00802000; + *((int *)&__m256_op1[6]) = 0x00802000; + *((int *)&__m256_op1[5]) = 0xffffffff; + *((int *)&__m256_op1[4]) = 0xffffffff; + *((int *)&__m256_op1[3]) = 0x00802000; + *((int *)&__m256_op1[2]) = 0x00802000; + *((int *)&__m256_op1[1]) = 0xffffffff; + *((int *)&__m256_op1[0]) = 0xffffffff; + *((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_sun_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x00000055; + *((int *)&__m256_op0[6]) = 0x36aaaaac; + *((int *)&__m256_op0[5]) = 0x55555555; + *((int *)&__m256_op0[4]) = 0xaaaaaaac; + *((int *)&__m256_op0[3]) = 0x00000055; + *((int *)&__m256_op0[2]) = 0x36aaaaac; + *((int *)&__m256_op0[1]) = 0x55555555; + *((int *)&__m256_op0[0]) = 0xaaaaaaac; + *((int *)&__m256_op1[7]) = 0x00060000; + *((int *)&__m256_op1[6]) = 0x00040000; + *((int *)&__m256_op1[5]) = 0x00025555; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x00060000; + *((int *)&__m256_op1[2]) = 0x00040000; + *((int *)&__m256_op1[1]) = 0x00025555; + *((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_sun_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0xff240000; + *((int *)&__m256_op0[6]) = 0x0000ff00; + *((int *)&__m256_op0[5]) = 0xfffeffe4; + *((int *)&__m256_op0[4]) = 0xfffeff00; + *((int *)&__m256_op0[3]) = 0xff640000; + *((int *)&__m256_op0[2]) = 0x0000ff00; + *((int *)&__m256_op0[1]) = 0xfffeff66; + *((int *)&__m256_op0[0]) = 0xfffeff00; + *((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_sun_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x80808082; + *((int *)&__m256_op0[6]) = 0x80808082; + *((int *)&__m256_op0[5]) = 0x80808082; + *((int *)&__m256_op0[4]) = 0x80808082; + *((int *)&__m256_op0[3]) = 0x80808082; + *((int *)&__m256_op0[2]) = 0x80808080; + *((int *)&__m256_op0[1]) = 0x80808082; + *((int *)&__m256_op0[0]) = 0x80808082; + *((int *)&__m256_op1[7]) = 0x55555555; + *((int *)&__m256_op1[6]) = 0x55555555; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0x55555555; + *((int *)&__m256_op1[2]) = 0x55555555; + *((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_sun_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_sun_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_sun_s (__m256_op0, __m256_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((int *)&__m256_op0[7]) = 0x6d6d6d6d; + *((int *)&__m256_op0[6]) = 0x6d6d6d6d; + *((int *)&__m256_op0[5]) = 0x6d6d6d6d; + *((int *)&__m256_op0[4]) = 0x6d6d6d6d; + *((int *)&__m256_op0[3]) = 0x6d6d6d6d; + *((int *)&__m256_op0[2]) = 0x6d6d6d6d; + *((int *)&__m256_op0[1]) = 0x6d6d6d6d; + *((int *)&__m256_op0[0]) = 0x6d6d6d6d; + *((int *)&__m256_op1[7]) = 0x6d6d6d6d; + *((int *)&__m256_op1[6]) = 0x6d6d6d6d; + *((int *)&__m256_op1[5]) = 0x6d6d6d6d; + *((int *)&__m256_op1[4]) = 0x6d6d6d6d; + *((int *)&__m256_op1[3]) = 0x6d6d6d6d; + *((int *)&__m256_op1[2]) = 0x6d6d6d6d; + *((int *)&__m256_op1[1]) = 0x6d6d6d6d; + *((int *)&__m256_op1[0]) = 0x6d6d6d6d; + *((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_sun_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_sun_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_sun_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]) = 0xffffffff; + *((int *)&__m256_op0[3]) = 0xffffffff; + *((int *)&__m256_op0[2]) = 0xffffffff; + *((int *)&__m256_op0[1]) = 0x00000000; + *((int *)&__m256_op0[0]) = 0xffffffff; + *((int *)&__m256_op1[7]) = 0xffffffff; + *((int *)&__m256_op1[6]) = 0x00000000; + *((int *)&__m256_op1[5]) = 0x00000000; + *((int *)&__m256_op1[4]) = 0x00000000; + *((int *)&__m256_op1[3]) = 0xffffffff; + *((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_sun_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_sun_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_sun_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]) = 0x7fffffff7fffffff; + *((unsigned long *)&__m256d_op1[2]) = 0x7fffffff7fffffff; + *((unsigned long *)&__m256d_op1[1]) = 0x7fffffff7fffffff; + *((unsigned long *)&__m256d_op1[0]) = 0x7fffffff7fffffff; + *((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_sun_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]) = 0x00000000ffff0008; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x00000000ffff0008; + *((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_sun_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]) = 0x0000000000000118; + *((unsigned long *)&__m256d_op1[1]) = 0x0000000000000000; + *((unsigned long *)&__m256d_op1[0]) = 0x0000000000000118; + *((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_sun_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]) = 0x00000000ffffffff; + *((unsigned long *)&__m256d_op1[3]) = 0x0fffffff10000006; + *((unsigned long *)&__m256d_op1[2]) = 0x0fffffff10000006; + *((unsigned long *)&__m256d_op1[1]) = 0x0fffffff10000006; + *((unsigned long *)&__m256d_op1[0]) = 0x0fffffff10000006; + *((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_sun_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + *((unsigned long *)&__m256d_op0[3]) = 0x0000000000000040; + *((unsigned long *)&__m256d_op0[2]) = 0x0000000000000027; + *((unsigned long *)&__m256d_op0[1]) = 0x0000000000000040; + *((unsigned long *)&__m256d_op0[0]) = 0x0000000000000027; + *((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_sun_d (__m256d_op0, __m256d_op1); + ASSERTEQ_64 (__LINE__, __m256i_result, __m256i_out); + + return 0; +}