From: Nelson Chu <nelson.chu@sifive.com>
To: Palmer Dabbelt <palmer@dabbelt.com>
Cc: Binutils <binutils@sourceware.org>,
gdb-patches@sourceware.org, Andrew Waterman <andrew@sifive.com>,
asb@lowrisc.org, Maxim Blinov <maxim.blinov@embecosm.com>,
Kito Cheng <kito.cheng@sifive.com>
Subject: Re: [PATCH 3/7] RISC-V: Support new GAS options and configure options to set ISA versions.
Date: Fri, 24 Apr 2020 10:37:53 +0800 [thread overview]
Message-ID: <CAJYME4EYptDpn72qH_BROrxrKTmXX+qTp3gUY2ZGtJRSkWJoXg@mail.gmail.com> (raw)
In-Reply-To: <mhng-94a41e69-11eb-4747-a29a-c8af432cf939@palmerdabbelt-glaptop1>
Hi Palmer,
On Fri, Apr 24, 2020 at 6:59 AM Palmer Dabbelt <palmer@dabbelt.com> wrote:
> > * -mriscv-isa-version = <ISA-string>
> > The syntax of <ISA-string> is same as -march option, but without rv32 or rv64
> > prefix. There are two reasons that you may need this option,
> >
> > 1. Some versions of extensions defined in the ISA spec are not matched to the
> > toolchain’s implementation. For example, V-ext is defined to version 0.7 in
> > ISA spec, but we only have implementations for 0.8 and 0.9. Therefore, you
> > have to use this option to choose the correct version for V-ext.
> >
> > 2. You want to update the version for the specific standard extensions if the
> > version are not set in the ELF arch attributes and -march option.
>
> I don't buy the argument for this. The V extension stuff isn't relevant: those
> are all draft versions, and this is a perfect reason why we don't want to take
> drafts upstream. When we have a defined V ISA it'll be part of a versioned
> RISC-V specification and any users that want it can just use at least that ISA
> spec.
I think I got your point, we all have reached consensus that it's
better not to take draft spec upstream. The v-extension might be a
little different, the latest released ISA spec defines the v-ext as
0.7, even if the released riscv-v-spec is up to 0.8. According to our
consensus, we should accept the 0.8 and 0.9 v-ext on upstream until we
have a released ISA spec defining them. Otherwise, we can just accept
the 0.7 v-ext for now. I guess that is why we just have v-ext 0.8 and
0.9 on riscv/riscv-binutils-gdb rather than upstream. This makes
sense, thank you :)
And we can still use -march to choose the version we want, including
v-ext. If users use the rvv-0.9.x in riscv/riscv-binutils-gdb, they
have to set the v-ext with version 0.9 by -march. Otherwise, we will
give them v0p0 if they only set -misa-spec=20191213.
> For the second argument, why not just provide those via -march? I can buy that
> it's a pain to build up valid -march strings in build scripts, but this just
> fixes a specific instance of that problem (and that's not going to be that
> common, as most users just want a single ISA version).
Umm I have to think about this again.
> I haven't really looked at the code, as dropping this will change the patches pretty drasticly.
Yes dropping this need to rewrite the code structure. I must think
about that if we can have a better solution to reduce the overhead of
-march setting in the build script.
Thanks for the suggestions, they are really helpful :)
Nelson
next prev parent reply other threads:[~2020-04-24 2:38 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-04-18 11:07 [PATCH 0/7] RISC-V: Support version controling for ISA standard extensions and CSR Nelson Chu
2020-04-18 11:07 ` [PATCH 1/7] RISC-V: Remove the redundant gas test file Nelson Chu
2020-04-18 11:17 ` Nelson Chu
2020-04-18 11:20 ` Nelson Chu
2020-04-18 11:07 ` [PATCH 2/7] RISC-V: Forgot to update the priv-reg-fail-read-only-01 test case Nelson Chu
2020-04-18 11:17 ` Nelson Chu
2020-04-18 11:07 ` [PATCH 3/7] RISC-V: Support new GAS options and configure options to set ISA versions Nelson Chu
2020-04-18 11:18 ` Nelson Chu
2020-04-23 22:58 ` Palmer Dabbelt
2020-04-24 2:37 ` Nelson Chu [this message]
2020-04-24 6:43 ` Nelson Chu
2020-04-18 11:07 ` [PATCH 4/7] RISC-V: Support version checking for CSR according to privilege version Nelson Chu
2020-04-18 11:18 ` Nelson Chu
2020-04-24 10:21 ` Andrew Burgess
2020-04-27 1:35 ` Nelson Chu
2020-04-18 11:07 ` [PATCH 5/7] RISC-V: Make privilege spec attributes work Nelson Chu
2020-04-18 11:18 ` Nelson Chu
2020-04-18 11:07 ` [PATCH 6/7] RISC-V: Disassembler dumps the CSR according to the chosen privilege spec Nelson Chu
2020-04-18 11:18 ` Nelson Chu
2020-04-18 11:07 ` [PATCH 7/7] RISC-V: Add documents and --help for the new GAS and OBJDUMP options Nelson Chu
2020-04-18 11:19 ` Nelson Chu
2020-04-18 11:17 ` [PATCH 0/7] RISC-V: Support version controling for ISA standard extensions and CSR Nelson Chu
2020-04-23 20:59 ` Palmer Dabbelt
2020-04-30 16:10 ` Kito Cheng
2020-05-01 9:29 ` Nelson Chu
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=CAJYME4EYptDpn72qH_BROrxrKTmXX+qTp3gUY2ZGtJRSkWJoXg@mail.gmail.com \
--to=nelson.chu@sifive.com \
--cc=andrew@sifive.com \
--cc=asb@lowrisc.org \
--cc=binutils@sourceware.org \
--cc=gdb-patches@sourceware.org \
--cc=kito.cheng@sifive.com \
--cc=maxim.blinov@embecosm.com \
--cc=palmer@dabbelt.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox