From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-lj1-x22b.google.com (mail-lj1-x22b.google.com [IPv6:2a00:1450:4864:20::22b]) by sourceware.org (Postfix) with ESMTPS id A0FD73858D39 for ; Wed, 19 Oct 2022 13:23:30 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org A0FD73858D39 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-lj1-x22b.google.com with SMTP id b18so22125054ljr.13 for ; Wed, 19 Oct 2022 06:23:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sifive.com; s=google; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=fo0foqqK3Jaao/DNS9QgcTZOvSxIDDlPM3G3TXpFl50=; b=OsY98yNFReGbSfrYCx+5c5aHIVozhm/0B6eT0QctW9z7Gtndjz7xHsoVVQn5j6zJEG FwkYhX1qrJ8OYw8FWzv4ghBi1tsLsRPoW58x82EVMFFjxuqQag5wxNPqyMtvMZ3GmHGu lc5resbKpZ9c3gh5JGcN24b29qAjlkuTpWop/U3IuNOeTTrltp321DBzmbH647TPM0rI YE4MGCWxgZA6Jg9SkRnR76BnNb432xEe/2Y2TcoSAQ4UC1d0Emaivf5pZXKUF4Az9sFN 0PqeZUhyyfvA1fDFoguFEQ0XhGuMEFJqgIEw2ZghWEly3nXDFC/lLSr9yfnhXXRILLgW sUNg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=fo0foqqK3Jaao/DNS9QgcTZOvSxIDDlPM3G3TXpFl50=; b=BytqJ739senmzNc3TeeYN1vOG3TNITNt4L9Wk+FQSG/MtBQlnl48YtCt8tdLMerJqg 742eBJYSTrIhK8gAo+NtGy0nHmn5jsivT3m5rFjIHUAyQftt/sMj0qx7a32ckfbZRCqd hWHVHXcDgtV4SsWpQn5FHPm5IsNba9L8v4sqVHWcO0YSTHp88UcdM2b95YKtLyyCtqff JnmuwxUJvOTqp7tGyGRmeqLuqSnENbwd2aZV8vD6/18DrMBMNfwDHRs/Kj2BUtqJOsnk DbQRA7WeqSDt3U8yA1SeBfFigGjITzWlNSfKXth6pbu75HjrtKboa6vjf1VABCqIZmC9 haFw== X-Gm-Message-State: ACrzQf0THgQO/zV4O8V18LLWb/7tNxbSXClQOX6JCbKHldLm4xYNFAet LW4V9cH5OmBnVBz7FIQ/K82MdthrbuLd7U+JZCfkZA== X-Google-Smtp-Source: AMsMyM7S7e9eShz8QnhcXJK+dj2Ucq3HYgZ1vr7nZbC+wghqYL6B3F9pG3bjObzC/IXmj7m0gMhKT2t8tUaFvXehKPI= X-Received: by 2002:a2e:890f:0:b0:26f:ad18:55bb with SMTP id d15-20020a2e890f000000b0026fad1855bbmr2689671lji.342.1666185809075; Wed, 19 Oct 2022 06:23:29 -0700 (PDT) MIME-Version: 1.0 References: <345c5c3b3a53eab04a1e6e91197de2642095c94f.1666185237.git.research_trasio@irq.a4lg.com> In-Reply-To: <345c5c3b3a53eab04a1e6e91197de2642095c94f.1666185237.git.research_trasio@irq.a4lg.com> From: Kito Cheng Date: Wed, 19 Oct 2022 21:23:17 +0800 Message-ID: Subject: Re: [PATCH] RISC-V: Remove RV32EF conflict To: Tsukasa OI Cc: Nelson Chu , Palmer Dabbelt , Andrew Waterman , binutils@sourceware.org Content-Type: multipart/alternative; boundary="00000000000047b7d305eb631db0" X-Spam-Status: No, score=-9.4 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,GIT_PATCH_0,HTML_MESSAGE,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,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 List-Id: --00000000000047b7d305eb631db0 Content-Type: text/plain; charset="UTF-8" The spec has been updated for a while, and this change only removes the limitation from the old spec, so LGTM. On Wed, Oct 19, 2022 at 9:14 PM Tsukasa OI wrote: > Despite that the RISC-V ISA Manual version 2.2 prohibited "RV32EF", later > versions beginning with the version 20190608-Base-Ratified removed this > restriction. Because the 'E' extension is still a draft, the author chose > to *just* remove the conflict (not checking the ISA version). > > Note that, because RV32E is only used with a soft-float calling convention, > there's no valid official ABI for RV32EF. It means, even if we can > assemble > a program with -march=rv32ef -mabi=ilp32e, floating-point registers are > kept > in an unmanaged state (outside ABI management). > > The purpose of this commit is to suppress unnecessary errors while parsing > an ISA string and/or disassembling, not to allow hard-float with RVE. > > bfd/ChangeLog: > > * elfxx-riscv.c (riscv_parse_check_conflicts): Accept RV32EF > because only older specifications disallowed it. > > gas/ChangeLog: > > * testsuite/gas/riscv/march-fail-rv32ef.d: Remove as not directly > prohibited. > * testsuite/gas/riscv/march-fail-rv32ef.l: Likewise. > --- > bfd/elfxx-riscv.c | 7 ------- > gas/testsuite/gas/riscv/march-fail-rv32ef.d | 3 --- > gas/testsuite/gas/riscv/march-fail-rv32ef.l | 2 -- > 3 files changed, 12 deletions(-) > delete mode 100644 gas/testsuite/gas/riscv/march-fail-rv32ef.d > delete mode 100644 gas/testsuite/gas/riscv/march-fail-rv32ef.l > > diff --git a/bfd/elfxx-riscv.c b/bfd/elfxx-riscv.c > index c89b1e53e92..334a63f0873 100644 > --- a/bfd/elfxx-riscv.c > +++ b/bfd/elfxx-riscv.c > @@ -1870,13 +1870,6 @@ riscv_parse_check_conflicts (riscv_parse_subset_t > *rps) > rps->error_handler (_("rv%d does not support the `q' extension"), > xlen); > no_conflict = false; > } > - if (riscv_lookup_subset (rps->subset_list, "e", &subset) > - && riscv_lookup_subset (rps->subset_list, "f", &subset)) > - { > - rps->error_handler > - (_("rv32e does not support the `f' extension")); > - no_conflict = false; > - } > if (riscv_lookup_subset (rps->subset_list, "zfinx", &subset) > && riscv_lookup_subset (rps->subset_list, "f", &subset)) > { > diff --git a/gas/testsuite/gas/riscv/march-fail-rv32ef.d > b/gas/testsuite/gas/riscv/march-fail-rv32ef.d > deleted file mode 100644 > index d7b51c3c17d..00000000000 > --- a/gas/testsuite/gas/riscv/march-fail-rv32ef.d > +++ /dev/null > @@ -1,3 +0,0 @@ > -#as: -march=rv32ef > -#source: empty.s > -#error_output: march-fail-rv32ef.l > diff --git a/gas/testsuite/gas/riscv/march-fail-rv32ef.l > b/gas/testsuite/gas/riscv/march-fail-rv32ef.l > deleted file mode 100644 > index e6d93f28fa5..00000000000 > --- a/gas/testsuite/gas/riscv/march-fail-rv32ef.l > +++ /dev/null > @@ -1,2 +0,0 @@ > -.*Assembler messages: > -.*Error: .*rv32e does not support the `f' extension > > base-commit: 2b06e59de0675c2cb526af2de6803dae29703d15 > -- > 2.34.1 > > --00000000000047b7d305eb631db0--