manifest_format=1.6 # Note that for ABE, these parameters are not used # Component data for dejagnu dejagnu_url=https://git.linaro.org/git/toolchain dejagnu_branch=linaro-local/stable dejagnu_revision=e35e23954791251cf332d15df1958459f94ae584 dejagnu_filespec=dejagnu.git dejagnu_mingw_only="no" dejagnu_linuxhost_only="no" dejagnu_staticlink="yes" # Component data for gmp gmp_url=https://snapshots.linaro.org/components/toolchain/infrastructure gmp_filespec=gmp-6.1.2.tar.xz gmp_md5sum=f58fa8001d60c4c77595fbbb62b63c1d gmp_mingw_only="no" gmp_linuxhost_only="no" gmp_configure="--enable-cxx --enable-fft" gmp_staticlink="yes" # Component data for mpfr mpfr_url=https://snapshots.linaro.org/components/toolchain/infrastructure mpfr_filespec=mpfr-3.1.5.tar.xz mpfr_md5sum=c4ac246cf9795a4491e7766002cd528f mpfr_mingw_only="no" mpfr_linuxhost_only="no" mpfr_configure="--with-gmp=${local_builds}/destdir/${host}" mpfr_staticlink="yes" # Component data for mpc mpc_url=https://snapshots.linaro.org/components/toolchain/infrastructure/ mpc_filespec=mpc-1.0.3.tar.gz mpc_md5sum=d6a1d5f8ddea3abd2cc3e98f58352d26 mpc_mingw_only="no" mpc_linuxhost_only="no" mpc_configure="--with-gmp=${local_builds}/destdir/${host} --with-mpfr=${local_builds}/destdir/${host}" mpc_staticlink="yes" # Component data for binutils binutils_url=https://git.linaro.org/git/toolchain binutils_branch=binutils-2_40-branch binutils_revision=391fd4d9ee5d2b78244cbcd57fc405738359b70b binutils_filespec=binutils-gdb.git binutils_mingw_only="no" binutils_linuxhost_only="no" binutils_configure="--enable-lto --enable-plugins --enable-gold --disable-werror CPPFLAGS=-UFORTIFY_SOURCE --with-pkgversion=Linaro_Binutils-2024.02.14 --disable-gdb --disable-sim --disable-libdecnumber --disable-readline --with-sysroot=${local_builds}/destdir/${host}/aarch64-linux-gnu" binutils_staticlink="yes" # Component data for linux linux_url=git://git.kernel.org/pub/scm/linux/kernel/git/stable linux_branch=linux-rolling-lts linux_revision=162a00a6039dbc77eb0252f1c2a47a71a7bd711a linux_filespec=linux.git linux_mingw_only="no" linux_linuxhost_only="no" linux_staticlink="yes" # Component data for expat expat_url=https://snapshots.linaro.org/components/toolchain/infrastructure/ expat_filespec=expat-2.1.0-1-mingw32-dev.tar.xz expat_md5sum=1dae54e2670882843d496692154a0e27 expat_mingw_only="yes" expat_linuxhost_only="no" expat_staticlink="yes" # Component data for python python_url=https://snapshots.linaro.org/components/toolchain/infrastructure/ python_filespec=python-2.7.4-mingw32.tar.xz python_md5sum=9b3092eff5508c4802936dfe4f5225ef python_mingw_only="yes" python_linuxhost_only="no" python_staticlink="yes" # Component data for libiconv libiconv_url=https://snapshots.linaro.org/components/toolchain/infrastructure/ libiconv_filespec=libiconv-1.14-3-mingw32-dev.tar.xz libiconv_md5sum=7ead614fa3a8bc266e70c6fcdf198219 libiconv_mingw_only="yes" libiconv_linuxhost_only="no" libiconv_staticlink="yes" # Component data for gcc gcc_url=https://git.linaro.org/git/toolchain gcc_branch=releases/gcc-12 gcc_revision=fddce05d67f34174be0f306e1015d3868bbe7c31 gcc_filespec=gcc.git gcc_makeflags="MAKEINFOFLAGS=--force" gcc_mingw_only="no" gcc_linuxhost_only="no" gcc_configure= gcc_mingw_extraconf="--with-libiconv-prefix=${local_builds}/destdir/${host}/usr --with-system-zlib=no" gcc_staticlink="no" gcc_stage1_flags="--with-mpc=${local_builds}/destdir/${host} --with-mpfr=${local_builds}/destdir/${host} --with-gmp=${local_builds}/destdir/${host} --with-gnu-as --with-gnu-ld --disable-libmudflap --enable-lto --enable-shared --without-included-gettext --enable-nls --with-system-zlib --disable-sjlj-exceptions --enable-gnu-unique-object --enable-linker-build-id --disable-libstdcxx-pch --enable-c99 --enable-clocale=gnu --enable-libstdcxx-debug --enable-long-long --with-cloog=no --with-ppl=no --with-isl=no --disable-multilib --enable-fix-cortex-a53-835769 --enable-fix-cortex-a53-843419 --with-arch=armv8-a --enable-threads=posix --enable-multiarch --enable-libstdcxx-time=yes --enable-gnu-indirect-function --disable-libssp --disable-libquadmath --disable-threads --without-headers --with-newlib --disable-libmudflap --disable-decimal-float --disable-libgomp --disable-libatomic --disable-libsanitizer --disable-plugins --disable-libitm --enable-languages=c,c++ --disable-libstdcxx --disable-libvtv --disable-shared --with-glibc-version=2.18 --disable-bootstrap" gcc_stage2_flags="--with-mpc=${local_builds}/destdir/${host} --with-mpfr=${local_builds}/destdir/${host} --with-gmp=${local_builds}/destdir/${host} --with-gnu-as --with-gnu-ld --disable-libmudflap --enable-lto --enable-shared --without-included-gettext --enable-nls --with-system-zlib --disable-sjlj-exceptions --enable-gnu-unique-object --enable-linker-build-id --disable-libstdcxx-pch --enable-c99 --enable-clocale=gnu --enable-libstdcxx-debug --enable-long-long --with-cloog=no --with-ppl=no --with-isl=no --disable-multilib --enable-fix-cortex-a53-835769 --enable-fix-cortex-a53-843419 --with-arch=armv8-a --enable-threads=posix --enable-multiarch --enable-libstdcxx-time=yes --enable-gnu-indirect-function --with-sysroot=${local_builds}/destdir/${host}/aarch64-linux-gnu/libc --enable-checking=yes --disable-bootstrap --enable-languages=c,c++,fortran,lto" # Component data for glibc glibc_url=https://git.linaro.org/git/toolchain glibc_branch=release/2.37/master glibc_revision=23021eda75eee44b4b2ae350e63dc404dac6407d glibc_filespec=glibc.git glibc_makeflags="PARALLELMFLAGS=-j32" glibc_mingw_only="no" glibc_linuxhost_only="no" glibc_configure="--disable-profile --with-gd=no --with-headers=${local_builds}/destdir/${host}/aarch64-linux-gnu/libc/usr/include --without-selinux" # Component data for gdb gdb_url=https://git.linaro.org/git/toolchain gdb_branch=gdb-13-branch gdb_revision=c987953c1028fce9ea6080fdfbbc7d25192be69e gdb_filespec=binutils-gdb.git gdb_makeflags="all-gdb" gdb_mingw_only="no" gdb_linuxhost_only="no" gdb_configure="--with-gnu-ld --enable-plugins --enable-tui --with-pkgversion=Linaro_GDB-2024.02.14 --disable-gas --disable-binutils --disable-elfcpp --disable-ld --disable-gold --disable-gprof --with-python=python3 --disable-werror --with-auto-load-safe-path=@@debugdir:@@datadir/auto-load:${local_builds}/destdir/${host}/aarch64-linux-gnu --with-additional-debug-dirs=/usr/lib/debug" gdb_mingw_extraconf="--disable-tui --with-python=no --with-gmp=${local_builds}/destdir/${host} --with-mpfr=${local_builds}/destdir/${host} CFLAGS=-I${local_builds}/destdir/${host}/usr/include LDFLAGS=-L${local_builds}/destdir/${host}/usr/lib" gdb_staticlink="yes" # Component data for gdbserver gdbserver_url=https://git.linaro.org/git/toolchain gdbserver_branch=gdb-13-branch gdbserver_revision=c987953c1028fce9ea6080fdfbbc7d25192be69e gdbserver_filespec=binutils-gdb.git gdbserver_makeflags="all-gdbserver" gdbserver_mingw_only="no" gdbserver_linuxhost_only="no" gdbserver_configure="--with-gnu-ld --enable-plugins --enable-tui --with-pkgversion=Linaro_GDB-2024.02.14 --disable-gas --disable-binutils --disable-elfcpp --disable-ld --disable-gold --disable-gprof --with-python=python3 --disable-gdb" gdbserver_staticlink="yes" # Component data for qemu qemu_url=https://gitlab.com/qemu-project qemu_branch=v7.0.0 qemu_revision=823a3f11fb8f04c3c3cc0f95f968fef1bfc6534f qemu_filespec=qemu.git qemu_mingw_only="no" qemu_linuxhost_only="yes" qemu_configure="--target-list=aarch64-linux-user,aarch64-softmmu" qemu_staticlink="no" clibrary=glibc target=aarch64-linux-gnu manifestid=2b40b18ef0608fe7b1ca53fe5a1cef6eeaf17c3e ############################################################################## # Everything below this line is only for informational purposes for developers ############################################################################## # Build machine data build: linux host: x86_64-pc-linux-gnu kernel: 4.15.0-88-generic hostname: 8c42d294a828 distribution: jammy host_gcc: gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04) # These aren't used in the repeat build. just a sanity check for developers build directory: /home/tcwg-buildslave/workspace/tcwg-abe-test__0/abe-tests/full-manifest-test/build2/builds sysroot directory: /home/tcwg-buildslave/workspace/tcwg-abe-test__0/abe-tests/full-manifest-test/build2/builds/destdir/x86_64-pc-linux-gnu/aarch64-linux-gnu snapshots directory: /home/tcwg-buildslave/workspace/tcwg-abe-test__0/abe-tests/full-manifest-test/snapshots git reference directory: /home/tcwg-buildslave/snapshots-ref abe_url=https://git.linaro.org/toolchain abe_branch=branch= abe_revision=bc8ed3d22ed2b7ea2804bab8e6399a2f03d25b14 abe_filespec=abe.git abe_configure="--with-git-reference-dir=/home/tcwg-buildslave/snapshots-ref" --------------------- gcc ---------------------- commit fddce05d67f34174be0f306e1015d3868bbe7c31 Author: Alex Coplan Date: Tue Jan 30 09:39:59 2024 +0000 aarch64: Avoid out-of-range shrink-wrapped saves [PR111677] The PR shows us ICEing due to an unrecognizable TFmode save emitted by aarch64_process_components. The problem is that for T{I,F,D}mode we conservatively require mems to be in range for x-register ldp/stp. That is because (at least for TImode) it can be allocated to both GPRs and FPRs, and in the GPR case that is an x-reg ldp/stp, and the FPR case is a q-register load/store. As Richard pointed out in the PR, aarch64_get_separate_components already checks that the offsets are suitable for a single load, so we just need to choose a mode in aarch64_reg_save_mode that gives the full q-register range. In this patch, we choose V16QImode as an alternative 16-byte "bag-of-bits" mode that doesn't have the artificial range restrictions imposed on T{I,F,D}mode. Unlike for GCC 14 we need additional handling in the load/store pair code as various cases are not expecting to see V16QImode (particularly the writeback patterns, but also aarch64_gen_load_pair). gcc/ChangeLog: PR target/111677 * config/aarch64/aarch64.cc (aarch64_reg_save_mode): Use V16QImode for the full 16-byte FPR saves in the vector PCS case. (aarch64_gen_storewb_pair): Handle V16QImode. (aarch64_gen_loadwb_pair): Likewise. (aarch64_gen_load_pair): Likewise. * config/aarch64/aarch64.md (loadwb_pair_): Rename to ... (loadwb_pair_): ... this, extending to V16QImode. (storewb_pair_): Rename to ... (storewb_pair_): ... this, extending to V16QImode. * config/aarch64/iterators.md (TX_V16QI): New. gcc/testsuite/ChangeLog: PR target/111677 * gcc.target/aarch64/torture/pr111677.c: New test. (cherry picked from commit 2bd8264a131ee1215d3bc6181722f9d30f5569c3) --------------------- binutils ---------------------- commit 391fd4d9ee5d2b78244cbcd57fc405738359b70b Author: Alan Modra Date: Fri Aug 4 15:09:53 2023 +0930 PR30697, ppc32 mix of local-dynamic and global-dynamic TLS This fixes miscounting of dynamic relocations on GOT entries when a) there are both local-dynamic and global-dynamic tls accesss for a given symbol, and b) the symbol is global with non-default visibility, and c) the __tls_get_addr calls aren't optimised away. PR 30697 bfd/ * elf32-ppc.c (allocate_dynrelocs): Correct local-dynamic reloc count. ld/ * testsuite/ld-powerpc/tls32ldgd.d, * testsuite/ld-powerpc/tls32ldgd.s: New test. * testsuite/ld-powerpc/powerpc.exp: Run it. (cherry picked from commit ae33771224660dac25e64c3f70943a17bfab7681) --------------------- glibc ---------------------- commit 23021eda75eee44b4b2ae350e63dc404dac6407d Author: Adhemerval Zanella Date: Wed Oct 11 13:43:56 2023 -0300 malloc: Use __get_nprocs on arena_get2 (BZ 30945) This restore the 2.33 semantic for arena_get2. It was changed by 11a02b035b46 to avoid arena_get2 call malloc (back when __get_nproc was refactored to use an scratch_buffer - 903bc7dcc2acafc). The __get_nproc was refactored over then and now it also avoid to call malloc. The 11a02b035b46 did not take in consideration any performance implication, which should have been discussed properly. The __get_nprocs_sched is still used as a fallback mechanism if procfs and sysfs is not acessible. Checked on x86_64-linux-gnu. Reviewed-by: DJ Delorie (cherry picked from commit 472894d2cfee5751b44c0aaa71ed87df81c8e62e) --------------------- abe ---------------------- commit bc8ed3d22ed2b7ea2804bab8e6399a2f03d25b14 Author: Christophe Lyon Date: Sun Feb 11 18:20:23 2024 +0000 manifest(): Skip packages when using default system version The loop which iterates over gcc, binutils and ${clibrary} expects the sources of all these packages to be available so that we can copy information into the manifest. However, this is not true when building a single package (eg with --build gcc), leading to spurious error messages in the logs, such as: fatal: cannot change to 'default': No such file or directory fatal: cannot change to 'log': No such file or directory which happen because 'binutils' is defined to 'default' and 'clibrary' to 'auto' in global.sh, leading to incorrect definition of srcdir. This patch explicitly skips 'default' and '' values for srcdir. Change-Id: I7caaf52f0b727e10fc15a322389062999b9b755f