From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by sourceware.org (Postfix) with ESMTPS id 541E43857013 for ; Tue, 4 Jul 2023 08:10:01 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 541E43857013 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=intel.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=intel.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1688458201; x=1719994201; h=from:to:cc:subject:date:message-id:references: in-reply-to:mime-version; bh=uUP6idOgjjrOn25g2NTTSsTJ45eiF98n0CYzcEwtorA=; b=ezwYrcTdJ79SHABPrIb+IqQf1JKthqEKgmY5fmDwe/aY5SRK1lz8mcRo ukhhnbJbE+1SOfaSLCVgmlKUWZYIph7zVOS7DJcusOOILQ+B4PFZyhAjz QfL3P3kYtorHDHV7QBZisNfKuxYwZDhnyLku3QNfJ9FDCG0DyXR7kfipE qvCpyvKp4eKZ+v6jRCoda3c/KIzcvvXDeBH7+qSS9mUpko+m7EVagB5iz DIBSNqgSQf6xzNdkj+RFM3we9UTwWixCjTcYRNLfs+ODTArkiyCn3KeHt 244hvbmyyV0nnldXpa8smJvDR8OHDVjzo5KZbXX05aBcj0gv5wPQlhOA0 Q==; X-IronPort-AV: E=McAfee;i="6600,9927,10760"; a="352893183" X-IronPort-AV: E=Sophos;i="6.01,180,1684825200"; d="scan'208,217";a="352893183" Received: from fmsmga004.fm.intel.com ([10.253.24.48]) by orsmga101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 04 Jul 2023 01:09:59 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10760"; a="788783063" X-IronPort-AV: E=Sophos;i="6.01,180,1684825200"; d="scan'208,217";a="788783063" Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82]) by fmsmga004.fm.intel.com with ESMTP; 04 Jul 2023 01:09:59 -0700 Received: from fmsmsx601.amr.corp.intel.com (10.18.126.81) by fmsmsx602.amr.corp.intel.com (10.18.126.82) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 4 Jul 2023 01:09:58 -0700 Received: from fmsedg602.ED.cps.intel.com (10.1.192.136) by fmsmsx601.amr.corp.intel.com (10.18.126.81) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27 via Frontend Transport; Tue, 4 Jul 2023 01:09:58 -0700 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (104.47.66.44) by edgegateway.intel.com (192.55.55.71) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.27; Tue, 4 Jul 2023 01:09:58 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=RG6wTZ5Qd4+ZjkdaIxygSUgEC0C/x/0dTpTipSgPOdCvkmCKy8HEZI+i7AhfQxCVZoOCX1V4OaaNiPzYfKZiz2q2wpU1pEm/22uNnTcnHh8R0KX7bfDa4qwFqNxqty4RznKqLjzOcrYFG99Jrs9xywMjMAz+GgW6cRhkxql6/pWjmgorckxqJ/nKaf+eF+2tza90s7ZdPzx3Naap+Bu5ZnE1jN+OqGu/CuO3L3BgQCCPYqnbOcQY9aKdM5YfZLrNrRepzAl3pJQdTZ9269ufrGxWZqqAy0mpGlVAvYhE40Jkvm1MKh2XO8eJTVh8CMsmtJX7xCAlKOQfCyfMfBv25Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=QORW1ACFT92Q2MXRyYmOwnGNlzocqrrdu/XQrPFZnac=; b=axm84RNQhu/JzvokR8g2zKfpr6twDh9qj3v1JwHYOPIeeWDW54Xo8ajqqf1jf5x8nTLM6kJqEGNVkPkP6ye4Wjjw6bbWNXxJ7RDeOFs03QEL7amUJbmCVUlbjl4qfyCCvoYo1SfQGPuo3Nfl0HXqnf5vdRUTSbqLBzLr5XH/0IC4dvl1QV6OfV+fE+/1pTOUY2Myhc7ueyuaJDOfl//bQFJAAhdtALmuYgMWsVTIK5ZMoxu1Bg0cex0qbtNQW7q33RBjgFjhEWfE+WkD1QoQbltuvfAYEDgeo9TVWxtWnI0Kh4ZZL5L+9VDeEOifl/XL8McRlNgdPyrIhLSKQmafag== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Received: from MW5PR11MB5908.namprd11.prod.outlook.com (2603:10b6:303:194::10) by MW3PR11MB4649.namprd11.prod.outlook.com (2603:10b6:303:5b::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.24; Tue, 4 Jul 2023 08:09:56 +0000 Received: from MW5PR11MB5908.namprd11.prod.outlook.com ([fe80::127c:f4cc:e699:8f73]) by MW5PR11MB5908.namprd11.prod.outlook.com ([fe80::127c:f4cc:e699:8f73%6]) with mapi id 15.20.6544.024; Tue, 4 Jul 2023 08:09:56 +0000 From: "Li, Pan2" To: "juzhe.zhong@rivai.ai" , gcc-patches CC: Robin Dapp , jeffreyalaw , "Wang, Yanzhang" , kito.cheng Subject: RE: [PATCH v1] RISC-V: Fix one bug for floating-point static frm Thread-Topic: [PATCH v1] RISC-V: Fix one bug for floating-point static frm Thread-Index: AQHZrjuCfnzHFTaqa0CTv967BH2iKq+pKnaqgAAADsCAABaykA== Date: Tue, 4 Jul 2023 08:09:56 +0000 Message-ID: References: <20230704055053.2308713-1-pan2.li@intel.com> <0DFF6E14A3FEAE96+2023070413523035229344@rivai.ai> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: MW5PR11MB5908:EE_|MW3PR11MB4649:EE_ x-ms-office365-filtering-correlation-id: 5693a47d-fa99-43e0-3ee6-08db7c660da4 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: We4SvGQ9GuHwLpWTcxfzpwyyNmFE9Por2yGyv85HrAjpo6qdsADTLpqKcfAS03siUQbQwrydtPtrw/9ryRJO47HXffCWaVu7b109SZmVVkdwlFU3uSscPnZ6GiJ87YJ2bIEZxrCH5wO7PUK0Y+wdI6EZdhQyqnMBep6/Z+btRcNf9DXnDbxLBa+cApH0vmtttkL25a1USbGS6veOWC1v1KqagGPpN7sujBKMZrcrRAUPYvsD6xE1dXZwC7m4Gt28FVf5DVBFEdSNkUSmx8osqT9Y4lg1u+zXn5XR99xVG/Zbnicua7cNBhNLs3EcDgc9TRoqXpjFLz0jxtPpg+X02Q/MojrqDD0d57PheXqkKQcGt/3Is0ZWjEerYBDOjyD9TGmgXTL3HmtX/wM4t8lCgkHjTnuK8C79WSy9qtmx7PORutY9njgtDqUiw6vgmzFmekg9zTUHsi+w3YqUm4jnzfgTyOZlDQdVv6ReD2Xjc9UrSYwAEqgRNVqg9jcaIFrVvnNmteFdVBywMbbc3ORuFIY0u6FaZe063QC4jLCb/sSe34k6sfvAl74YbYnjmpdRZzpTOQqShyjdWvjbJbiH0193VmGaXdzVPaSwUkpopHM= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MW5PR11MB5908.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(136003)(376002)(346002)(366004)(396003)(39860400002)(451199021)(26005)(478600001)(82960400001)(9686003)(6506007)(966005)(71200400001)(84970400001)(86362001)(186003)(2940100002)(53546011)(54906003)(38100700002)(66446008)(66946007)(66556008)(4326008)(66476007)(64756008)(83380400001)(110136005)(166002)(76116006)(7696005)(316002)(122000001)(5660300002)(8676002)(8936002)(52536014)(21615005)(38070700005)(41300700001)(2906002)(55016003)(33656002)(559001)(579004);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?ZP8WPwHFxQ6QE08hz9q6icsOiZS2bvEyB6Hz2EqlCCMFfE20PkLGAxUjBNKg?= =?us-ascii?Q?AHBn+6zYJrR1Iy5SgmUPEyyAnqaxiN847i92fra/a1bc6L0UgikD9nTGe34k?= =?us-ascii?Q?Fyg9vfF7M8CUdLqxO6StlrZsDpznycMH63EggmY5958i4mIcIeQWRHAbJkqH?= =?us-ascii?Q?iypNztsIQ/7tFsg2NG1zkyzeyuL6VjCk+5JDcR5a5HypTbp5G5zR2akbi+tA?= =?us-ascii?Q?zE8uRuYJChUnx3N3vlKebqMqzWAOT3iLWnUu7i0g0l2MQThLwzigsFUL0gLe?= =?us-ascii?Q?SZFnFZnoG5/oYzG8ihQCZDci7xXDRbBvcVlw1ctF7P7MvMS63wKiLBqT2jT6?= =?us-ascii?Q?AzJuhcw6/rBT7Awgl5CS9JvuZSGVjkImIou7nNtQqxoVXKjXi3SZxyR9ZdHm?= =?us-ascii?Q?5Ud/EnMjohJJ5+Z1Bx9W1mY5yP+AX/mDTHvw6/7tNl/mkRZNgO5aIcPTWDrx?= =?us-ascii?Q?DdoTtSitObIRGEHr0CklxxkKdKBVd4SvbK/cuPRB5g6hzI3V9605Ouihin1+?= =?us-ascii?Q?bEN8n/Q8/37xBblWZl0EUPbzMP8/YXNCC1ahitoBTtw6gTyN4kMUPfF4I0k9?= =?us-ascii?Q?4NJBSxtftOUw2Lyc8ykofVhY+glI5sQlS6rJ8b8XXTIuGuhm8iSxpIHmE98V?= =?us-ascii?Q?i5pLFWpfwzxKo3e4mk019XxDfIGPB6eFdQsgf8an4qPEypacXpXw9R6yxMfD?= =?us-ascii?Q?FRj+vNlVMNLSxyaiebqTZF5qG4FxNP74TftTUIXFVXFNp8+bbqXe0hgjP/+h?= =?us-ascii?Q?6Ld7spmhEWqmwUEycGC1zfFfOVaTGckkVsgztAus3wZtNUhTvvtn7VCIiwgI?= =?us-ascii?Q?YL2qSz6Tdy9iAUf4UMl+2TS6KbvgPJMaiJgKejzWlRFl+70frS2Grsgv010S?= =?us-ascii?Q?gI9z4Hg4ZhmWKic4FUbVSop00uKPF6EQlKgYJsR8S1nXZ55yQe9zYeFZP0yk?= =?us-ascii?Q?eBl5Hiwq9IbHdCixl0ivOUuIw/khCtxY9ELEbWjwJpfxcbDMNjxveN+vzHgZ?= =?us-ascii?Q?GAyZi+SCbBAffAcknIYLMDFZ/Ak81J540Mo295qwQ5IDsAfL9c+PVzm3JjwV?= =?us-ascii?Q?rpQVe6DlJLMyFrJopzcVE6v46Xs0F3mBX5i5kTsT1P3dv9Ru7+coQ4zBTrDA?= =?us-ascii?Q?KD58PF7pivrgIltebvseb7P9EgUIw6uz5N2YV9H8CxxDj9riLJZNKb7g8kZe?= =?us-ascii?Q?FhVSB1FtiB5vzL4TwQ4j6WkRWGXuMTQQrbjxlTma5JEm1vbu1oXGhQsVs1d6?= =?us-ascii?Q?pyXlUcnT3GyyPdXqoPCEW+/4em08zX6V388ZS21lms0XijLbkYLxDSh3w/W+?= =?us-ascii?Q?LI69QHXeXQHhwhdDZwXZ0EnMraHA40zlNd19BhEgQhji07wXzzJ2aR6y/jBi?= =?us-ascii?Q?KFp6Ewa+1tfjWDHOATM1v7IejAkqya0mvZfeyG22dTAmwUQvSUk/lTLND14W?= =?us-ascii?Q?tTBp8OUAqZrPCsSkPpXAe5IJypTiDP1rNDK/rGyZoRLtjQJFh3l4HS8Ezu0L?= =?us-ascii?Q?mm3ZDtcVss2ApR8G1atlhkQRjxDBTtsAL2jHFUf6g7J9iJrfTM+a66qFKhjy?= =?us-ascii?Q?QKg9/T40Ym8+/mEJt6c=3D?= Content-Type: multipart/alternative; boundary="_000_MW5PR11MB590837C14B87190ED1D6CDB0A92EAMW5PR11MB5908namp_" MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MW5PR11MB5908.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5693a47d-fa99-43e0-3ee6-08db7c660da4 X-MS-Exchange-CrossTenant-originalarrivaltime: 04 Jul 2023 08:09:56.0227 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: LuSoiyJtB122n8WQkXXrfFHzAn07sJs9DDizPPqXmTFWMvpSKHnQk7HzyPReDIWXsY6bKfHRDaeZJ9sVN7Woqw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW3PR11MB4649 X-OriginatorOrg: intel.com X-Spam-Status: No, score=-11.8 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,GIT_PATCH_0,HTML_MESSAGE,KAM_SHORT,RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL,SPF_HELO_NONE,SPF_NONE,TXREP,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: --_000_MW5PR11MB590837C14B87190ED1D6CDB0A92EAMW5PR11MB5908namp_ Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Update PATCH V2 for DYN in needed as below. https://gcc.gnu.org/pipermail/gcc-patches/2023-July/623543.html Pan From: Li, Pan2 Sent: Tuesday, July 4, 2023 2:50 PM To: juzhe.zhong@rivai.ai; gcc-patches Cc: Robin Dapp ; jeffreyalaw ; = Wang, Yanzhang ; kito.cheng Subject: RE: [PATCH v1] RISC-V: Fix one bug for floating-point static frm Thanks Juzhe, passed all the test of riscv.exp and rvv.exp, will commit it = with the reverted one with the final approval. Pan From: juzhe.zhong@rivai.ai > Sent: Tuesday, July 4, 2023 1:53 PM To: Li, Pan2 >; gcc-patches > Cc: Robin Dapp >; jeffreyal= aw >; Li, Pan2 >; Wang, Yanzhang >; kito.cheng > Subject: Re: [PATCH v1] RISC-V: Fix one bug for floating-point static frm LGTM ________________________________ juzhe.zhong@rivai.ai From: pan2.li Date: 2023-07-04 13:50 To: gcc-patches CC: juzhe.zhong; rdapp.gcc; jeffreyalaw; pan2.li; yanzhang.wang; kito.cheng Subject: [PATCH v1] RISC-V: Fix one bug for floating-point static frm From: Pan Li > This patch would like to fix one bug to align below items of spec. 1. By default, the RVV floating-point will take dyn mode. 2. DYN is invalid in FRM register for RVV floating-point. When mode switching the function entry and exit, it will take DYN as the frm mode. Signed-off-by: Pan Li > gcc/ChangeLog: * config/riscv/riscv.cc (riscv_emit_mode_set): Avoid emit insn when FRM_MODE_DYN. (riscv_mode_entry): Take FRM_MODE_DYN as entry mode. (riscv_mode_exit): Likewise for exit mode. gcc/testsuite/ChangeLog: * gcc.target/riscv/rvv/base/float-point-frm-insert-6.c: New test. --- gcc/config/riscv/riscv.cc | 6 ++-- .../riscv/rvv/base/float-point-frm-insert-6.c | 31 +++++++++++++++++++ 2 files changed, 34 insertions(+), 3 deletions(-) create mode 100644 gcc/testsuite/gcc.target/riscv/rvv/base/float-point-frm-= insert-6.c diff --git a/gcc/config/riscv/riscv.cc b/gcc/config/riscv/riscv.cc index e4dc8115e69..f5fe910426e 100644 --- a/gcc/config/riscv/riscv.cc +++ b/gcc/config/riscv/riscv.cc @@ -7670,7 +7670,7 @@ riscv_emit_mode_set (int entity, int mode, int prev_m= ode, emit_insn (gen_vxrmsi (gen_int_mode (mode, SImode))); break; case RISCV_FRM: - if (mode !=3D FRM_MODE_NONE && mode !=3D prev_mode) + if (mode !=3D FRM_MODE_DYN && mode !=3D prev_mode) { rtx scaler =3D gen_reg_rtx (SImode); rtx imm =3D gen_int_mode (mode, SImode); @@ -7774,7 +7774,7 @@ riscv_mode_entry (int entity) case RISCV_VXRM: return VXRM_MODE_NONE; case RISCV_FRM: - return FRM_MODE_NONE; + return FRM_MODE_DYN; default: gcc_unreachable (); } @@ -7791,7 +7791,7 @@ riscv_mode_exit (int entity) case RISCV_VXRM: return VXRM_MODE_NONE; case RISCV_FRM: - return FRM_MODE_NONE; + return FRM_MODE_DYN; default: gcc_unreachable (); } diff --git a/gcc/testsuite/gcc.target/riscv/rvv/base/float-point-frm-insert= -6.c b/gcc/testsuite/gcc.target/riscv/rvv/base/float-point-frm-insert-6.c new file mode 100644 index 00000000000..6d896e0953e --- /dev/null +++ b/gcc/testsuite/gcc.target/riscv/rvv/base/float-point-frm-insert-6.c @@ -0,0 +1,31 @@ +/* { dg-do compile } */ +/* { dg-options "-march=3Drv64gcv -mabi=3Dlp64 -O3 -Wno-psabi" } */ + +#include "riscv_vector.h" + +typedef float float32_t; + +vfloat32m1_t +test_riscv_vfadd_vv_f32m1_rm (vfloat32m1_t op1, vfloat32m1_t op2, size_t v= l) { + return __riscv_vfadd_vv_f32m1_rm (op1, op2, 7, vl); +} + +vfloat32m1_t +test_vfadd_vv_f32m1_m_rm(vbool32_t mask, vfloat32m1_t op1, vfloat32m1_t op= 2, + size_t vl) { + return __riscv_vfadd_vv_f32m1_m_rm(mask, op1, op2, 7, vl); +} + +vfloat32m1_t +test_vfadd_vf_f32m1_rm(vfloat32m1_t op1, float32_t op2, size_t vl) { + return __riscv_vfadd_vf_f32m1_rm(op1, op2, 7, vl); +} + +vfloat32m1_t +test_vfadd_vf_f32m1_m_rm(vbool32_t mask, vfloat32m1_t op1, float32_t op2, + size_t vl) { + return __riscv_vfadd_vf_f32m1_m_rm(mask, op1, op2, 7, vl); +} + +/* { dg-final { scan-assembler-times {vfadd\.v[vf]\s+v[0-9]+,\s*v[0-9]+,\s= *[fav]+[0-9]+} 4 } } */ +/* { dg-final { scan-assembler-not {fsrm\s+[ax][0-9]+,\s*[ax][0-9]+} } } */ -- 2.34.1 --_000_MW5PR11MB590837C14B87190ED1D6CDB0A92EAMW5PR11MB5908namp_--