A new newlib version has been realized yesterday: newlib-4.3.0 (yearly snapshot)
https://sourceware.org/pipermail/newlib/2023/020141.html
https://sourceware.org/ftp/newlib/index.html → 2023-01-20: 
newlib-4.3.0.20230120.tar.gz (8.8 MB)

For both nvptx and GCN, the new version is recommended - mostly because of 
upcoming changes
and not because GCC mainline already needs them currently. But soon it will, 
hence:

The attached patch bumps the minimal version instead of keeping the old version 
and only
recommending the newer one.

Comments? Suggestions? – If there are none, I intent to commit the patch as 
obvious.

Tobias

PS: For AMDGCN, the newlib uses (if available) some new builtins: one provided 
by GCC 13
but having the currently same value as the hard coded registers that get used 
if the builtin
s not available - to permit a change to non-private stack variables (required 
for reverse offload;
will require recompilation of newlib).
And to support vectorized math functions. (The gcn builtins still have to be 
added to GCC 13;
if the builtins aren't available, newlib won't use them - hence, also will 
later require a
rebuild with the newer newlib).

For nvptx, newlib added some features to permit building a non-minimal version 
of libgfortran,
which also permits I/O. The libgfortran changes have been approved but the GCC 
nvptx patches
still have to be reviewed (and would also require a pending nvptx-tools pull 
request).

BTW: The gcn vect math and the nvptx changes went into newlib in the last few 
days. Thus, if
you have use the 'git' version it won't have the changes, unless you updated at 
least yesterday.
-----------------
Siemens Electronic Design Automation GmbH; Anschrift: Arnulfstraße 201, 80634 
München; Gesellschaft mit beschränkter Haftung; Geschäftsführer: Thomas 
Heurung, Frank Thürauf; Sitz der Gesellschaft: München; Registergericht 
München, HRB 106955
install.texi: Bump newlib version for nvptx + gcn

Before, newlib 3.2 was required for amdgcn and 3.1 for nvptx.
Now recommended is 4.3.0 which was just released on 2023-01-20.

While currently the old versions would work fine, upcoming GCC 
changes depend on a newer newlib. Thus, the minimal version is
bumped instead of just recommending the new version.

For GCN, the bump is in preparation for permitting non-threadlocal
stack variables and vectorized math functions - both scheduled for
GCC 13 and added to newlib in 4.3.0.

For nvptx, this includes an emulated clock (commit 6bb96d13a),
a calloc fix (5fca4e0f1) and changes to permit libgfortran to be
compiled with I/O support instead of only in minimal mode.
(Patch approved for GCC 13 but pending on a nvtpx patch.)

gcc/ChangeLog:

	* doc/install.texi (amdgcn, nvptx): Require newlib 4.3.0.

diff --git a/gcc/doc/install.texi b/gcc/doc/install.texi
index ccc8d15fd08..b1861a6a437 100644
--- a/gcc/doc/install.texi
+++ b/gcc/doc/install.texi
@@ -3855,7 +3855,7 @@ Instead of GNU Binutils, you will need to install LLVM 13.0.1, or later, and cop
 @file{bin/llvm-ar} to both @file{bin/amdgcn-amdhsa-ar} and
 @file{bin/amdgcn-amdhsa-ranlib}.
 
-Use Newlib (3.2.0, or newer).
+Use Newlib (4.3.0 or newer).
 
 To run the binaries, install the HSA Runtime from the
 @uref{https://rocm.github.io,,ROCm Platform}, and use
@@ -4672,7 +4672,7 @@ Instead of GNU binutils, you will need to install
 Tell GCC where to find it:
 @option{--with-build-time-tools=[install-nvptx-tools]/nvptx-none/bin}.
 
-You will need newlib 3.1.0 or later.  It can be
+You will need newlib 4.3.0 or later.  It can be
 automatically built together with GCC@.  For this, add a symbolic link
 to nvptx-newlib's @file{newlib} directory to the directory containing
 the GCC sources.

Reply via email to