From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtpbgjp3.qq.com (smtpbgjp3.qq.com [54.92.39.34]) by sourceware.org (Postfix) with ESMTPS id 2B12A3858D1E for ; Mon, 17 Jul 2023 06:04:34 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 2B12A3858D1E 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: bizesmtp91t1689573868tf6g8swm Received: from server1.localdomain ( [58.60.1.22]) by bizesmtp.qq.com (ESMTP) with id ; Mon, 17 Jul 2023 14:04:27 +0800 (CST) X-QQ-SSF: 01400000000000G0T000000A0000000 X-QQ-FEAT: zT6n3Y95oi1bOmOdz3TO+x9uH1iDsckXDiUXqYmU4GpTkseChL9JXEbHqlkLg CQHQr/C2y4ffV2TlnrWN+xOc1MHw9p1Z1w8WBmgNpcUfgwsZhHfuX/RShSFPWkrAnIeff4n 6MtrFipB4ezyNkCOqBKbr1Sq/4YhzQGMRh7TUDEP/hvqmSTq02Boqf7At6Ofymzpr0DZXsM Kd97NjwbxA9jZ0i9UodGgmBuwy5NglciCLnVSDJE79N9gxtKNF6J3Qm9rauAYlzyrGcSgxi pF8WVI5JpKeerecZ8TEMTevOGoIWwMnv2jHzzAegB26mPlbpJrNbPAKJ7Wd232egISFeFk1 YEB8QR9Uyc6mCilU2iMRj7mE6myXQkfyGRWPxJVIQ13CLve6lFEFjedzIzLLpRDb9cu27Ov X-QQ-GoodBg: 2 X-BIZMAIL-ID: 285459182590708209 From: Juzhe-Zhong To: gcc-patches@gcc.gnu.org Cc: kito.cheng@gmail.com, kito.cheng@sifive.com, palmer@dabbelt.com, palmer@rivosinc.com, jeffreyalaw@gmail.com, rdapp.gcc@gmail.com, Juzhe-Zhong Subject: [PATCH] RISC-V: Add TARGET_MIN_VLEN > 4096 check Date: Mon, 17 Jul 2023 14:04:23 +0800 Message-Id: <20230717060423.31423-1-juzhe.zhong@rivai.ai> X-Mailer: git-send-email 2.36.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-QQ-SENDSIZE: 520 Feedback-ID: bizesmtp:rivai.ai:qybglogicsvrgz:qybglogicsvrgz7a-one-0 X-Spam-Status: No, score=-10.3 required=5.0 tests=BAYES_00,GIT_PATCH_0,KAM_DMARC_STATUS,RCVD_IN_BARRACUDACENTRAL,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL,SPF_HELO_PASS,SPF_PASS,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: gcc/ChangeLog: * config/riscv/riscv.cc (riscv_option_override): Report ERROR for TARGET_MIN_VLEN > 4096 --- gcc/config/riscv/riscv.cc | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/gcc/config/riscv/riscv.cc b/gcc/config/riscv/riscv.cc index 6ed735d6983..ce523eea9ba 100644 --- a/gcc/config/riscv/riscv.cc +++ b/gcc/config/riscv/riscv.cc @@ -6672,6 +6672,14 @@ riscv_option_override (void) riscv_stack_protector_guard_offset = offs; } + /* FIXME: We don't allow TARGET_MIN_VLEN > 4096 since the datatypes of + both GET_MODE_SIZE and GET_MODE_BITSIZE are poly_uint16. + + We can only allow TARGET_MIN_VLEN * 8 (LMUL) < 65535. */ + if (TARGET_MIN_VLEN > 4096) + error ( + "Current RISC-V GCC can not support VLEN > 4096bit for 'V' Extension"); + /* Convert -march to a chunks count. */ riscv_vector_chunks = riscv_convert_vector_bits (); } -- 2.36.1