From patchwork Wed Sep 6 10:43:03 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: chenxiaolong X-Patchwork-Id: 13792 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:ab0a:0:b0:3f2:4152:657d with SMTP id m10csp2224107vqo; Wed, 6 Sep 2023 03:44:23 -0700 (PDT) X-Google-Smtp-Source: AGHT+IEpVI7NOqzHyzVnQ+46YRNMm3WGpeR+nYVe9F/ywzOTOQ9OOr5IRwhvEa6XqNoZOHfb40S2 X-Received: by 2002:a17:906:3082:b0:9a9:d5e7:5531 with SMTP id 2-20020a170906308200b009a9d5e75531mr407745ejv.74.1693997063685; Wed, 06 Sep 2023 03:44:23 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1693997063; cv=none; d=google.com; s=arc-20160816; b=k7o3gHjXNDCWkYy6ilOjJeraDgS16uOeeze3D3G+oC2scl35Jsshz9W2yWHWseNeLK ZqwO+9vib9WAJrOxkrcI3OSebHvk4iP03riaR0wal7qmwp51DkF4du8yacbXX/bjqgXb yhIJrQyn0hr23woDdhEiTocWQbYV10Hd980+CrTzyt4kOsskGGx/jP6EMSqharyFGFL4 FDxnZn83KxF6qYXXS78UpWFUmeQzF4ZAzTnKrcNzv5bv+/RykrJEthNRNFR0m169TdCx fmxtAKubQBFuK1UJpaz92+txjgLgD1EsOLdaqPNMHUm/SN+0dAqIEbz+XK3j49FOJZ13 4Lqw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:message-id:date:subject:to:from:dmarc-filter :delivered-to; bh=fK2Ds9N7Qn89g5VIqSbSIuhXqJtlwOT8Ac5FmjpzRtM=; fh=BpFCyCzVJo4znJIvOjeDfKzcGsF6Q+JgJbJ+1ev/kM4=; b=p7L/3bsu8hGeFJBLOdZAUdsgNgbR/7ZQAKa2CAOjRBz+OZacpENucH5p7ObNc/v0LI YljozWI7xepW88+HZHtetPZIcfBiZrm7xiLd09FmwGwdliMf19M911cXNL1zSDvlCQMK hg8GknSSP9LpilY05yPDVXYiTniWsIAdkNPtuLoQIZVU7ipCfova6nYZhqOmN9G0o73Z AE7cUCpEKbDwpyMEJJ32yIpjex4zZnzP+2Np0bnvMkB3Qa3IjCNszRkCidamjKRVu7p1 /WyoZ/nnLmGkg/vVJfPodpCIpmcWf34VoBUtCQT/KuUC6fpseQ5W6sjVJDgrGLfUyEve sU4A== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org designates 8.43.85.97 as permitted sender) smtp.mailfrom="gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org" Received: from server2.sourceware.org (ip-8-43-85-97.sourceware.org. [8.43.85.97]) by mx.google.com with ESMTPS id p7-20020a170906b20700b00992c195b499si8737665ejz.765.2023.09.06.03.44.23 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 06 Sep 2023 03:44:23 -0700 (PDT) Received-SPF: pass (google.com: domain of gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org designates 8.43.85.97 as permitted sender) client-ip=8.43.85.97; Authentication-Results: mx.google.com; spf=pass (google.com: domain of gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org designates 8.43.85.97 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 EBBEB3856DEA for ; Wed, 6 Sep 2023 10:43:50 +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 BE6423858C3A for ; Wed, 6 Sep 2023 10:43:24 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org BE6423858C3A 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 1qdq0H-0006h5-K5 for gcc-patches@gcc.gnu.org; Wed, 06 Sep 2023 06:43:24 -0400 Received: from loongson.cn (unknown [10.10.130.252]) by gateway (Coremail) with SMTP id _____8Ax1fC9V_hkWVAgAA--.64888S3; Wed, 06 Sep 2023 18:43:10 +0800 (CST) Received: from slurm-master.loongson.cn (unknown [10.10.130.252]) by localhost.localdomain (Coremail) with SMTP id AQAAf8CxriO8V_hkPXpuAA--.28525S4; Wed, 06 Sep 2023 18:43:09 +0800 (CST) From: Xiaolong Chen To: gcc-patches@gcc.gnu.org Subject: [PATCH v1 0/4] Add Loongson SX/ASX instruction support to LoongArch Date: Wed, 6 Sep 2023 18:43:03 +0800 Message-Id: <20230906104307.37244-1-chenxiaolong@loongson.cn> X-Mailer: git-send-email 2.20.1 MIME-Version: 1.0 X-CM-TRANSID: AQAAf8CxriO8V_hkPXpuAA--.28525S4 X-CM-SenderInfo: hfkh05xldrz0tqj6z05rqj20fqof0/1tbiAQAGBWT3-DUEoAABs9 X-Coremail-Antispam: 1Uk129KBj93XoWxCr17WF13Cw45Gw1UXr47trc_yoW5XF43pw 47Ary5t3W8WFZ3Xr1kJay5Xrs5tan7G3yS93WfJry8C34xJr9xZ3Z7tFnxXFy3Ga45Jryr XwnY9w1UWas0qacCm3ZEXasCq-sJn29KB7ZKAUJUUUU5529EdanIXcx71UUUUU7KY7ZEXa sCq-sGcSsGvfJ3Ic02F40EFcxC0VAKzVAqx4xG6I80ebIjqfuFe4nvWSU5nxnvy29KBjDU 0xBIdaVrnRJUUUk0b4IE77IF4wAFF20E14v26r1j6r4UM7CY07I20VC2zVCF04k26cxKx2 IYs7xG6rWj6s0DM7CIcVAFz4kK6r1j6r18M28lY4IEw2IIxxk0rwA2F7IY1VAKz4vEj48v e4kI8wA2z4x0Y4vE2Ix0cI8IcVAFwI0_Xr0_Ar1l84ACjcxK6xIIjxv20xvEc7CjxVAFwI 0_Gr0_Cr1l84ACjcxK6I8E87Iv67AKxVWxJr0_GcWl84ACjcxK6I8E87Iv6xkF7I0E14v2 6F4UJVW0owAS0I0E0xvYzxvE52x082IY62kv0487Mc804VCY07AIYIkI8VC2zVCFFI0UMc 02F40EFcxC0VAKzVAqx4xG6I80ewAv7VC0I7IYx2IY67AKxVWUXVWUAwAv7VC2z280aVAF wI0_Jr0_Gr1lOx8S6xCaFVCjc4AY6r1j6r4UM4x0Y48IcxkI7VAKI48JMxAIw28IcxkI7V AKI48JMxC20s026xCaFVCjc4AY6r1j6r4UMI8I3I0E5I8CrVAFwI0_Jr0_Jr4lx2IqxVCj r7xvwVAFwI0_JrI_JrWlx4CE17CEb7AF67AKxVWUAVWUtwCIc40Y0x0EwIxGrwCI42IY6x IIjxv20xvE14v26r1j6r1xMIIF0xvE2Ix0cI8IcVCY1x0267AKxVWUJVW8JwCI42IY6xAI w20EY4v20xvaj40_Jr0_JF4lIxAIcVC2z280aVAFwI0_Jr0_Gr1lIxAIcVC2z280aVCY1x 0267AKxVWUJVW8JbIYCTnIWIevJa73UjIFyTuYvjxUwmhFDUUUU 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=-7.3 required=5.0 tests=BAYES_00, KAM_DMARC_STATUS, KAM_SHORT, SPF_FAIL, SPF_HELO_PASS, TXREP autolearn=no 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: , Cc: Xiaolong Chen , xuchenghua@loongson.cn, chenglulu@loongson.cn, i@xen0n.name Errors-To: gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org Sender: "Gcc-patches" X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1776284664664861271 X-GMAIL-MSGID: 1776284664664861271 In order to better test the function of the vector instruction, the 128 and 256 bit test cases are further split according to the function of the instruction. Xiaolong Chen (4): LoongArch: Add tests of -mstrict-align option. LoongArch: Add testsuite framework for Loongson SX/ASX. LoongArch: Add tests for Loongson SX builtin functions. LoongArch: Add tests for Loongson SX floating-point conversion instructions. .../gcc.target/loongarch/strict-align.c | 13 + .../loongarch/vector/loongarch-vector.exp | 42 + .../loongarch/vector/lsx/lsx-builtin.c | 1461 +++++++++++++++++ .../loongarch/vector/lsx/lsx-vfcvt-1.c | 397 +++++ .../loongarch/vector/lsx/lsx-vfcvt-2.c | 277 ++++ .../loongarch/vector/lsx/lsx-vffint-1.c | 160 ++ .../loongarch/vector/lsx/lsx-vffint-2.c | 263 +++ .../loongarch/vector/lsx/lsx-vffint-3.c | 101 ++ .../loongarch/vector/lsx/lsx-vfrint_d.c | 229 +++ .../loongarch/vector/lsx/lsx-vfrint_s.c | 349 ++++ .../loongarch/vector/lsx/lsx-vftint-1.c | 348 ++++ .../loongarch/vector/lsx/lsx-vftint-2.c | 694 ++++++++ .../loongarch/vector/lsx/lsx-vftint-3.c | 1027 ++++++++++++ .../loongarch/vector/lsx/lsx-vftint-4.c | 344 ++++ .../loongarch/vector/simd_correctness_check.h | 39 + 15 files changed, 5744 insertions(+) create mode 100644 gcc/testsuite/gcc.target/loongarch/strict-align.c create mode 100644 gcc/testsuite/gcc.target/loongarch/vector/loongarch-vector.exp create mode 100644 gcc/testsuite/gcc.target/loongarch/vector/lsx/lsx-builtin.c create mode 100644 gcc/testsuite/gcc.target/loongarch/vector/lsx/lsx-vfcvt-1.c create mode 100644 gcc/testsuite/gcc.target/loongarch/vector/lsx/lsx-vfcvt-2.c create mode 100644 gcc/testsuite/gcc.target/loongarch/vector/lsx/lsx-vffint-1.c create mode 100644 gcc/testsuite/gcc.target/loongarch/vector/lsx/lsx-vffint-2.c create mode 100644 gcc/testsuite/gcc.target/loongarch/vector/lsx/lsx-vffint-3.c create mode 100644 gcc/testsuite/gcc.target/loongarch/vector/lsx/lsx-vfrint_d.c create mode 100644 gcc/testsuite/gcc.target/loongarch/vector/lsx/lsx-vfrint_s.c create mode 100644 gcc/testsuite/gcc.target/loongarch/vector/lsx/lsx-vftint-1.c create mode 100644 gcc/testsuite/gcc.target/loongarch/vector/lsx/lsx-vftint-2.c create mode 100644 gcc/testsuite/gcc.target/loongarch/vector/lsx/lsx-vftint-3.c create mode 100644 gcc/testsuite/gcc.target/loongarch/vector/lsx/lsx-vftint-4.c create mode 100644 gcc/testsuite/gcc.target/loongarch/vector/simd_correctness_check.h