RISC-V Hypervisor 0.6 Extensions

Jim Wilson jimw@sifive.com
Thu Jun 11 19:50:39 GMT 2020


On Thu, Jun 11, 2020 at 8:47 AM Schwarz, Konrad via Binutils
<binutils@sourceware.org> wrote:
> Apparently there is some reluctance to use the output of riscv-opcodes since its legal status is unclear,
> although the version of riscv-opc.h in binutils was inarguably originally generated by it.
> The generated riscv-opc.h file is, by nature, difficult to maintain manually and apparently
> there has been some discussion of replacing it completely.

Yes, the include/opcodes/riscv-opc.h was originally generated by the
github riscv/riscv-opcodes project.  But I have never used it, and
consider the binutils copy of the file to be the original source for
the file.

The generator was never GPLed or contributed to the FSF, and at this
point, so many people have touched it that we can probably never get
copyright assignments for all of them.  So there are possible GPL
violation issues with assuming that the original source for this file
is elsewhere.  There is also the problem that the database of
instructions is the property of RISC-V International and will never be
GPLed or assigned to the FSF.  I'm not sure if we need just the
generator or both the generator and the instruction database to be
GPLed and assigned.

There are also multiple projects in flight that have hand generated
changes for the riscv-opc.h file, a V extension port, a B extension
port, and various changes from Nelson to add missing CSRs and help fix
the current gdb/qemu interaction problems.  Auto-generating the file
might pose problems for these other projects.

And also I'm not comfortable having part of the original source for
binutils living in another project I have no control over.  We may
need to make changes to these files in support of GNU toolchain
development that conflict with the riscv-opcodes project.  Though we
may be able to work around some of these problems by adding another
file to binutils to override the incorrect or inconvenient stuff that
comes from the external generator.

Jim


More information about the Binutils mailing list