From nobody Wed Feb 11 07:16:23 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 165796215952420.525657043559477; Sat, 16 Jul 2022 02:02:39 -0700 (PDT) Received: from localhost ([::1]:41898 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oCdh8-0007xT-5w for importer@patchew.org; Sat, 16 Jul 2022 05:02:38 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:56562) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oCdZV-0005iz-HN for qemu-devel@nongnu.org; Sat, 16 Jul 2022 04:54:45 -0400 Received: from mail.loongson.cn ([114.242.206.163]:50210 helo=loongson.cn) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oCdZT-0006fz-Kx for qemu-devel@nongnu.org; Sat, 16 Jul 2022 04:54:45 -0400 Received: from localhost.localdomain (unknown [10.2.5.185]) by mail.loongson.cn (Coremail) with SMTP id AQAAf9Dxz9PCfNJijWQiAA--.28082S9; Sat, 16 Jul 2022 16:54:31 +0800 (CST) From: Song Gao To: qemu-devel@nongnu.org Cc: richard.henderson@linaro.org, alex.bennee@linaro.org, f4bug@amsat.org, gaosong@loongson.cn, peter.maydell@linaro.org, yangxiaojuan@loongson.cn Subject: [PATCH 7/8] tests/tcg/loongarch64: Add som comparison instructions test Date: Sat, 16 Jul 2022 16:54:25 +0800 Message-Id: <20220716085426.3098060-8-gaosong@loongson.cn> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20220716085426.3098060-1-gaosong@loongson.cn> References: <20220716085426.3098060-1-gaosong@loongson.cn> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-CM-TRANSID: AQAAf9Dxz9PCfNJijWQiAA--.28082S9 X-Coremail-Antispam: 1UD129KBjvJXoWxJrW5XFWUCFWxWw1xAF47Jwb_yoW8AFWfpw 15ursYkr4xGF1fZr13Jr95WF15tF4fK3W7ZF17Wr10vrsF9Fy7tr15KrZxtFW7t3yFvF1x Z3ZagFya9FyUJ3JanT9S1TB71UUUUUUqnTZGkaVYY2UrUUUUjbIjqfuFe4nvWSU5nxnvy2 9KBjDU0xBIdaVrnUUvcSsGvfC2KfnxnUUI43ZEXa7xR_UUUUUUUUU== X-CM-SenderInfo: 5jdr20tqj6z05rqj20fqof0/ Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=114.242.206.163; envelope-from=gaosong@loongson.cn; helo=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_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZM-MESSAGEID: 1657962160880100001 Content-Type: text/plain; charset="utf-8" Choose some instructions to test: - FCMP.cond.S - cond: ceq clt cle cne seq slt sle sne Signed-off-by: Song Gao --- tests/tcg/loongarch64/Makefile.target | 1 + tests/tcg/loongarch64/test_fpcom.c | 37 +++++++++++++++++++++++++++ 2 files changed, 38 insertions(+) create mode 100644 tests/tcg/loongarch64/test_fpcom.c diff --git a/tests/tcg/loongarch64/Makefile.target b/tests/tcg/loongarch64/= Makefile.target index 59d564725a..b320d9fd9c 100644 --- a/tests/tcg/loongarch64/Makefile.target +++ b/tests/tcg/loongarch64/Makefile.target @@ -13,5 +13,6 @@ LDFLAGS+=3D-lm LOONGARCH64_TESTS =3D test_bit LOONGARCH64_TESTS +=3D test_div LOONGARCH64_TESTS +=3D test_fclass +LOONGARCH64_TESTS +=3D test_fpcom =20 TESTS +=3D $(LOONGARCH64_TESTS) diff --git a/tests/tcg/loongarch64/test_fpcom.c b/tests/tcg/loongarch64/tes= t_fpcom.c new file mode 100644 index 0000000000..9e81f767f9 --- /dev/null +++ b/tests/tcg/loongarch64/test_fpcom.c @@ -0,0 +1,37 @@ +#include + +#define TEST_COMP(N) \ +void test_##N(float fj, float fk) \ +{ \ + int rd =3D 0; \ + \ + asm volatile("fcmp."#N".s $fcc6,%1,%2\n" \ + "movcf2gr %0, $fcc6\n" \ + : "=3Dr"(rd) \ + : "f"(fj), "f"(fk) \ + : ); \ + assert(rd =3D=3D 1); \ +} + +TEST_COMP(ceq) +TEST_COMP(clt) +TEST_COMP(cle) +TEST_COMP(cne) +TEST_COMP(seq) +TEST_COMP(slt) +TEST_COMP(sle) +TEST_COMP(sne) + +int main() +{ + test_ceq(0xff700102, 0xff700102); + test_clt(0x00730007, 0xff730007); + test_cle(0xff70130a, 0xff70130b); + test_cne(0x1238acde, 0xff71111f); + test_seq(0xff766618, 0xff766619); + test_slt(0xff78881c, 0xff78901d); + test_sle(0xff780b22, 0xff790b22); + test_sne(0xff7bcd25, 0xff7a26cf); + + return 0; +} --=20 2.31.1