== Progress ==
* Upstream GCC (9/10)
- TCWG-780 - Improve register allocation for
aarch64_*_sisd_or_int<mode>3 patterns.
- TCWG-486 - Optimize Constant Uses in Loops. Posted the arm part of
the patch that addresses review comments after full testing. Waiting for
the cprop review.
- TCWG-796 Zero/sign extension elimination with vrp. Posted the new set
of patches for review. Looking at the testcases H.J.L. pointed me to.
- TCWG-779 Vector rtx costs for AArch64. Posted the patch that
addresses review comments after full testing.
* Misc (1/10)
- gcc-patches, gcc-bugs list
- Meetings
== Plan ==
- Continue with gcc stage1 activities
- Monday public holiday
# Progress #
* arm/aarch64 gdb bug fixing. [5/10]
** PR 18208 (TCWG-765) fails in gdb.base/coredump-filter.exp. Workaround
tricky quote issue with dejagnu/tcl/ssh/bash. A RFC is posted out.
** Fails in gdb.base/relativedebug.exp (TCWG-672), patch is posted out
review.
** Fails in gdb.base/break-idempotent.exp. Skip some tests in it which
require more than one HW watchpoint registers, while arm-linux only
has one. Patch is posted out.
** TCWG-793, do experiment with showing LSB of address in thumb mode inside GDB,
in order to align with MIPS(microMIPS/MIPS16). It needs more work
than expected, and even out the scope of GDB. It is paused.
* FSF GDB patch review. [4/10]
** Review "all stop on top of non stop" V3, done.
** Review "memory-mapped register browsing" patch. Requested more
information from the author.
* Misc, meeting. [1/10] # Plan # * Fix test fails for arm and aarch64 gdb.
* Continue my HW watchpoint resource counting patches once linaro boxes
are online. These boxes don't have HW watchpoint support, and GDB
doesn't handle this case well.
* Upstream patches review.
--
Yao Qi
== Progress ==
LLDB development
-- Some progress on hardware watchpoint support for lldb arm linux.
[1/10] [TCWG-770]
-- Some progress on hardware watchpoint support for lldb aarch64
linux. [1/10] [TCWG-771]
-- LLDB ARM SysV ABI implementation. [4/10] [TCWG-643]
- Testing and updates with upstream suggestion
- Figuring out a method to handle thumb functions unwind information.
-- LLDB ARM: Bug fixes. [3/10] [TCWG-651]
Miscellaneous [1/10]
-- Upstream reviews
-- Meetings, emails, discussions etc.
== Plan ==
LLDB development
-- Progress towards hardware watchpoint support for lldb arm linux.
-- Progress towards hardware watchpoint support for lldb aarch64 linux.
-- Bug fixing, patch reviews etc
Hi all,
I have built our customized u-boot (u-boot-2012.10-rc3), with two Linaro toolchain, but have no luck with the latest toolchain.
The u-boot built with gcc-linaro-arm-none-eabi-4.9-2014.09_linux can boot on the development board. This toolchain was pre-built toolchain from Linaro, built with crosstool-NG. The version is gcc version 4.9.2 20140904 (prerelease) (crosstool-NG linaro-1.13.1-4.9-2014.09 - Linaro GCC 4.9-2014.09)
With the same u-boot source, the binary built with the Linaro gcc 4.9 2015.04 hang on the same board. The 2nd toolchain was compiled locally on RHEL6, built with ABE tool. We build it locally to avoid "GLIBC_2.14 not found" issue on the pre-built toolchain. The version is gcc version 4.9.3 20150413 (prerelease) (Linaro GCC 2015.04)
Does anyone have an idea what happen? Is it a regression bug in gcc4.9?
Thanks,
Joel
--------------------------------------------------------
[joelz@ldt-joelz]:$ /projects/broadcom-linux/shared/toolchains/gcc-linaro-arm-none-eabi-4.9-2014.09_linux/bin/arm-none-eabi-gcc -v
Using built-in specs.
COLLECT_GCC=/projects/broadcom-linux/shared/toolchains/gcc-linaro-arm-none-eabi-4.9-2014.09_linux/bin/arm-none-eabi-gcc
COLLECT_LTO_WRAPPER=/projects/broadcom-linux/shared/toolchains/gcc-linaro-arm-none-eabi-4.9-2014.09_linux/bin/../libexec/gcc/arm-none-eabi/4.9.2/lto-wrapper
Target: arm-none-eabi
Configured with: /cbuild/slaves/oorts/crosstool-ng/builds/arm-none-eabi-linux/.build/src/gcc-linaro-4.9-2014.09/configure --build=i686-build_pc-linux-gnu --host=i686-build_pc-linux-gnu --target=arm-none-eabi --prefix=/cbuild/slaves/oorts/crosstool-ng/builds/arm-none-eabi-linux/install --with-local-prefix=/cbuild/slaves/oorts/crosstool-ng/builds/arm-none-eabi-linux/install/arm-none-eabi --without-headers --with-newlib --enable-threads=no --disable-shared --with-pkgversion='crosstool-NG linaro-1.13.1-4.9-2014.09 - Linaro GCC 4.9-2014.09' --with-bugurl=https://bugs.launchpad.net/gcc-linaro --disable-__cxa_atexit --with-gmp=/cbuild/slaves/oorts/crosstool-ng/builds/arm-none-eabi-linux/.build/arm-none-eabi/build/static --with-mpfr=/cbuild/slaves/oorts/crosstool-ng/builds/arm-none-eabi-linux/.build/arm-none-eabi/build/static --with-mpc=/cbuild/slaves/oorts/crosstool-ng/builds/arm-none-eabi-linux/.build/arm-none-eabi/build/static --with-isl=/cbuild/slaves/oorts/crosstool-ng/builds/arm-none-eabi-linux/.build/arm-none-eabi/build/static --with-cloog=/cbuild/slaves/oorts/crosstool-ng/builds/arm-none-eabi-linux/.build/arm-none-eabi/build/static --with-libelf=/cbuild/slaves/oorts/crosstool-ng/builds/arm-none-eabi-linux/.build/arm-none-eabi/build/static --enable-lto --enable-linker-build-id --enable-libmudflap --disable-libgomp --enable-libssp --disable-libstdcxx-pch --enable-multilib --enable-languages=c,c++,fortran --with-multilib-list=aprofile
Thread model: single
gcc version 4.9.2 20140904 (prerelease) (crosstool-NG linaro-1.13.1-4.9-2014.09 - Linaro GCC 4.9-2014.09)
---------------------------------------------
[joelz@ldt-joelz]:$ /projects/toolchains/gcc-4.9-rhel6-local-build/bin/arm-linux-gnueabi-gcc -v
Using built-in specs.
COLLECT_GCC=/projects/toolchains/gcc-4.9-rhel6-local-build/bin/arm-linux-gnueabi-gcc
COLLECT_LTO_WRAPPER=/projects/toolchains/abe/_build/builds/destdir/x86_64-unknown-linux-gnu/libexec/gcc/arm-linux-gnueabi/4.9.3/lto-wrapper
Target: arm-linux-gnueabi
Configured with: '/projects/toolchains/abe/_build/snapshots/gcc.git~linaro-4.9-branch/configure' SHELL=/bin/sh --with-bugurl=https://bugs.linaro.org --with-mpc=/projects/toolchains/abe/_build/builds/destdir/x86_64-unknown-linux-gnu --with-mpfr=/projects/toolchains/abe/_build/builds/destdir/x86_64-unknown-linux-gnu --with-gmp=/projects/toolchains/abe/_build/builds/destdir/x86_64-unknown-linux-gnu --with-gnu-as --with-gnu-ld --disable-libstdcxx-pch --disable-libmudflap --with-cloog=no --with-ppl=no --with-isl=no --disable-nls --enable-multiarch --disable-multilib --enable-c99 --with-tune=cortex-a9 --with-arch=armv7-a --with-fpu=vfpv3-d16 --with-float=softfp --with-mode=thumb --with-build-sysroot=/projects/toolchains/abe/_build/sysroots/arm-linux-gnueabi --enable-lto --enable-linker-build-id --enable-long-long --enable-shared --with-sysroot=/projects/toolchains/abe/_build/builds/sysroot-arm-linux-gnueabi --enable-languages=c,c++,fortran,lto --enable-fix-cortex-a53-835769 --enable-checking=yes --disable-bootstrap --with-bugurl=https://bugs.linaro.org --with-pkgversion='Linaro GCC 2015.04' --build=x86_64-unknown-linux-gnu --host=x86_64-unknown-linux-gnu --target=arm-linux-gnueabi --prefix=/projects/toolchains/abe/_build/builds/destdir/x86_64-unknown-linux-gnu
Thread model: posix
gcc version 4.9.3 20150413 (prerelease) (Linaro GCC 2015.04)
Hi,
I am using the linaro tolchain to create a root-filesystem for an embedded
Linux system.
I would like to copy the essential include files and libraries(libc) from
the toolchain to the rootFS of the embedded system.
Is there any explanation of the folder structure of the toolchain so I know
which folder to copy?
How do I know which files to copy and where those files are located in the
toolchain?
Thanks,
Robert
Hello,
In an effort to provide a longer quality control window for quarterly
releases the Linaro Toolchain Working Group will be making some changes to
the release process starting with the forthcoming 2015.04 products.
Little will change for the consumers of TCWG products.
The current monthly source release of the 'stable' Linaro GCC source
archives posted to releases.linaro.org will move to snapshots.linaro.org
and will be designated 'monthly snapshots'.
The exact location will be announced when the 2015.04 Toolchain component
source archive release notes are posted to this mailing list.
These monthly snapshots will continue to have branch merges, performance
fixes, security fixes, and correctness fixes applied on a monthly basis.
They will also continue to have validation across a variety of common ARM
targets performed (per backport) against them.
TCWG will introduce the concept of a 'release candidate source archive' and
'release candidate binary toolchain archive' six weeks before the projected
release date of the Quarterly Binary Toolchain Release. For example, the
2015.05 Quarterly Binary Toolchain and Quarterly Source Archive will be
based upon the 2015.04 source archive snapshot.
Release candidate source and binary archives will be posted to
snapshots.linaro.org.
This release candidate will receive the scrutiny of internal and external
stakeholders for six weeks and give an opportunity to evaluate the
forth-coming Quarterly Binary Toolchain Archive and Source Archive
Release. Problems found with the release candidates will result in the
availability of incremental release candidate archives.
The official quarterly release will be posted to releases.linaro.org.
Please direct any questions or concerns to this mailing list or to me
directly.
--
Ryan S. Arnold
Linaro Toolchain Working Group - Engineering Manager
www.linaro.org
Benchmark automation - TCWG-360 [5/10]
* Flushed the rest of the easy stuff from my 'small fixups' to my
'staging' branch
* Started rolling generic patches from my backport-benchmark branch into gerrit
* Prodded at the prototype backport-benchmark job until the pieces worked
** Ran out of time to try an end-to-end run
* Thought a little about permissions for access to source/results
* Use of nc.traditional appears to have introduced a race condition
catomics - TCWG-436 [2/10]
* Tried a run on A15 - same story as A57, good improvement on g8 libc
ubenchmark that doesn't translate into SPEC subset
* Performance counting the ubenchmark suggests variation around cache
accesses on the catomic vs not-catomic code, didn't have any time to
think about what, if anything, this means
Misc [3/10]
* Featuring an unusual level of ARM interruption
* Especially concerns about change from multiarch to non-multiarch
sysroot in binary releases
=Plan=
Confirm backport benchmarking working, roll remaining generic patches
into gerrit
Investigate the nc.traditional race
Add a retry loop around LAVA boot (occasionally see LAVA-fail here)
Create unit tests
Follow up on (non-)multiarch sysroot issue
=== Progress ===
* Get TSAN building for Aarch64 on 42-bit VMA systems. (4/10) (-pie mode only)
Expected Passes : 253
Expected Failures : 2
Unsupported Tests : 1
Unexpected Failures: 13
The failures are categorized into three types.
(1) setjmp and longjmp implementation in assembly needs to written for Aarch64 .
ThreadSanitizer :: longjmp.cc
ThreadSanitizer :: longjmp2.cc
ThreadSanitizer :: longjmp3.cc
ThreadSanitizer :: longjmp4.cc
ThreadSanitizer :: signal_longjmp.cc
(2) FATAL: ThreadSanitizer: failed to intercept pthread_cond_init. I
need to debug and see why this happens.
ThreadSanitizer :: bench_mutex.cc
ThreadSanitizer :: cond.c
ThreadSanitizer :: cond_cancel.c
ThreadSanitizer :: cond_race.cc
ThreadSanitizer :: cond_version.c
ThreadSanitizer-Unit :: rtl/TsanRtlTest/Posix.CondBasic
(3) TLS descriptions ThreadDescriptorSize (), GetTls () and ThreadSelf
() defintions are needed for aarch64.
tls_race.cc
tls_race2.cc
Some ptrace defintions are needed PTRACE_GETREGS, PTRACE_SETREGS
PTRACE_GETFPREGS, PTRACE_SETFPREGS for sanitizer, but they are not
implemented for Aarch64. I am planning to switch off that code in
TSAN.
* ASAN/TSAN documentation. ASAN documentation complete. TSAN in progress. (4/10)
* Emails, meetings. (2/10)
* Linaro 1-1 with christophe, Ryan.
* AMD meetings/event, 1-1 with AMD manager, status meeting.
* GCC mailing list.
===Plan ===
Complete TSAN documentation.
Analyze remaining failures for TSAN.
Push LLVM tree to git.linaro.org for handover.