diff mbox series

[01/17] Skeleton documentation for the RISC-V port

Message ID 20180125043621.19972-2-palmer@dabbelt.com
State New
Headers show
Series [01/17] Skeleton documentation for the RISC-V port | expand

Commit Message

Palmer Dabbelt Jan. 25, 2018, 4:36 a.m. UTC
During the upstreaming process it was suggested that I add a handful of
small documentation entries about the RISC-V port, which I've collected
here.

2018-01-13  Palmer Dabbelt  <palmer@sifive.com>

        * manual/math.texi: RISC-V supports _Float128 and _Float64x
---
 NEWS             | 15 +++++++++++----
 README           |  2 ++
 manual/math.texi |  2 +-
 3 files changed, 14 insertions(+), 5 deletions(-)

Comments

Joseph Myers Jan. 25, 2018, 4:49 p.m. UTC | #1
On Wed, 24 Jan 2018, Palmer Dabbelt wrote:

> @@ -98,6 +98,13 @@ Major new features:
>    to fail to load locales and fall back to the builtin C/POSIX locales.
>    See notes below for other changes affecting compatibility.
>  
> +* Support for the RISC-V ISA running on Linux has been added.  This port
> +  requires at least binutils-2.30, gcc-7.3.0, and linux-4.15; and is supported
> +  for the following ISA and ABI pairs:
> +
> +    - rv64imafdc lp64
> +    - rv64imafdc lp64d

> diff --git a/README b/README
> index d0e99ea7d5a0..425a82956fc8 100644
> --- a/README
> +++ b/README
> @@ -39,6 +39,8 @@ The GNU C Library supports these configurations for using Linux kernels:
>  	powerpc64*-*-linux-gnu	Big-endian and little-endian.
>  	s390-*-linux-gnu
>  	s390x-*-linux-gnu
> +	riscv32-*-linux-gnu
> +	riscv64-*-linux-gnu

So, this is an example of the inconsistency about whether RV32 is 
supported or not.  I'd expect one of:

* List all six combinations in NEWS, with appropriate caveats about the 
state of kernel and glibc support for RV32 and soft-float, and a caveat 
about riscv32-*-linux-gnu in README (the latter caveat to be removed later 
once it's known to be working properly).

* Remove the riscv32-*-linux-gnu README entry, and all the other RV32 
support in the port.
Palmer Dabbelt Jan. 25, 2018, 6:04 p.m. UTC | #2
On Thu, 25 Jan 2018 08:49:54 PST (-0800), joseph@codesourcery.com wrote:
> On Wed, 24 Jan 2018, Palmer Dabbelt wrote:
>
>> @@ -98,6 +98,13 @@ Major new features:
>>    to fail to load locales and fall back to the builtin C/POSIX locales.
>>    See notes below for other changes affecting compatibility.
>>
>> +* Support for the RISC-V ISA running on Linux has been added.  This port
>> +  requires at least binutils-2.30, gcc-7.3.0, and linux-4.15; and is supported
>> +  for the following ISA and ABI pairs:
>> +
>> +    - rv64imafdc lp64
>> +    - rv64imafdc lp64d
>
>> diff --git a/README b/README
>> index d0e99ea7d5a0..425a82956fc8 100644
>> --- a/README
>> +++ b/README
>> @@ -39,6 +39,8 @@ The GNU C Library supports these configurations for using Linux kernels:
>>  	powerpc64*-*-linux-gnu	Big-endian and little-endian.
>>  	s390-*-linux-gnu
>>  	s390x-*-linux-gnu
>> +	riscv32-*-linux-gnu
>> +	riscv64-*-linux-gnu
>
> So, this is an example of the inconsistency about whether RV32 is
> supported or not.  I'd expect one of:
>
> * List all six combinations in NEWS, with appropriate caveats about the
> state of kernel and glibc support for RV32 and soft-float, and a caveat
> about riscv32-*-linux-gnu in README (the latter caveat to be removed later
> once it's known to be working properly).
>
> * Remove the riscv32-*-linux-gnu README entry, and all the other RV32
> support in the port.

Oh, sorry about that, I forgot about the README.  I'm going to proceed for now 
with removing the rv32 support, if it's better to add the caveats then it'll be 
easy to back out the changes.
diff mbox series

Patch

diff --git a/NEWS b/NEWS
index ecefc5236489..4cd77c1e2f98 100644
--- a/NEWS
+++ b/NEWS
@@ -41,13 +41,13 @@  Major new features:
   process aborts as the result of assertion failures.
 
 * On platforms where long double has the IEEE binary128 format (aarch64,
-  alpha, mips64, s390 and sparc), the math library now implements _Float128
-  interfaces for that type, as defined by ISO/IEC TS 18661-3:2015.  These
-  are the same interfaces added in version 2.26 for some platforms where
+  alpha, mips64, riscv, s390 and sparc), the math library now implements
+  _Float128 interfaces for that type, as defined by ISO/IEC TS 18661-3:2015.
+  These are the same interfaces added in version 2.26 for some platforms where
   this format is supported but is not the format of long double.
 
 * On platforms with support for _Float64x (aarch64, alpha, i386, ia64,
-  mips64, powerpc64le, s390, sparc and x86_64), the math library now
+  mips64, powerpc64le, riscv, s390, sparc and x86_64), the math library now
   implements interfaces for that type, as defined by ISO/IEC TS
   18661-3:2015.  These are corresponding interfaces to those supported for
   _Float128.
@@ -98,6 +98,13 @@  Major new features:
   to fail to load locales and fall back to the builtin C/POSIX locales.
   See notes below for other changes affecting compatibility.
 
+* Support for the RISC-V ISA running on Linux has been added.  This port
+  requires at least binutils-2.30, gcc-7.3.0, and linux-4.15; and is supported
+  for the following ISA and ABI pairs:
+
+    - rv64imafdc lp64
+    - rv64imafdc lp64d
+
 Deprecated and removed features, and other changes affecting compatibility:
 
 * Statically compiled applications attempting to load locales compiled for the
diff --git a/README b/README
index d0e99ea7d5a0..425a82956fc8 100644
--- a/README
+++ b/README
@@ -39,6 +39,8 @@  The GNU C Library supports these configurations for using Linux kernels:
 	powerpc64*-*-linux-gnu	Big-endian and little-endian.
 	s390-*-linux-gnu
 	s390x-*-linux-gnu
+	riscv32-*-linux-gnu
+	riscv64-*-linux-gnu
 	sh[34]-*-linux-gnu
 	sparc*-*-linux-gnu
 	sparc64*-*-linux-gnu
diff --git a/manual/math.texi b/manual/math.texi
index a9f2a9813832..d19a14b47dc3 100644
--- a/manual/math.texi
+++ b/manual/math.texi
@@ -70,7 +70,7 @@  provided for @code{_Float32}, @code{_Float64} and @code{_Float32x} on
 all platforms.
 It is also provided for @code{_Float128} and @code{_Float64x} on
 powerpc64le (PowerPC 64-bits little-endian), x86_64, x86, ia64,
-aarch64, alpha, mips64, s390 and sparc.
+aarch64, alpha, mips64, riscv, s390 and sparc.
 
 @menu
 * Mathematical Constants::      Precise numeric values for often-used