From patchwork Fri Apr 7 01:11:43 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "juzhe.zhong@rivai.ai" X-Patchwork-Id: 80593 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b0ea:0:b0:3b6:4342:cba0 with SMTP id b10csp1408238vqo; Thu, 6 Apr 2023 18:12:26 -0700 (PDT) X-Google-Smtp-Source: AKy350YQL6n97aleZVCSylVmhzmMab9L4xzvPpqBIn1VrMt0L0LRPEb4PHlJ9mMEYpmV408u0w/Z X-Received: by 2002:a17:907:d690:b0:92b:2389:46bd with SMTP id wf16-20020a170907d69000b0092b238946bdmr630447ejc.21.1680829946482; Thu, 06 Apr 2023 18:12:26 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1680829946; cv=none; d=google.com; s=arc-20160816; b=FIFBJ1/EWfI0srw6z1pvK799x7tq4FxSFs/PcRGOkd7bWCGQ82JSQ/WqXRU467MRDA NZYkbikG5Dqj1+aJG8hYE6cxiZHBzH7+pQVduS53twy+s42JvWGWKbQjx33T5CxYRvXo 8veUZsWGEqUDlF1Cwx9LKNI9/EqGBkxkmtH0LrIZ4LhpQ8GKoQf4xI8GuK9Mi6SHNVXW gBHQpmOIbg6YLgspvK7dLhfvAokWxUXmVsg1bncqmZJdfgZPoBkj0iVxzXm4d8ZcztVx q8/jWRF1NRqZu/SiIXh5y1B0onEhQYQM3Hr2aOx70O9faAPqjmO9FBGqxnEbh0Cf2jXL MyUg== 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:feedback-id :content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:dmarc-filter:delivered-to; bh=ZlKr19TccRY6VRB8OoxNo4jZZaCTtGUrhJm09FSbGK8=; b=X78BC5FXp9i3deK/Sr4q7/RDenuw1ngnwtIds/OINAYvWm7l1d30eOc0HRTHyImAn0 8keHoxN2s7HbXYQkrxB9tBPCIB8tLI5xU2drPP6tb4DNXbqfGp2sBzyUKZ1eam2IRFeH +0irXTMu5szbLSJUmCtZsQ2iFOhG3T6YjiJvB+HBfQhigePXejEuxFm9HQSZOBHT/0Et 3k+WqgdviL9cNjEB47PkenpGM+LD5YUN4umvcwrW7R/SODBouyhEuF2AuGzYlkGi9WYu tT4xdfcTY69oeuiliUIU8j+wvZy63Z3f3IxdFY4X0Ybmrt+tFbgVDmggdi+LBBMh/Q8B 5fsg== 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 sourceware.org (server2.sourceware.org. [2620:52:3:1:0:246e:9693:128c]) by mx.google.com with ESMTPS id q2-20020a17090676c200b00925a428b655si2185664ejn.699.2023.04.06.18.12.26 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 06 Apr 2023 18:12:26 -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 86DA53858C54 for ; Fri, 7 Apr 2023 01:12:20 +0000 (GMT) X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from smtpbgjp3.qq.com (smtpbgjp3.qq.com [54.92.39.34]) by sourceware.org (Postfix) with ESMTPS id 1AC6D3858D28 for ; Fri, 7 Apr 2023 01:11:53 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 1AC6D3858D28 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=rivai.ai Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=rivai.ai X-QQ-mid: bizesmtp69t1680829908ti0ga1n2 Received: from rios-cad5.localdomain ( [58.60.1.11]) by bizesmtp.qq.com (ESMTP) with id ; Fri, 07 Apr 2023 09:11:45 +0800 (CST) X-QQ-SSF: 01400000000000F0O000000A0000000 X-QQ-FEAT: xqT8U4SkSph8Al8FlzClNitAE2pTB8x7iok5wKqOigjRUIG+Ipw278kTj5U3a 6NCJOOYGAbJr7ffB/6lGxZNUJqq1eGE6U8pZhS2gXj41ZmG+RlZmlas37cyvVdFhei6gkVS DC0Bacny22830Oo15iJ+tQqH0b78G996C1BNstoPnSZ0Z60E4cj6iqSD50SVEFSD96YKt6d kw5Zl1xAwLEnpBTlXE0b8k4M78t51AviuOgTuI7snVvpwwaOrZI/mKPAJqW6F1HgpLYEqhF kMm17XzXMXdE2dcgYVZ8PVE2L9ZuqR1tdLZIUPA24o2EHX3Klz1eXkK/PSotXIpcaLx2dBj p1kGIAvjLJ4s5uoCaGvNX/oxZc7Xb8y1hJcQHdikcBWWvERuWk= X-QQ-GoodBg: 2 X-BIZMAIL-ID: 257753951047152980 From: juzhe.zhong@rivai.ai To: gcc-patches@gcc.gnu.org Cc: kito.cheng@gmail.com, palmer@dabbelt.com, jeffreyalaw@gmail.com, Juzhe-Zhong Subject: [PATCH] RISC-V: Fix incorrect condition of EEW = 64 mode Date: Fri, 7 Apr 2023 09:11:43 +0800 Message-Id: <20230407011143.46004-1-juzhe.zhong@rivai.ai> X-Mailer: git-send-email 2.36.3 MIME-Version: 1.0 X-QQ-SENDSIZE: 520 Feedback-ID: bizesmtp:rivai.ai:qybglogicsvr:qybglogicsvr7 X-Spam-Status: No, score=-12.8 required=5.0 tests=BAYES_00, GIT_PATCH_0, KAM_DMARC_STATUS, KAM_SHORT, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2, SPF_HELO_PASS, SPF_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.29 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: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1762477941914668940?= X-GMAIL-MSGID: =?utf-8?q?1762477941914668940?= From: Juzhe-Zhong This patch should be merged before this patch: https://gcc.gnu.org/pipermail/gcc-patches/2023-March/614935.html According to RVV ISA, the EEW = 64 is enable only when -march=*zve64* Current condition is incorrect, since -march=*zve32*_zvl64b will enable EEW = 64 which is incorrect. gcc/ChangeLog: * config/riscv/riscv-vector-switch.def (ENTRY): Change to TARGET_VECTOR_ELEN_64. --- gcc/config/riscv/riscv-vector-switch.def | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/gcc/config/riscv/riscv-vector-switch.def b/gcc/config/riscv/riscv-vector-switch.def index bfb591773dc..b772c282769 100644 --- a/gcc/config/riscv/riscv-vector-switch.def +++ b/gcc/config/riscv/riscv-vector-switch.def @@ -187,11 +187,11 @@ ENTRY (VNx1SF, TARGET_VECTOR_FP32 && TARGET_MIN_VLEN < 128, LMUL_1, 32, LMUL_F2, For double-precision floating-point, we need TARGET_VECTOR_FP64 == RVV_ENABLE. */ /* SEW = 64. Disable VNx1DImode/VNx1DFmode when TARGET_MIN_VLEN >= 128. */ -ENTRY (VNx16DI, TARGET_MIN_VLEN >= 128, LMUL_RESERVED, 0, LMUL_RESERVED, 0, LMUL_8, 8) -ENTRY (VNx8DI, TARGET_MIN_VLEN > 32, LMUL_RESERVED, 0, LMUL_8, 8, LMUL_4, 16) -ENTRY (VNx4DI, TARGET_MIN_VLEN > 32, LMUL_RESERVED, 0, LMUL_4, 16, LMUL_2, 32) -ENTRY (VNx2DI, TARGET_MIN_VLEN > 32, LMUL_RESERVED, 0, LMUL_2, 32, LMUL_1, 64) -ENTRY (VNx1DI, TARGET_MIN_VLEN > 32 && TARGET_MIN_VLEN < 128, LMUL_RESERVED, 0, LMUL_1, 64, LMUL_RESERVED, 0) +ENTRY (VNx16DI, TARGET_VECTOR_ELEN_64 && TARGET_MIN_VLEN >= 128, LMUL_RESERVED, 0, LMUL_RESERVED, 0, LMUL_8, 8) +ENTRY (VNx8DI, TARGET_VECTOR_ELEN_64, LMUL_RESERVED, 0, LMUL_8, 8, LMUL_4, 16) +ENTRY (VNx4DI, TARGET_VECTOR_ELEN_64, LMUL_RESERVED, 0, LMUL_4, 16, LMUL_2, 32) +ENTRY (VNx2DI, TARGET_VECTOR_ELEN_64, LMUL_RESERVED, 0, LMUL_2, 32, LMUL_1, 64) +ENTRY (VNx1DI, TARGET_VECTOR_ELEN_64 && TARGET_MIN_VLEN < 128, LMUL_RESERVED, 0, LMUL_1, 64, LMUL_RESERVED, 0) ENTRY (VNx16DF, TARGET_VECTOR_FP64 && (TARGET_MIN_VLEN >= 128), LMUL_RESERVED, 0, LMUL_RESERVED, 0, LMUL_8, 8) ENTRY (VNx8DF, TARGET_VECTOR_FP64 && (TARGET_MIN_VLEN > 32), LMUL_RESERVED, 0,