From patchwork Tue Nov 9 16:28:25 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kito Cheng X-Patchwork-Id: 47294 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 98287385800C for ; Tue, 9 Nov 2021 16:28:57 +0000 (GMT) X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from mail-pl1-x62b.google.com (mail-pl1-x62b.google.com [IPv6:2607:f8b0:4864:20::62b]) by sourceware.org (Postfix) with ESMTPS id 3F7143858409 for ; Tue, 9 Nov 2021 16:28:31 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 3F7143858409 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=sifive.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=sifive.com Received: by mail-pl1-x62b.google.com with SMTP id y1so21839566plk.10 for ; Tue, 09 Nov 2021 08:28:31 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sifive.com; s=google; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=+6s/ceGuZ5nIXAaTpHwgky6ukyKyGq+lZMfV/mPLoGs=; b=SvrQZn5rhEyE/atUQADGppwCtcv9Swm78JcSaxKmybdpSiqzdrcQ6v/g3B7DNyeOpo f/OTwO3zj5xvcBSamw3+Sr1ifXcHjxFnaAqd+lVAOOPDYOfaN+VpDYD91uMCkn+nmzI6 V7sPXlKuH68L/zrYeaJBM8VmcdleD3v1Z5/OZMbW2DVeScqZlArYlWg+UbK8+GuCWuoA xuG4J5OmyPQ54YH4pPzcXeDzQ9bPf/NBsdWYYq74EPKnlXJrTY+RpAZNeoiVTxTHaaCm PHBNA08tNQEQuCPXgQC0vjg2Y0Sfp9+B8/Q3FUDmMLjUCWhyt1mIye3bR1m43WLdKMr1 CquQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=+6s/ceGuZ5nIXAaTpHwgky6ukyKyGq+lZMfV/mPLoGs=; b=KFLfXqtoptC9TULBrhEAJTfRqwoE+85kykYCE6z1AjCoN5FwYzhw6xcx2Tj8Xsf9WE 7GaNyFU0CkEXK95GTXdfmPXXLVqwCLmx2YaMl3hlqXPCzp/DDC2+T+tyKRTLRnLZcrlT w6T3O5/u/evbyfI4zrmzE2hJd9rHq1HotSBRYFtu5aaMB1VQGQ5c+AISj10sVMPLM9FK frQ+w5hKrsa4a7IpUFyQKx0YkiODSWax1ZwYUDT1/V4I/FmLkV4rjNrMeWy/AkCeYNRQ RBpTfEOvL4lglXPJV7rOfCDeLHb0y/Ef1xadMFG1Bw0oCCObdY0sfK/15pxeRCGTBnBc 66RQ== X-Gm-Message-State: AOAM5326w7wxgyhfLB2hb6AHU+2QPP+1+zpC720EEdre8vjApAiltdOp /+VnlM2vid9aLqLjfYXwUK+xWk1WHkri/Q== X-Google-Smtp-Source: ABdhPJzPVSTeN7C/+xvyalCT5LkB8PQ6IWV2CVjSWEN0MABSWHH+Qv9AFmbN9lbKIIS/6ed1P0j/0A== X-Received: by 2002:a17:90a:fd96:: with SMTP id cx22mr8591711pjb.151.1636475309846; Tue, 09 Nov 2021 08:28:29 -0800 (PST) Received: from hsinchu02.internal.sifive.com (59-124-168-89.hinet-ip.hinet.net. [59.124.168.89]) by smtp.gmail.com with ESMTPSA id c2sm7219508pfv.112.2021.11.09.08.28.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 09 Nov 2021 08:28:29 -0800 (PST) From: Kito Cheng To: gcc-patches@gcc.gnu.org, kito.cheng@gmail.com, jimw@sifive.com Subject: [committed] [PR/target 102957] Allow Z*-ext extension with only 2 char. Date: Wed, 10 Nov 2021 00:28:25 +0800 Message-Id: <20211109162825.113590-1-kito.cheng@sifive.com> X-Mailer: git-send-email 2.33.0 MIME-Version: 1.0 X-Spam-Status: No, score=-13.5 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, KAM_SHORT, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) 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: , Cc: Kito Cheng Errors-To: gcc-patches-bounces+patchwork=sourceware.org@gcc.gnu.org Sender: "Gcc-patches" We was assume the Z* extension should be more than 2 char, so we put an assertion there, but it should just an error or warning rather than an assertion, however RISC-V has add `Zk` extension, which just 2 char, so actually, we should just allow that. gcc/ChangeLog PR target/102957 * common/config/riscv/riscv-common.c (multi_letter_subset_rank): Remove assertion for Z*-ext. gcc/testsuite/ChangeLog * gcc.target/riscv/pr102957.c: New. --- gcc/common/config/riscv/riscv-common.c | 1 - gcc/testsuite/gcc.target/riscv/pr102957.c | 5 +++++ 2 files changed, 5 insertions(+), 1 deletion(-) create mode 100644 gcc/testsuite/gcc.target/riscv/pr102957.c diff --git a/gcc/common/config/riscv/riscv-common.c b/gcc/common/config/riscv/riscv-common.c index 37b6ea80086..f3c120b4cb4 100644 --- a/gcc/common/config/riscv/riscv-common.c +++ b/gcc/common/config/riscv/riscv-common.c @@ -202,7 +202,6 @@ multi_letter_subset_rank (const std::string &subset) high_order = 1; break; case 'z': - gcc_assert (subset.length () > 2); high_order = 2; break; case 'x': diff --git a/gcc/testsuite/gcc.target/riscv/pr102957.c b/gcc/testsuite/gcc.target/riscv/pr102957.c new file mode 100644 index 00000000000..8a7e541bf6d --- /dev/null +++ b/gcc/testsuite/gcc.target/riscv/pr102957.c @@ -0,0 +1,5 @@ +/* { dg-do compile } */ +/* { dg-options "-O -march=rv64gzb -mabi=lp64" } */ +int foo() +{ +}