[lowrisc-dev] Unofficial repository of Debian packages for RISC-V 64-bit (riscv64)

Stefan O'Rear sorear2 at gmail.com
Sat Apr 22 07:49:25 BST 2017


On Fri, Apr 21, 2017 at 11:05 PM, Dr Jonathan Kimmitt <jrrk2 at cam.ac.uk> wrote:
> Dear Manuel,
>   The incompatibility is perhaps due to changes in the way CSRs are numbered in Chisel and in the toolchain. Eventually the privilege spec will stabilise I hope and it will no longer be an issue.

I have specific knowledge here.

The CSR changes affect the kernel, which Debian does not build, so the
CSR changes are not relevant.

At least the following changes are relevant:

* The calling convention has changed for functions which take or
return floating-point or structure values.  For instance, the second
argument for ldexp is passed in %a1 in Manuel's packages and %a0 in
upstream gcc-7.

* "long double" is now a float128 rather than a float64, so any
package which calls sinl will malfunction against a newly compiled
libm.

* There have been several changes to glibc, in particular
sizeof(jmp_buf) has changed.

* The ELF flags have been renumbered, so binutils-2.28 ld cannot like
.o or .a files in this repository.

* ELF relocations have been renumbered, contributing to the previous
item.  I do not know if ld.so would also be affected.

-s



More information about the lowrisc-dev mailing list