=== Progress ===
SPEC Benchmarking [5/10]
. managed to run SPEC2k
. managed to run integer parts of SPEC2k6
. spec2xxx-report fails
. can't run full suite as LAVA Junos have insufficient disk
NEON error reporting bugs #403/#418 [3/10]
. ongoing mailing list discussions
vldN_lane patches [1/10]
. respun and committed
Misc [1/10]
=== Plan ===
Talk to Tejas @ ARM about AArch64 NEON loads/stores
Review prep
Move office
Day off at some point (likely Wednesday)
Short week, 2 days off
== Progress ==
* GCC trunk/4.9 cross-validation (2/10)
- committed testsuite patch to support forcing -mword-relocations
option when compiling testglue.c
* Neon intrinsics tests (2/10)
- committed the 1st batch (21 commits)
* AArch64 sanitizer
- libsanitizer internal data depend on the kernel headers version
used to build the toolchain, old_[gu]id_t type changed in 3.15.3.
- discussing the best way to address this
* Misc (2/10)
- calls, meetings
== Next ==
* 4.8 branch merge for next release
* GCC trunk/4.9 cross-validation
- investigate abi_check test, probably another testsuite harness
configuration issue
* AArch64 sanitizer
* Neon intrinsics tests update
* cbuild2:
- analyze previous results
- look at backport-test script + logs
== Progress ==
* Automation Framework (CARD-1378 1/10)
- Setting up Junos with ARM
* Toolchain (CARD-862 1/10)
- Some progress on fpu parser issue
- Produced a lot more work for the near future
* Buildbots (TCWG-76 4/10)
- Setting up a libc++ buildbot, working on reducing failures
- Some bots broken, bisecting
* Background (4/10)
- Code review, meetings, discussions, etc.
- Annual review
- More lab move planning
- EuroLLVM meetings and planning
== Plan ==
* US LLVM whole next week
The Linaro Toolchain Working Group (TCWG) is pleased to announce the 2014.10
release of the Linaro GCC 4.9 source package.
Linaro GCC 4.9 2014.10 is the seventh Linaro GCC source package release. It is
based on FSF GCC 4.9.2-pre+svn216130 and includes performance improvements and
bug fixes.
With the imminent release of ARMv8 hardware and the recent release of the
GCC 4.9 compiler the Linaro TCWG will be focusing on stabilization and
performance of the compiler as the FSF GCC compiler. The Linaro TCWG provides
stable[1] quarterly releases and monthly enginering[2] releases.
Interesting changes in this GCC source package release include
* Updates to GCC 4.9.2-pre+svn216130
* Backport of [AArch64] Define TARGET_FLAGS_REGNUM
* Backport of PR target/61565
* Backport of [AArch64] libitm: Improve _ITM_beginTransaction
* Backport of [AArch64] Fix *extr_insv_lower_reg<mode> pattern
* Backport of [AArch64] Use CC_Z and CC_NZ with csinc and similar instructions
* Backport of [AArch32] Implement and vectorize lceil, lfloor, lround optabs
with new ARMv8-A instructions
* Backport of [AArch64] Improve epilogue unwind info rth
* Backport of [AArch64] Add a mode to operand 1 of sibcall_value_insn
* Backport of [AArch64] Add a builtin for rbit(q?)_p8; add intrinsics and tests
* Backport of [AArch32/AArch64] Schedule alu_ext for Cortex-A53
* Backport of [AArch64] Remove varargs from aarch64_simd_expand_args
* Backport of [AArch64] Tidy: remove unused qualifier_const_pointer
* Backport of [AArch32/AArch64] Add scheduling info for ARMv8-A FPU new
instructions in Cortex-A53
* Backport of [AArch32] Convert FP mnemonics to UAL.
* Backport of [AArch32] Enable auto-vectorization for copysignf
* Backport of [AArch32][tests] Make input and output arrays 128-bit aligned in
vectorisation tests
* Backport of [AArch64] Add crtfastmath
* Backport of PR target/56846 libstdc++
* Backport of PR target/63209
* Backport of [Ree] Ensure inserted copy don't change the number of hard
registers
* Backport of [AArch64] Fix force_simd macro in vdup_lane_2
* Backport of [AArch32] Disallow -mfpu=neon for unsuitable architectures
* Backport of [AArch32] movmisalign<mode>_neon_load
* Backport of [AArch64] Add constraint letter for stack_protect_test pattern
* Backport of [AArch64] Auto-generate the "BUILTIN_" macros
Feedback and Support
Subscribe to the important Linaro mailing lists and join our IRC channels to
stay on top of Linaro development.
** Linaro Toolchain Development "mailing list":
http://lists.linaro.org/mailman/listinfo/linaro-toolchain
** Linaro Toolchain IRC channel on irc.freenode.net at @#linaro-tcwg@
* Bug reports should be filed in bugzilla against GCC product:
http://bugs.linaro.org/enter_bug.cgi?product=GCC
* Questions? "ask Linaro":
http://ask.linaro.org/.
* Interested in commercial support? inquire at "Linaro support":mailto:
support(a)linaro.org
[1] Stable source package releases are defined as releases where the full Linaro
Toolchain validation plan is executed.
[2] Engineering source package releases are defined as releases where the
compiler is only put through unit-testing and full validation is not
performed.
Hi,
I start to use Linary AArch64 toolchain recently and just joined this maillist. I went through some of the archived threads but didn't read all of them. So bear me if I'm asking dumb question or old question which had been answered before.
For our use case, we are running the gdb client at early state of boot. So the ARMv8 target might be running into any EL and into either AArch64 or AArch32 state. My questions are:
1) Is the aarch64-none-elf-gdb.exe good for both AArch64 and AArch32 or I have to run the arm-none-eabi-gdb.exe if the target running in AArch32 state?
2) If the target is in AArch64 state, can I use the aarch64-none-elf-gdb.exe to load binary built for AArch32 to the target?
I'm really appreciated if anybody can help me on these two questions.
Thanks in advance,
StrongQ
cbuild2 benchmarking - TCWG-360 [3/10]
* A few small enhancements and bug-fixes
* Tried to run spec2006 on Juno, looks tricky
libm profiling - CARD-1693 [3/10]
* Pulled together lapack + blas
* Looked a bit at how it exercises libm on x86
* Tried to look at how it exercises libm on Juno, looks tricky
Meetings/mail/etc [4/10]
* Featuring some fun with backups and ARM performance review season
=Plan=
* cbuild2 benchmarking - keep chipping away at spec/juno
* libm profiling - attempt to assemble an AArch64 setup that works for me
* further performance review/corporate admin will take up extra time
this week, but should then fall back to normal levels
=Issues=
State of the setup on our Junos
== Progress ==
* Part way through integrating Cbuild2/Jenkins with Gerrit. (#1692,
8/10)
- Implemented functions to use the REST API to Gerrit via SSH.
- Integrated into build and test processes.
* Meetings and Misc (2/10)
- Ordered 10 Snapdragon boards
== Plan ==
* Finish Gerrit integration with Cbuild2 and Jenkins. (#1692)
- Find a way the buildslave user can use the SSH connection to Gerrit.
* Start merging the linaro branch in DejaGnu to master to get
ready for the next release.
* Start getting ready for the lab move, do what I can ahead of time.
== Issues ==
* Gerrit comments via REST strip out all newlines, so I need to
limit the message size after a test run.
= Progress ==
* Core mark benchmark and report for PGO and PGO + LTO (TCWG-544) (6/10)
Going by CPU cycles adding LTO gains in x86 and degrades in Aarch64 .
Looked at hot functions and examining assembly the code generation seems to
be same. X86_64 does alignment of code. Also branch misses decreased in
X86_64 compared to Aarch64 with -flto + -O3.
Also profiled for instruction counts on Aarch64 with linaro compiler. These
profiles say that we are executing less instructions with LTO and PGO for
Aarch64.
* PR 63173- Reproduced the issue and changed the test case to work with
trunk. Now Looks like someone else has a patch for it. (1/10). so will
work on other bugs.
* Misc [3/10]
Internal work, emails, AMD meetings and 1-1 with inline manger.
1-1 with Maxim, christophe and 1-1 with ryan
== Plan ==
* Coremark benchmark and profiling.
Investigate trunk degradation for O3+ PGO + LTO and report.
== leaves ==
Diwali holiday (22-24)
== Issues ==
* Still no network at home and will not be fixed before at least one week :(
== Progress ==
* GCC 4.9 2014.10 (8/10)
- Merged FSF 4.9 branch
- Released Linaro 4.9 2014.10
* Misc: (2/10)
- Various meetings.
== Plan ==
* Analyse some failures that occur only in --enable-release.
== Progress ==
Catch up with work after return from Eid ul Adha and Annual Holidays [7/10]
* Hong Kong visa application
* UPS repairs and office cleanup
* Catching up with work, gdb roadmap and open/running cards.
* Emails/Patch scrolling/Meetings etc
* Sick day off on Monday
GDB Tracepoints/Fast Tracepoints support on arm [TCWG-480] [3/10]
* Getting re-synced with code where I left.
== Plan ==
Further progress on GDB Tracepoints/Fast Tracepoints support on arm [TCWG-480]
Investigate possibility of AArch64 trace-point work without
availability of hardware.
Check for GDB status on ARM and AArch64 vs x86.
== Progress ==
* Zero/sign extension elimination with widening types (TCWG-546 - 9/10)
- Fixed ICEs and now can build the cross compiler and do the regression
testing with qemu
- some test-cases are failing due to condition that rely on overflow;
this need fixing.
- Bootstrapping on AArch64 still fails (but much later than previously).
- Verified CRC is optimized
* Improve block memory operations by GCC (TCWG-142 - 1/10)
- Looked at the changes since the card was drafted
== Plan ==
* Continue with Zero/sign extension pass.
== Progress ==
* GCC trunk/4.9 validation (CARD-647) (3/10)
- committed testsuite patch to test if -shared is supported
- forcing -mword-relocations flags when compiling testglue works on
my Ubuntu machines, but does not in the Compute Farm RHEL5 servers.
- investigating why, all the more as it made me incorrectly report
failures in the 4.9 branch
* Validation (2/10)
- compared cbuild2 schroot-test branch and master
the results of this manual run does not seem to match Jenkins results
* Neon intrinsics tests (1/10)
- fixed .exp harness to support parallelization
- looking at how to pre-support fp16, will probably skip it for now,
and add dedicated tests later
* AArch64 sanitizer (1/10)
- GCC trunk seems to need to cherry pick a sanitizer patch when
building using recent kernel headers
- tried to use Jenkins to build trunk and trunk+cherry-pick, but the
results are not consistent
needs more investigation
* Misc (3/10)
- calls, meetings, irc
== Next ==
* GCC trunk/4.9 cross-validation
- fix -mword-relocations support
- investigate abi_check test
* AArch64 sanitizer
* Neon intrisics tests update
* cbuild2:
- analyze previous results (mostly check the logs....)
- look at backport-test script + logs
Short next week: off Wednesday/Thursday
== Progress ==
* Respin of malloc single-thread optimizations (4/10, TCWG-436)
- Create a generic header, include AArch64 in series
* Further work on malloc app benchmark framework (4/10, TCWG-441)
- Cleaned up, improved reliability, added comments
- Committed to cortex-malloc.git
* Email, meetings, etc. (1/10)
* Upstream work (1/10, CARD-341)
- glibc patch review and pings
- Look into some bug reports and testsuite failures
== Issues ==
* Electricians and gas engineers turning off power/heating at various points
== Plan ==
* Hopefully get some resolution of single thread atomic stuff for glibc
--
Will Newton
Toolchain Working Group, Linaro
== Progress ==
* Linux Plumbers (6/10)
- Attended conference, Android/Tools/LLVM tracks
- Presented 2 talks (GCC+LLVM and LLVM+ARM)
* Buildbots (TCWG-76 2/10)
- Made the Compiler-RT bot green! Now on to the libc++ one
* Background (2/10)
- Code review, meetings, discussions, etc.
- Internet upgrade, re-wiring the house, building works
== Plan ==
* Add libc++abi buildbot
* Follow up on the fpu issues on Clang/asm
FYI.
The whole thread is available here:
http://article.gmane.org/gmane.linux.ports.arm.omap/119412
---------- Forwarded message ----------
Date: Thu, 16 Oct 2014 01:18:01 +0100
From: Russell King - ARM Linux <linux(a)arm.linux.org.uk>
To: Peter Hurley <peter(a)hurleysoftware.com>
Cc: Nathan Lynch <Nathan_Lynch(a)mentor.com>,
David Laight <David.Laight(a)ACULAB.COM>,
Otavio Salvador <otavio(a)ossystems.com.br>,
Linus Torvalds <torvalds(a)linux-foundation.org>,
Nicolas Pitre <nico(a)fluxnic.net>,
Linux OMAP Mailing List <linux-omap(a)vger.kernel.org>,
linux-arm-kernel(a)lists.infradead.org
Message-ID: <20141016001801.GQ12379(a)n2100.arm.linux.org.uk>
Subject: Re: [PATCH] ARM: Blacklist GCC 4.8.0 to GCC 4.8.2 - PR58854
On Wed, Oct 15, 2014 at 06:18:30PM -0400, Peter Hurley wrote:
> On 10/15/2014 05:56 PM, Russell King wrote:
> > I was in two minds whether to include 4.8.3 as Linaro released a buggy
> > toolchain which identifies itself as 4.8.3, but I decided that's also
> > a distro problem. IMHO Linaro should really think about taking that
> > compiler down given the seriousness of this bug and it being
> > indistinguishable from the fixed stock version.
>
> Maybe it's unfair to blame them; Linaro just took a snapshot and
> released what was there.
>
> If gcc is going to retain the "change release number then add all the
> new features" model, some kind of prerelease indicator would help
> eliminate this kind of problem. And that indicator should be both
> a preprocessor define and parseable from the command line :)
My comment is not to attribute blame to them, my comment is entirely
on a technical level.
My reasoning is that the bug is just as prevalent in userspace, though
it will occur less often. Any program which uses signal handlers is
a candidate for exactly the same kind of corruption, since you can
receive that signal between the point that the stack pointer is
modified and the function loads the parent context.
Of course, there are ways around that: don't use signal handlers, or
if you do, use alternate signal stacks. Neither of those can be
guaranteed for any program though.
So, let me put this another way: a compiler with this bug is _completely_
unsuitable for use for compiling programs for use under the Linux
kernel _as well_ as the Linux kernel itself.
The difference is that the Linaro compilers come with an expectation
that they are usable on ARM... whereas stock versions cover a lot more
and so the ARM arch is probably very small number of their users.
Hence why I recommend that Linaro takes down their buggy compiler.
Their 4.8.3 version should not be used *anywhere*, just the same as
the stock 4.8 to 4.8.2 inclusive should also not be used anywhere on
ARM either.
== Progress ==
Neon vld/vst [4/10]
. submitted v2 of vldN_lane patch (respin of patches 1&2 only)
. continued ML discussion about patches 3&4.
Tried out jenkins/cbuild infrastructure [1/10]
. hardest part was getting git.linaro.org/people to hold my test tree
. https://wiki.linaro.org/Platform/Systems/GitServer#Creating_new_repositories
. if it doesn't work, ask ITS to check you are in the git-users group
. still need to find where the results go.
bug 403/418 wrong line number on neon error messages [2/10]
. experimented with a couple of ways to solve this
bug 715 [2/10]
. investigated and closed as only affects deprecated old ABI
Misc [1/10]
== Plan ==
Benchmark 2014.10 release
Continue bug 403/418 work
== Progress ==
* Further work on malloc single-thread optimizations (2/10, TCWG-436)
- Still pending some resolution on direction from upstream
* Upstream work (1/10, CARD-341)
- Patch review
- Applied binutils patch for missing AArch64 relocs
* Further work on malloc app benchmark framework (2/10, TCWG-441)
- Found a possible way to get memory statistics without hacks, should improve
speed and reliability of the benchmark framework
* Email, meetings, etc. (1/10)
* Thursday and Friday annual leave (4/10)
== Issues ==
* None
== Plan ==
* Get malloc app benchmark framework into shape and committed
* Figure out direction for malloc single thread optimization work
--
Will Newton
Toolchain Working Group, Linaro
cbuild2 benchmarking - TCWG-360 [7/10]
* Fixed/worked around some especially resilient bugs
** Mostly relate to running benchmarks through LAVA, which may be less
important in the near future
* Wrote a doc
* Upstreamed some code that works about as I want it to
Meetings/mail/etc [3/10]
=Plan=
cbuild2 benchmarking
* Work through TODO list from connect
* Tidy up behaviour on shutdown
* Storage issues
* (Maybe) persuade a LAVA Juno to work for benchmarking or configure spec
Hopefully pick up something else
= Progress ==
* Core mark benchmark and report for PGO and PGO + LTO (4/10)
More profiling and collected numbers and reported. JIRA card TCWG-181 updated.
Adding LTO gains in x86 and degrades in Aarch64 .
* Addressed machine bring up issues, debugged and installed necessary
packages for both x86 and Aarch64 (1/10)
* PR 62308 - Analyzed RTL dumps. Looks to be similar issue solved in
trunk. Git bisected and found the passing revision in trunk. posted my
comments. waiting for feedback. (2/10)
* Misc [3/10]
Internal work, emails, AMD meetings and 1-1 with inline manger.
1-1 with Maxim, christophe and 1-1 with ryan
Linaro status call
== Plan ==
* Coremark benchmark and profiling for PGO and PGO + LTO. Investigate
LTO degradation causes and report.
* Investigate PR 63173
* Setup Cbuildv2 build in internal machine.
== Issues ==
Experiencing Hardware connection issues and kernel instability issues
with my local machines.
== Holiday ==
* Public Holiday (2/10)
* Leave (4/10)
== Progress ==
* Zero/sign extension elimination with widening types (4/10)
- Started experimented with a pass for widening type.
- Verified for one simple test-case.
- Bootstrapping is failing and looking into it.
== Plan ==
* Continue with Zero/sign extension pass.
== Progress ==
* Automation Framework (CARD-1378 1/10)
- Planning LAVA server for new TCWG gateway
* Buildbots (TCWG-76 7/10)
- Fixing Compiler-RT buildbot (from 69 to 4 failures)
* Background (2/10)
- Code review, meetings, discussions, etc.
- Re-testing a change in inst combine that broke bots before
- Reviewing CMake builder for Windows builds
- Discussing clang-reformat on lld's codebase
== Plan ==
* Continue fixing the Compiler-RT buildbot
* Present 2 talks at Linux Plumbers
== Progress ==
* GCC trunk/4.9 cross-validation (CARD-647) (2/10)
- trunk build for aarch64 reported to fail because libsanitizer
requires an update. Pinged libsanitizers maintainers but got no answer
so far.
- posted testsuite patch to test if -shared is supported
- managed to find how to force target-dependent -mword-relocations
flags to compile testglue, without needing a testuite patch :-)
* Validation (3/10)
- compared cbuild2 schroot-test branch using (default) shared libs
and forcing static libs
Using static libs causes many unresolved and unsupported tests
- compared using unix.exp and arm-linux.exp: the latter causes
creates instability in the results
* Neon intrinsics tests (2/10)
- rebased on trunk, applied requested changes
- the make-check parallelization support has changed mid-September,
took some time to discover that my .exp harness was now incompatible.
* Misc (3/10)
- calls/meetings
== Next ==
* GCC trunk/4.9 cross-validation
- continue investigation of abi_check test
* Neon intrinsic tests update, trying to take float16 types into account
* cbuild2:
- compare results + validation time of stable and schroot-test branches
- look at backport-test script + logs
cbuild2 benchmarking - TCWG-360 [7/10]
* Cleaned up and upstreamed some code that works
* Fixed a couple of issues raised by LAVA people
** No longer scraping the logs
** No longer assuming stable IP addresses
lowlevellock.h comments - CARD-341 [1/10]
* Respun based on Carlos' comments
Meetings/mail/etc - [2/10]
=Plan=
cbuild2 benchmarking
* Upstream code-with-fixes
* Write a doc
* Invite people to start using this thing
** Assuming that the storage questions get resolved
* Work through list of tweaks
Get up to speed on glibc vector math thread
== Progress ==
* Investigate a number of bugs in Linaro toolchain (2/10)
- Submitted patches for cbuild build failure with eglibc and i686
- Investigated BZ #675, gdb baud rate issue. Should be fixed by
switch to cbuild
- AArch64 PIE support seems to be ok?
* Submitted a patch to add all missing relocs from AArch64 ABI 1.0 to
binutils (1/10)
* Email, meetings, etc. (1/10)
* More malloc single-thread optimizations (6/10, TCWG-436)
- Patches submitted to the list
== Issues ==
* None
== Plan ==
* More atomics work
* Tidy up and commit malloc app benchmarks
* Out Thursday and Friday for a wedding
--
Will Newton
Toolchain Working Group, Linaro
== Progress ==
* LR register not used in leaf functions (TCWG-539) (1/10)
Reviewed Jiong's changes.
* bug #412 (2/10)
- Seems to have been fixed but since there is not specific test-case
except that it happens with spec2k gcc, need more work to be entirely sure.
* AArch64 Spec2006 int regression (1/10)
- Looked at bug databases and mailing list archive for more information
* armv3 (bug #85 and bug #410) (2/10)
- Looked at both the outstanding bug to find more information
- proposed using -mno-lra for armv3 after discussion with the team
* Misc (2/10)
- Public holiday (2/10)
- Annual Leave (2/10)
== Plan ==
* zero/sign extension elimination with widening types
== Holidays ==
* 06/10/2014 - Public holiday
* 07/10/2014 and 07/10/2014 - Annual leave
== This week ==
* TCWG-515 - Neon intrinsic testing part 1 (5/10)
- Developed fix for vclz DejaGnu failure
- Tested on ARM hardware
* Linaro bugzilla 602 - gcc 4.7.3 compiler internal error while building
hsail components (1/10)
- Unable to reproduce with either Linaro 4.8 or 4.9
* Linaro Bugzilla 540 - Median of three has unneeded register moves (1/10)
- Results of Triage indicate generated code has improved though still
not optimal
- No plans for further improvement
* Misc. (1/10)
- Completed ARM annual review paperwork
* Out sick Friday, October 3rd (2/10)
== Next week ==
- Full validation testing on vclz bug fix
- Create patch for vclz bug fix and send to gcc-patches list
- Resolve any blocking issues to patch for bugzilla 331
= Progress ==
* Core mark benchmark and report for PGO and PGO + LTO (2/10)
Collected benchmark scores and report sent internally.
Adding PGO benefits coremark. LTO seems to hurt. More runs and profiling
next week. Tired few experiments with -funroll-all-loops and seems to
benefit.
* Misc [2/10]
Internal meeting and 1-1 with Ryan and inline manger.
Revisited and closed PR61442
Short week leave on 29 Sep, 2 and 3rd Oct (6/10).
== Plan ==
* Coremark benchmark and profiling for PGO and PGO + LTO
* Investigate PR 62308
* Setup Cbuildv2 build in internal machine.
== Progress ==
* Fixed test infrastructure bugs (TCWG 1378 - 8/10).
- Installed Foundation Model on all Hetzner machines so
aarch64 bare metal testing works.
- Refactored all board support files to eliminate duplication to
reduce maintainance headaches. Fixed ldflags so now getting
good results.
- Backport job is working good now.
- Worked on Gerrit/Jenkins integration, with the goal of having
the notifications work *after* the test and validation is done.
- More work on optimizing SSH connections by reducing extraneous
commands in the test framework.
- Recreated stable branch from master now that results are much
better.
* Meetings and Misc (2/10)
* Fixed National Park internal wireless network, getting access to
much better bandwidth than the crappy Guest one. :-)
== Plan ==
* Escape Yosemite, hard during a great weather window, and being
the only person in my group with a job...
* Continue fixing remote testing support, merge "boards" branch
into master, then make it stable after more testing.
== Progress ==
Closed bug #405 (not a bug)
NEON load/store
. reworked patches not to do type-punning [9/10]
. investigated alternative ways to solve poor code generation with
array of vector types
Started investigating NEON bugs 403, 418 [1/10]
== Plan ==
NEON load/store - submit new patches, continue upstream discussion
Try out validation infrastructure for my own patches
== Progres ==
* GCC trunk/4.9 cross-validation (CARD-647) (3/10)
- aarch64 address sanitizer tests currently all fail at execution
under qemu because they try to reserve 50GB of memory. Tried to push
the limits with no success so far.
- working on fixing support for testcases generating a shared lib
- newly introduced abi_check for aarch64 fails on my side, probable
testsuite configuration problem.
* Linaro branches
- updated backports spreadsheet
- reviewed backports prepared by Yvan
* Validation (3/10)
- manually running builds+validations to compare master and chroot
branches, see the diffs between static and dynamic libs in terms of
PASS/FAIL, ....
* Neon intrinsics tests (1/10)
- No need to comply to the GNU coding style since it's imported from
and existing testsuite.
- only minor changes requested
- should help having the 1st subset committed soon
* Misc (3/10)
- calls/meetings
- bugzilla admin etc..
cbuild2 benchmarking - TCWG-360 [9/10]
* Knocked off a lot of rough edges
* Now working fairly robustly
lowlevellock.h comments - CARD-341 [4/10]
* Got a bit stuck trying to follow condvar locking
* But wasn't really needed to describe the code in question
LCA [10/10]
LCA recovery day [2/10]
Meetings/mail/etc [5/10]
=Plan=
cbuild2 benchmarking:
* Push upstream for others to look at
* Sort out storage story for benchmark sources and results
* Try to get working on a Juno (in LAVA, therefore on OE)
* Look at our Jenkins scripts with a view to figuring out how to hook in
* Work through list of bits 'n' pieces to fix -
+ Don't scrape logs (bad for server)
+ Don't fail on network timeouts
+ Extra target control knobs - disable ASLR, set a nasty nice value,
maybe hugepages
+ Set appropriate flags automatically for cross-builds
== Progress ==
* Monday off to recover from Connect (2/10)
* Catch up on email (1/10)
* Upstream work (1/10, CARD-341)
- Patch review
* Investigate malloc single-thread optimizations (1/10, TCWG-436)
- More exploratory work on atomics
* Investigate binutils support for full range of AArch64 relocs (1/10)
* Annual leave Thursday and Friday (4/10)
== Issues ==
* None
== Plan ==
* More work on atomics
* Figure out how to make an LLVM cross compiler with gas/ld
--
Will Newton
Toolchain Working Group, Linaro
== Progress ==
* LR register not used in leaf functions (TCWG-539) (2/10)
Posted the patch after regression testing
https://gcc.gnu.org/ml/gcc-patches/2014-09/msg01833.html
* AArch64 Spec2006 int regression (3/10)
- After struggling to boot Juno, found the combination that works
- Ran spec2006 int benchmarks to try reproduce
- waiting for more information to continue
* Launchpad bugs (LP1331112, LP1332640. LP1331126 and LP1320965) (3/10)
- Set-up cbuild2 and spec2k on aarch64 board
- ran aarch32 and aarch64 in aarch64 board with 09.2014
- Updated the bug entries with the results
* Misc (2/10)
- Connect recovery (2/10)
== Plan ==
* 29/09/2014 - Public holiday
* Get back to zero/sign extension with pass to promote operations
== Progress ==
* Connect recovery [6/10]
Very short week short week travel back from connect
22nd - 23rd travel.
25th - sick leave.
* Backport - Bug 676 - CSE did not optimize the redundant cmp
instruction on aarch64 [2/10].
Checked the issue by building latest trunk, linaro branch and by
adding the patch on top of linaro branch . Validated the code
generated at -O2 and it seemed to be optimal and bug does not occur.
Discussed with Christophe and decided to rebackport it along with
211881. It was reverted because of an libjava bug which is fixed in
211881. Used back flip to back port, git review was not automatically
working. So manually amended by adding the change log for combined
backport of revisions 209643 and 211881.
* Misc [2/10]
Prepared notes on LCU14 to AMD team.
Examined spec benchmark in internal Aarch64 hardware for a support issue.
Internal meeting and 1-1 with manager.
== Plan ==
* Coremark benchmark and report for PGO and PGO + LTO
* Get profiles on trunk for PGO and PGO + LTO
* 29/9/2014 - Personal day off
* 2/10/2014 - 3/10/2014- Dusserra Holidays Leave
== Progress ==
* Connect recovery [4/10]
* NEON load/stores (TCWG-516 [5/10])
. initial review of my vldN_lane asm()->__builtin patches is promising
. the other patches for other loads/stores are wrong. Have been investigating
(with upstream) how much bigger the can of worms is.
* Misc [1/10]
. LCA15 travel
. bug investigation (#405)
== Plan ==
* more NEON load/store
Short week, 2 days holiday (4/10)
== Progress ==
* GCC trunk/4.9 cross-validation (2/10)
- reported a few new FAILs
- trying to allocate time to fix new FAILs introduced in the 4.9
branch on devirt-28a.C, mostly because a testsuite configuration
problem.
- fixed reporting of email-driven validations
* AArch64 libsanitizer
- finally committed asan+ubsan support for AArch64!
* Misc (4/10)
* email catch-up
* calls/meetings
* updated backports speadsheet, backlog now > 75
* bugzilla management
== Next ==
* GCC trunk/4.9 cross-validation:
- actually reproduce+propose fixes for a couple of regressions
recently observed
* AArch64 thread sanitizer
* Neon intrinsic tests
* Analyze failures in Backport job in Jenkins
* Analyze differences in validation results between using shared libs
and static libs
I just updated the stable branch to match master, which in my testing
has been reliable and stable. I also changed the following Jenkins jobs
to use the stable branch: Backport, BuildFarm, BinaryRelease, SourceRelease.
Note that now any Jenkins job that runs tests and validates them using
the tcwgweb.sh script, the build and test run may succeed, but if there
are any regressions, the dot will be Red now instead of Green. This
primarily effects the Backport and the Release jobs.
- rob -
Hi Sugar,
the toolchain you need is the one with the aarch64-linux-gnu triplet.
Regards,
Yvan
On 18 September 2014 08:05, Sugar <shugelinux(a)gmail.com> wrote:
> Hi yvan,
> I saw linaro have released
> gcc-linaro-arm-linux-gnueabihf-4.9-2014.08_linux.tar.bz2. I have compiled
> cortex-a53 by 'arm-linux-gnueabihf', but its binary is 'ELF 32-bit LSB
> executable', not 'ELF 64-bit'.
> Is it only compile to aarch32? If I want to compile aarch64, which
> toolchains I should choose? Or what options should pass to compiler.
>
> Thanks.
Hi all,
I'm using ct-ng to rebuild Linaro toolchain (arm-linux-gnueabihf ) for Linux kernel 2.6.36.
Ct-ng version: ct-ng-linaro-1.13.1-4.8-2014.01-01
There is a “FATAL: Kernel too old” message after mounting the rootfs. It turns out the default config using pre-built sysroot from Linaro website. After setting " CT_PREBUILT_SYSROOT=n" to build sysroot with lower kernel version, I get the following error:
[EXTRA] Building final compiler
[ERROR] /projects/broadcom-linux/joelz/opt/gcc-linaro-arm-linux-2.6-gnueabihf/arm-linux-gnueabihf/libc/usr/include/gnu/stubs.h:7:29: fatal error: gnu/stubs-soft.h: No such file or directory
[ERROR] make[5]: *** [_muldi3.o] Error 1
[ERROR] make[4]: *** [multi-do] Error 1
I tried to put " -mfloat-abi=hard" as CFLAG in different place, still can't pass this error.
If you have any idea how to fix it, please let me know.
Thanks,
Joel
== Progress ==
* GCC trunk/4.9 cross-validation (2/10)
- noticed a couple of newly introduced failing tests in some corner cases
- improved notification of selected commits to help fill the
backports speadsheet
* AArch64 libsanitizer
- answered Marcus/Andrew after their feedback
* Misc (conf calls, meetings, ....) 6/10
- usual 1/1 and team calls
- Connect preparation
- travelled on Friday
== Next ==
* Connect LCU14
== Progress ==
* More work on malloc app benchmark framework (1/10, TCWG-441)
- Postgres still has an issue with SELinux on Fedora...
* Email, meetings, etc. (1/10)
* Upstream work (3/10, CARD-341)
- Patch review
- Investigate glibc testsuite build failures on ARM
* Investigate malloc single-thread optimizations (4/10, TCWG-436)
- Atomics changes look like they will only help on AArch64
- Some improvements can be made to atomic code in general on ARM and AArch64
- Still need to look at locking
* Peparing and packing for Connect (1/10)
== Issues ==
* Electric/gas meter replacement and broken refrigerator consumed some time
== Plan ==
* Linaro Connect
--
Will Newton
Toolchain Working Group, Linaro
The Linaro Toolchain Working Group (TCWG) is pleased to announce the 2014.09
release of the Linaro GCC 4.9 source package.
Linaro GCC 4.9 2014.08 is the sixth Linaro GCC source package release.
It is based
on FSF GCC 4.9.2-pre+svn214896 and includes performance improvements
and bug fixes.
With the imminent release of ARMv8 hardware and the recent release of
the GCC 4.9
compiler the Linaro TCWG will be focusing on stabilization and
performance of the
compiler as the FSF GCC compiler. The Linaro TCWG provides stable[1] quarterly
releases and monthly enginering[2] releases.
Interesting changes in this GCC source package release include
* Updates to GCC 4.9.2-pre+svn214896
* Backport of [AArch32] TARGET_ATOMIC_ASSIGN_EXPAND_FENV hook
* Backport of [AArch32] Enable arm target in ira-shrinkwrap-prep* testcases
* Backport of [AArch32] fix check_effective_target_arm_nothumb
* Backport of Do not convert cast + __builtin_round into __builtin_lround unless
-fno-math-errno is used
* Backport of [AArch64] Fix Thumb2 testsuite fallout
* Backport of [AArch64_be] Fix vec_select hi/lo mask confusions.
* Backport of [AArch64_be] Don't fold reduction intrinsics
* Backport of [AArch64] Fix offset glitch in load reg pair pattern
* Backport of [AArch64][2/2] Add constrain to address offset in
storewb_pair/loadwb_pair insns
* Backport of [AArch64] Improve TARGET_LEGITIMIZE_ADDRESS_P hook
* Backport of [AArch64] Removed unused get_lane and dup_lane builtins.
* Backport of [sched-deps] Generalise usage of macro fusion to work on
any two insns
* Backport of [doc] Document clrsb optab and fix some inconsistencies
* Backport of [AArch64] Some aarch64-builtins.c cleanup.
* Backport of Guard transformation to lrint by -fno-math-errno
* Backport of [AArch32] Adjust clz, rbit and rev patterns for -mrestrict-it
* Backport of [AArch32/AArch64] Add CRC32 scheduling information to
Cortex-A53 and
Cortex-A57
* Backport of [AArch64] Use REG_P and CONST_INT_P instead of GET_CODE
+ comparison
* Backport of [AArch64] Prefer dup to zip for vec_perm_const; enable
dup for bigendian;
* Backport of [AArch32] TARGET_ATOMIC_ASSIGN_EXPAND_FENV hook
* Backport of [AArch64] Use MOVN to generate 64-bit negative
immediates where sensible
* Backport of [AArch64] Delete f_sels, f_seld types, use fcsel instead
* Backport of PR target/60606 target/61330 fix ICE
* Backport of [AArch64] PR target/63190
Feedback and Support
Subscribe to the important Linaro mailing lists and join our IRC channels to
stay on top of Linaro development.
** Linaro Toolchain Development "mailing list":
http://lists.linaro.org/mailman/listinfo/linaro-toolchain
** Linaro Toolchain IRC channel on irc.freenode.net at @#linaro-tcwg@
* Bug reports should be filed in Launchpad against "Linaro GCC project":
http://bugs.launchpad.net/gcc-linaro/+filebug.
* Questions? "ask Linaro":
http://ask.linaro.org/.
* Interested in commercial support? inquire at "Linaro support":mailto:
support(a)linaro.org
[1] Stable source package releases are defined as releases where the full Linaro
Toolchain validation plan is executed.
[2] Engineering source package releases are defined as releases where the
compiler is only put through unit-testing and full validation is not
performed.
Hi,
I'm having some very odd problems building the 2014.08 toolchain respin --
in the cbuild1 i686-lucid env, building glibc fails with
[ERROR] ../sysdeps/unix/sysv/linux/bits/sched.h:127:14: error:
variably modified '__bits' at file scope
[ERROR] ../sysdeps/unix/sysv/linux/bits/sched.h:127:14: error:
variably modified '__bits' at file scope
[ERROR] ../sysdeps/unix/sysv/linux/bits/sigset.h:29:23: error:
variably modified '__val' at file scope
[ERROR] ../sysdeps/unix/sysv/linux/bits/sigset.h:29:23: error:
variably modified '__val' at file scope
[ERROR] ../misc/sys/select.h:69:15: error: variably modified
'fds_bits' at file scope
[ERROR] ../misc/sys/select.h:69:15: error: variably modified
'fds_bits' at file scope
[ERROR] /cbuild/slaves/oorts/crosstool-ng/builds/aarch64_be-linux-gnu-linux/install/aarch64_be-linux-gnu/libc/usr/include/linux/posix_types.h:25:16:
error: variably modified 'fds_bits' at file scope
[ERROR] /cbuild/slaves/oorts/crosstool-ng/builds/aarch64_be-linux-gnu-linux/install/aarch64_be-linux-gnu/libc/usr/include/asm/sigcontext.h:33:2:
error: requested alignment is not a positive power of 2
[ERROR] /cbuild/slaves/oorts/crosstool-ng/builds/aarch64_be-linux-gnu-linux/install/aarch64_be-linux-gnu/libc/usr/include/asm/sigcontext.h:53:2:
error: unknown type name '__uint128_t'
[ERROR] /cbuild/slaves/oorts/crosstool-ng/builds/aarch64_be-linux-gnu-linux/install/aarch64_be-linux-gnu/libc/usr/include/linux/posix_types.h:25:16:
error: variably modified 'fds_bits' at file scope
[ERROR] /cbuild/slaves/oorts/crosstool-ng/builds/aarch64_be-linux-gnu-linux/install/aarch64_be-linux-gnu/libc/usr/include/asm/sigcontext.h:33:2:
error: requested alignment is not a positive power of 2
[ERROR] /cbuild/slaves/oorts/crosstool-ng/builds/aarch64_be-linux-gnu-linux/install/aarch64_be-linux-gnu/libc/usr/include/asm/sigcontext.h:53:2:
error: unknown type name '__uint128_t'
[ERROR] ../ports/sysdeps/unix/sysv/linux/aarch64/sys/user.h:32:3:
error: unknown type name '__uint128_t'
[ERROR] ../ports/sysdeps/unix/sysv/linux/aarch64/sys/user.h:32:3:
error: unknown type name '__uint128_t'
(Yes, the fix is to get rid of cbuild1 and more importantly the requirement
for 32-bit builds in a prehistoric environment - it builds just fine on
64-bit present-day boxes... But I don't think we want to make that change
in a respin).
The "variably modified" errors remain even after hardcoding
typedef struct {
__cpu_mask __bits[16];
} cpu_set_t;
instead of relying on __CPU_SETSIZE and __NCPUBITS, and the line where it
complains about alignment not being a positive power of 2 actually
hardcodes an alignment of 16.
Have you run into those before?
ttyl
bero
== Progress ==
Debug KGDB with gdb for testing [4/10]
LCU14 slides preparation and study for presentation. [2/10]
Miscellaneous [4/10]
* Configure to use hackbox to test aarch64 gdb remote configs
* Retrieve gdb test results in different configurations.
* Emails/Patch scrolling/Meetings etc
== Plan ==
patch updates and re submission.
Figure ARM and AArch64 gdb missing features.
Prepare and travel LCU14
=Progress=
cbuild2 benchmarking - TCWG-360 [8/10]
* Got an end-to-end run in my test environment
* Patched tests to run more selectively (in review)
Meetings/mail/etc - [2/10]
=Plan=
cbuild2 benchmarking:
* Clean up some lose ends
* Sort out source/results storage
glibc:
* Finish comments in lowlevellock.h (if time)
4 days week.
== Issues ==
* Unfortunate cbuild schroot-branch merge, silently brake the validation, and we
had to revert a commit in our FSF repo.
* aarch64 bare valdiation was broken all week, now workaround but it
still have to
be fixed.
== Progress ==
* GCC 4.9 2014.09 (6/10)
- Completed new backports.
- Started FSF 4.9 branch merge for 2014.09
- Investigated validation breakages.
* Misc:
- Various meetings (2/10)
== Next ==
- 4.9 2014.09 release.
- Prepare LCU hacking session
- Travel to CA
== This week ==
* USA Holiday, Monday September 1st
* TCWG-534 - Neon intrinsic testing part 8 (2/10)
- Tested final eighteen neon intrinsics on ARM with no regressions
identified
- Unable to test on aarch64 due to test harness issues
* Linaro Bugzilla 331 - [4.9 Regression] ICE in final_scan_insn, at
final.c:2952 (aarch64-linux-gnu) (2/10)
- Bug fix investigation
* Launchpad 1312931- gcc 4.8 internal compiler error: in add_stores, at
var-tracking.c (2/10)
- validation test results review and code review submission
* Misc. (2/10)
- Linaro Connect presentation finalization and conference call
- 1:1 with Christophe
== Next week ==
- Complete Neon intrinsic testing on Aarch64
- Identify bug fix for Linaro Bugzilla 331
- Investigate failures identified in Neon intrinsic testing
== Progress ==
* TCWG-181 - Bench marking core mark with LTO (2/10)
Measured -O3 -flto vs -O3 on Aarch64 machine with Linaro GCC and
Trunk FSF GCC on Aarch64 and X86_64. Performance in both cases seems
to be same level. Planning to remeasure in trunk now.
* TCWG-531 Fix invalid use of vector register (3/10).
Completed fixing. patch tested on Aarch64 machine and up streamed the
patch to FSF trunk.
* TCWG-532 Fix abinit fails to build on AArch64 (2/10)
Bug does not appear in trunk. Case of missing back port.
Did git bisect experiments in trunk and found that r213078 solves the problem.
Case of code generation for loading labels at -O0 getting fixed after
changes to IRA register class.
* Cbuildv2 preparation for hack session in LCU14.(1/10)
* Others (2/10)
* Meetings Christophe, Ryan, Maxim and GCC status meeting
* Misc and internal meeting.
* Cbuildv2 preparation for hack session in LCU14.
== Plan ==
* Continue testing fix for TCWG-532
* Continue backport fix for TCWG-531.
* Continue Benchmark Core mark with LTO (TCWG-181).
* TCWG-533 Creating scripting to run git bisect with cbuild2.
* Cbuildv2 preparation for hack session in LCU14.
== Progress ==
* Regression on alphaev68-linux-gnu due to uxt/sxt commit (6/10)
- posted patch for promoted type based VRP after fixing issues found in
bootstrapping and regression testing. But had to drop this as this might
have performance implications.
https://gcc.gnu.org/ml/gcc-patches/2014-09/msg00288.html
- Proposed setting a flag to indicating overflow/wrap so that we can
remove uxt/sxt safely.
* Preparation for connect hacking session (2/10)
- Started with materials for the discussions.
* misc (2/10)
- Visa
- Meetings
== Issues ==
- Value range data generated by VRP is not reliable for uxt/sxt removal
as wrapping/overflow is not propagated.
- Patch for Calculating range in promoted type is rejected
- Proposed propagating additional flag (with some tweaking to preserve
size) so that this information is available at the time we deicide on
uxt/sxt redundancy
- If this cannot be agreed, this patch has to be reverted
== Plan ==
* finalize overflow/wrap propagation
* prepare for connect
== Progress ==
* Email, meetings, etc. (1/10)
* Upstream work (1/10, CARD-341)
- Patch review
* LCU14 slides and review (4/10)
* More work on malloc app benchmark framework (4/10, TCWG-441)
- Ironed out a few bugs and sources of noise
- Still need to find a broader range of workloads
== Issues ==
* None
== Plan ==
* Look into malloc single thread optimization patches situation
* Find more workloads to add to malloc benchmarks
--
Will Newton
Toolchain Working Group, Linaro
== Progress ==
* Automation Framework (CARD-1378 2/10)
- Configuring D01s into a three-schroot box
- Turned out unstable, reverting to 4-core setup
* Toolchain (CARD-862 0/10)
- Re-committed vectorizer patch with MSVC2012-friendly code
* LLVM 3.5 Release (TCWG-476 1/10)
- Final release out, all done
* Buildbots (TCWG-76 4/10)
- Adding support for CMake on buildbot Zorg's interface
- Making the CMake builds test without NEON
- Created a compiler-rt bot, found some bugs, investigating
- Submitting changes upstream, will be up soon
* Background (3/10)
- Code review, meetings, discussions, etc.
- Presentations (Connect, LPC)
== Plan ==
* Migrate stack unwinding to VFP for ARMv7+ in compiler-rt
* Start implementing fpu stuff in assembler (parser/attributes)
* Finish LPC presentations
== Progress ==
* GCC trunk/4.9 cross-validation (1/10)
- monitoring results
- noticed failures on newly introduced tests when running on armeb.
Kyrill will fix his tests.
* bug #306 (bootstrap failure on i686) (1/10)
- unable to reproduce it
* AArch64 libsanitizer (3/10)
- asan and most of ubsan tests now pass
- submitted a gcc patch to enable it
- thread sanitizer does not work yet
* Neon intrinsic tests (1/10)
- ran the whole testsuite on aarch64* and arm* targets on gcc trunk
- reported an ICE on aarch64*; was a duplicated, fixed today by Carrot
- there are still several tests failing at runtime, need time to
reduce the testcases
* Misc (conf calls, meetings, ...) (4/10)
- usual 1:1 and team calls
- bugzilla management
== Next ==
* GCC trunk/4.9 cross-validation monitoring
* AArch64 thread sanitizer
* Neon intrinsic tests
* Connect preparation (hacking sessions)
Folks,
Clang+LLVM 3.5.0 was released yesterday (3rd Sep) and Linaro, as
usual, have tested both ARM and AArch64 native builds. This is a major
milestone for LLVM on ARM/AArch64, please read the release notes to
find out more.
http://llvm.org/releases/3.5.0/docs/ReleaseNotes.html
You can download the native ARM binaries (and sources) at:
http://llvm.org/releases/download.html#3.5.0
Since LLVM is natively a cross-compiler, you can download the binary
to your host platform and compile to ARM or AArch64, but you'll need
extra tools (linker, libc, etc).
The main changes are:
* EHABI is now enabled by default and it's compatible with both gcc_eh
and libc++abi unwinding libraries.
* The integrated assembler has got a complete makeover and is now
enabled by default on ARM and AArch64. It supports most of what GCC
produces and a good part of the hand-coded assembly we've seen in the
wild. Please report bugs!
* The current AArch64 back-end is the resulting of a merge between the
existing back-end with Apple's own private back-end (that they open
sourced). It's faster and as stable as the previous and has been
further improved since the merge.
* Compiler-RT has been integrated to the ARM/AArch64 CMake build,
including the sanitizers, though the resulting quality is still beta.
Please report bugs!
This is the first time that Linaro has produced binaries for both ARM
and AArch64 and we'll continue to do so for all major and minor
releases from now on. If there is any patch on trunk for ARM/AArch64
that you need back-ported to 3.5.1 (and beyond), please let us know.
Feedback and Support
Subscribe to the important Linaro mailing lists and join our IRC channels to
stay on top of Linaro development.
** Linaro Toolchain Development "mailing list":
http://lists.linaro.org/mailman/listinfo/linaro-toolchain
** Linaro Toolchain IRC channel on irc.freenode.net at @#linaro-tcwg@
* Bug reports should be filed in LLVM's bugzilla:
http://www.llvm.org/bugs/
* Questions? "ask Linaro":
http://ask.linaro.org/.
* Interested in commercial support? Inquire at "Linaro support":mailto:
support(a)linaro.org
Regards,
--renato
On 09/02/2014 01:36 PM, Renato Golin wrote:
> Plus, the American culture that I like the most is steak. And bacon. I
> think I'll pass.
I won't be making it either. Around here, American culture is called
the Rodeo. :-)
- rob -
== Progress ==
Arm gdb record-replay pending patches up-streaming [3/10]
* Update, test and resubmit patches
AArch64 gdb record-replay patches up-streaming [3/10]
* Update, test and resubmit patches
Miscellaneous [4/10]
* Configure git for replying to previous patch submission using send email.
* PERF try out on chromebook
* Update record-replay slides and debug using cdt integration.
* Emails/Patch scrolling/Meetings etc
== Plan ==
Up-streaming of all pending patches after updates.
GDB Tracepoints/Fast Tracepoints support on arm [TCWG-480]
LCU14 slides preparation and study for presentation.
== This week ==
* TCWG-515 - Neon intrinsic testing part 1 (1/10)
- Completed testing on ARM targets
- Identified failure on vclz intrinsic at all optimization levels
* TCWG-524 - Neon intrinsic testing part 4 (1/10)
- Completed ARM testing with no regressions found
* TCWG-525 - Neon intrinsic testing part 5 (1/10)
- Completed ARM testing with no regressions found
* TCWG-528 - Neon intrinsic testing part 6 (1/10)
- Completed ARM testing with no regressions found
* TCWG-529 - Neon intrinsic testing part 7 (1/10)
- Completed ARM testing with no regressions found
* Launchpad 1312931- gcc 4.8 internal compiler error: in add_stores, at
var-tracking.c (2/10)
- Resolved and tested on linaro 4.9 branch
* Linaro Connect Presentation (2/10)
- Completed "Optimization Levels" portion of presentatio
* Misc. (2/10)
- Launchpad to bugzilla transition
- Conference calls with Ryan and Christophe
* Issues
- Delay in validating Launcpad 1312931 due to SchrootFarm instability
- Unable to issue code review on Gerrit after server upgrade
== Next week ==
- USA Holiday, Monday, september 1s
- Continue Neon intrinsic testing
- Finalize Linaro Connect presentation
- Bug fixing
== Progress ==
* TCWG-181 - Bench marking core mark with LTO (2/10)
Measuring -O3 -flto vs -O3 on Aarch64 machine with Linaro GCC and
Trunk FSF GCC.
* TCWG-520 ICE in linaro compiler for ARMv7 target (4/10).
Completed fixing. patch tested on schroot. Backported revision from
trunk using gerrit and jenkins. upstreamed the patch.
* Others (2/10)
* Meetings Christophe, Ryan, Maxim and GCC status meeting
* Misc and internal meeting.
* Discussed with Yvan on using gerrit and backflip script.
4 day week, Friday 29/8 was holiday.
== Plan ==
* Another Bug fixing task .
* Continue Benchmark Core mark with LTO (TCWG-181).
* Upstream patch review.
* Cbuildv2 preparation for hack session in LCU14.
== Progress ==
* Regression on alphaev68-linux-gnu due to uxt/sxt commit (7/10)
- built cross alphaev68-linux-gnu and reproduces it with qemu.
- Issue is due to PROMOTE_MODE definition and VRP truncating values.
- discussed upstream and after a failed patch, it was suggested that
the value ranges have to be calculated in promoted_mode precision.
- Patch to do VRP in promoted_mode is in testing. There are few
failures to fix.
- An easier fix probably is to check the promoted mode against
word_mode and disable uxt/sxt elimination.
* TCWG-521 - Analysed Coremark and Spec2k for uxt/sxt optimizations
TCWG-521(2/10)
- Continue with Coremark and have additional patches in development for
missing cases.
* bswap pr43550 (No card yet) (1/10)
- Finished regression testing. Will post the patch after resolving
regression with alpha.
== Paln ==
* Continue with VRP in promoted mode, TCWG-521 and bswap pr43550.
== Issues ==
* Multiple validation infrastructure issues (gerrit/jenkins/git.linaro.org)
now fixed.
* aarch64-none-elf is now really long to complete (~11hrs) whereas it
was less than 1hr last week.
== Progress ==
* GCC 4.9 2014.09 (3/10)
- Committed last week backports
- More backports under validation
- vca* intrinsics test are faiures analysis ongoing.
* Misc
- Linaro GCC git repo migration: (2/10)
+ Discussed and test the migration with Milo,
we'll be ready to move the coming week.
- Upstream bugzilla: (2/10)
+ Fixed PR 62248 : Configure error with --with-fpu=fp-armv8
- Linaro bugzilla: (1/10)
+ Fixed #562 : New tests failed on linaro 4_9 branch
- Various meetings: (1/10)
- Helped Venkat with backports (1/10)
- launchpad bug migration duty.
== Next ==
* Off on Monday
* Complete backports.
* Back on AArch64 libunwind
* Prepare Connect Hacking session
== Progress ==
* Monday bank holiday (2/10)
* Email, meetings, etc. (1/10)
* Upstream work (1/10, CARD-341)
- Patch review
* Built releases of newlib, binutils and gdb for 2014.09 (2/10)
* LCU14 research and slides (4/10)
== Issues ==
* None
== Plan ==
* Finish LCU slides
* malloc benchmarking
--
Will Newton
Toolchain Working Group, Linaro
== Progress ==
* GCC trunk/4.9 cross-validation (1/10)
- checking results
* bug #306 (bootstrap failure on i686) (3/10)
- fixed an incorrect backport than made GCC build to fail in stage1
- now trying to reproduce the original bug reported
* AArch64 libsanitizer (2/10)
- resumed work, debugged sysroot / chroot problems with cbuild2
thanks to Maxim
* Misc (conf calls, meetings, ...) (4/10)
- usual 1:1 and team calls
- wrote some doc for Wang
== Next ==
* GCC trunk/4.9 cross-validation monitoring
* bug #306 (bootstrap failure on i686)
* AArch64 libsanitizer
* Neon intrinsic tests
== Progress ==
GDB Tracepoints/Fast Tracepoints support on arm [TCWG-480] [4/10]
* FAST tracepoints try out on arm chromebook with trampoline code
borrowed from kernel.
AArch64 gdb record-replay bug fix [TCWG-503][TCWG-498] [2/10]
* Debugging of issues
Miscellaneous [4/10]
* Reading on PreLink for LCU14 Presentation
* Reading on PERF tools for LCU14 Presentation
* LCU14 slides preparation.
* Emails/Patch scrolling/Meetings etc
== Plan ==
GDB Tracepoints/Fast Tracepoints support on arm [TCWG-480]
Some progress on AArch64 gdb record-replay bug fix [TCWG-503] [TCWG-498]
LCU14 slides preparation and study for presentation.
= Progress ==
* Upstream work (2/10, CARD-341)
- Bug investigations
- Applied a couple of patches
* Booting upstream kernel on Chromebook (2/10)
- Kernel booting and running
- No builtin wifi but dongle works ok
- Breakpoint issue fixed but the test still fails for some other
reason, created upstream issue
* Malloc application benchmarking (3/10, TCWG-441)
- Various improvements of the scripts
- Investigate benchmark variability in the presence of frequency scaling
- Is it possible to get repeatable numbers on Intel i{7,5,3}?
* Start looking at LCU session requirements (1/10)
* Annual leave on Friday (2/10)
== Issues ==
* None
== Plan ==
* LCU session slides
--
Will Newton
Toolchain Working Group, Linaro
== Progress ==
* TCWG-180 Debugging - LTO bootstrap failure in Aarch64 with GCC 4.9. (4/10)
Completed. Patch that sets same tune parameters solves the bootstrap
compare errors in Branch. Closed the JIRA cards. There are still LTO
IR streaming issues in trunk which needs to tracked down and fixed at
tree level. and no plans of doing that now.
* TCWG-520 ICE in linaro compiler for ARMv7 target. Bisected the
revision in trunk which fixes that. Backported and tested and fixes
tha bug. (4/10)
* Others (2/10)
* Bug migration from launchpad
* Meetings Christophe, Ryan, Maxim and GCC status meeting
* Misc and internal meeting.
* setup LLVM.
== Plan ==
* Continue Bug fix (TCWG 520).
* Benchmark Core mark with LTO (TCWG-181).
* Upstream patch review.
== MISC ==
* Local Holiday on 29th August
== Progress ==
* TCWG-413 - Release benchmarking (2/10)
- Analysed all the patches gone into the release for performance impact
* TCWG-521 - Analysed Coremark and Spec2k for uxt/sxt optimizations
TCWG-521(3/10)
- Studied Coremark and have additional patches in development for
missing cases.
* bswap pr43550 (No card yet) (3/10)
- Looked at the pr and it is not fixable with VRP
- An alternate approach based patch is in testing to fix this.
* 1 day off Sick (2/10)
== Paln ==
* Continue with TCWG-521 and bswap pr43550
== This week ==
* TCWG-515 - Neon intrinsic testing part 1 (1/10)
- Attempting testing on ARM targets; resolving build failures
* TCWG-524 - Neon intrinsic testing part 4 (2/10)
- Completed AARCH64 testing with no regressions found
* TCWG-525 - Neon intrinsic testing part 5 (2/10)
- Completed AARCH64 testing with no regressions found
* Launchpad 1312931- gcc 4.8 internal compiler error: in add_stores, at
var-tracking.c (3/10)
- Resolved, tested and requested code review on linaro 4.8 branch
- Resolved and tested on linaro 4.9 branch.
- Reviewing test results
* Linaro Connect Presentation (2/10)
- Met with Maxim and Will to prepare outline
- Began writing "Optimization Levels" portion of presentation
== Next week ==
- Continue Neon intrinsic testing including getting ARM portion to execute
- Complete "Optimization Levels" portion of Linaro Connect presentation
- Resolve Launchpad 1312931 on Linaro 4.9 branch
=Progress=
cbuild2 benchmarking - TCWG-360 [5/10]
* Proposed a plan for benchmark storage
* A bit more thought on cross-running
* Prototyped script to launch/run/release on LAVA targets (e.g. wg)
** The 'run' part is pretty much independent of the 'LAVA' part
lowlevellock.h commentary - ???? [2/10]
* In response to a patch review, added some comments to this fairly obscure file
* Took longer than expected, but the end's in sight so I guess I'll finish
* I know a bit more about futexes and threads now
Meetings/mail/etc [3/10]
=Plan=
Holiday. Back on 1st September.
== Progress ==
Arm gdb record-replay bug fix [4/10] [TCWG-314]
* Testing of all patches on x86 and arm machines.
* Patch submission upstream after sync up with latest gdb trunk.
AArch64 gdb record-replay bug fix [3/10] [TCWG-503][TCWG-498]
* Debugging of testsuite failures with apm and foundation mode.
* Patch series update after sync up with latest trunk.
GDB Tracepoints/Fast Tracepoints support on arm [2/10] [TCWG-480]
* Search for previously submitted patches, wiki info and other documentation.
* Started with initial study and code understanding.
Miscellaneous [1/10]
* Research GDB record/replay usage scenarios.
* Meetings/emails and installation/configurations etc
== Plan ==
AArch64 gdb record-replay bug fix [TCWG-503][TCWG-498]
* Fix test failures if possible otherwise submit updated patches.
GDB Tracepoints/Fast Tracepoints support on arm [TCWG-480]
* Further study and investigate a missing functionality on arm.
Verify GDB non-stop debug support on ARM. [TCWG-246]
== Progress ==
* Looked at implementation options for backlog cards and
closed/postponed cards that doss not benefit or cards that require
excessive re-architecture that will not be possible now. (5/10)
- TCWG-468 - Postponed after detailed study and discussion.
- TCWG-412 (Support literal/constant pool sharing (wont-fix): As it is,
intra procedularl literal pool fix happens in
TARGET_MACHINE_DEPENDENT_REORG with arm_reorg. It is quite complex and
somewahat hacky. it would become even more messy if we are to record
these information and reuse it for whole program as a way to share
literal poool. Additionally A-profile (which is Linaro's focus) dosent
benefit from this as we use movw/movt instead. Therefore decided to
clsoe this as wont fix.
* TCWG-413 - Release benchmarking (2/10)
- Benchmarking or release for a15 and a57
* Analysed coremark and spec2k for uxt/sxt optimizations (3/11)
- Studied coremark and have additional patches in development for
missing cases.
* Misc
- Looked at bug database and monitored patches relevant to arm/aasrch64
== Paln ==
* Look at open uxt/sxt bugs in gcc bugzilla
* Study coremark and then spec2k for uxt/sxt
== Progress ==
* Reviewed a big pile of benchmarking patches for cbuild2. (TCWG 1378
- 2/10).
* Worked on stabilizing "Backport" Jenkins job (TCWG 1378 - 6/10).
* Meetings and Misc (2/10)
== Plan ==
* Keep tracking down Jenkins issues with Backport job.
* Get my D01 board working finally, since I killed my Odroid U2.
* Do more thorough testing of SSH performance improvements.
=Progress=
cbuild2 benchmarking - TCWG-360 [4/10]
* Some disagreements with gerrit
* One of my patches broke bare metal builds (now fixed)
* More review of the way we store benchmark sources
Other - [5/10]
* Meetings, mail, etc (featuring newlib build options, defaults,
cbuild vs benchmark scripts)
* Learned to use git-send-email, bent it to my will
* Authentication pain on ARM-side
Holiday - [1/10]
=Plan=
cbuild2 benchmarking
* Finish source/data storage plan
* Figure out how benchmark cross-running will work, get started on it
Holiday next week (25th - 29th August)
== This week ==
* TCWG-515 - Neon intrinsic testing part 1 (3/10)
- Completed testing with internal compiler error discovered compiling
with -Og and -g
- GCC bugzilla report 62040 already exists for this issue
* TCWG-518 - Neon intrinsic testing part 2 (2/10)
- Completed testing with no regressions found
* TCWG-519 - Neon intrinsic testing part 3 (2/10)
- Completed testing with no regressions found
* Reviewed branch merge of Linaro 4.8 and 4.9 with FSF trees (3/10]
== Next week ==
* Continue with neon intrinsic testing
* Investigate bug 373 - [gcc-4.9][android][armv8] internal compiler error
* Develop outline for Linaro Connect presentation
== Progress ==
* TCWG-180 Debugging - LTO bootstrap failure in Aarch64 with GCC 4.9. (6/10)
Analyzed tree dumps between stage2 and stage3 compilers. Noted that
extra gimple declarations in stage2 compiler.
Also inline minimum parameters in gimple.c.048i.inline were different.
Richard Beiner found that way we hash the string literals was
different between stage2 and stage3 compilers.
Tested the patch, he posted on trunk but it does not solve the
comparison failures.
Also GCC garbage collector parameters for expansion and maximum heap
size varies between stage 2 and stage3. Setting this parameters to
same value in stage2 and stage3 builds fixes bootstrap failures in
Aarch64.
These fixes are for trunk and stage 1 5.0.
Ref: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62077
Still need to find a work around for release branches
Testing these patches on AMD64 /Aarch64 machines.
* Others (2/10)
* Upstream patch review.
* 1-1 Meeting Christophe.
* Misc and internal meeting.
* setup LLVM.
* Friday national holiday (2/10).
== Plan ==
* Continue LTO bootstrap issue.
* Benchmark Core mark with LTO.
* Upstream patch review.
== MISC ==
None .
The Linaro Toolchain Working Group (TCWG) is pleased to announce the 2014.08
stable release of both Linaro GCC 4.9 and Linaro GCC 4.8 source package.
With the imminent release of ARMv8 hardware and the recent release of the
GCC 4.9 compiler the Linaro TCWG will be focusing on stabilization and
performance of the compiler as the FSF GCC compiler. The Linaro TCWG provides
stable[1] quarterly releases and monthly engineering[2] releases.
Linaro GCC 4.9 2014.08 is the fifth Linaro GCC source package release and first
stable one in the 4.9 series. It is based on FSF GCC 4.9.2-pre+svn213803 and
includes performance improvements and bug fixes.
Interesting changes in this GCC source package release include:
* Updates to GCC 4.9.2-pre+svn213803
* Backport of [AArch64] Drop ISB after FPCR write.
* Backport of [AArch64] Remove from arm_neon.h functions not in the spec
* Backport of [AArch32] Fix check for __FAST_MATH in arm_neon.h
* Backport of [AArch64] fix and enable non-const shuffle for bigendian using TBL
instruction
* Backport of [AArch64] Fix constraint vec_unpack_trunk
* Backport of [AArch32] Cortex-A5 rtx costs table
* Backport of [AArch32] Handle clz, rbit types in arm pipeline descriptions
* Backport of [AArch64] Fix argument types for some high_lane* intrinsics
implemented in assembly
* Backport of [AArch64] Handle fcvta[su] and frint in RTX cost function
* Backport of [AArch64] Prologue rewrite + performance.
Linaro GCC 4.8 2014.08 is the fourteenth release in the 4.8 series and is in
maintenance. Based off the latest GCC 4.8.4+svn213802 release, it includes
performance improvements and bug fixes.
Interesting changes in this GCC source package release include:
* Updates to GCC 4.8.4+svn213802
* Backport of Fix [AArch32] for PR sanitizer/58543
* Backport of Fix [AArch64] for PR target/59744
Feedback and Support
Subscribe to the important Linaro mailing lists and join our IRC channels to
stay on top of Linaro development.
** Linaro Toolchain Development "mailing list":
http://lists.linaro.org/mailman/listinfo/linaro-toolchain
** Linaro Toolchain IRC channel on irc.freenode.net at @#linaro-tcwg@
* Bug reports should be filed in Launchpad against "Linaro GCC project":
http://bugs.launchpad.net/gcc-linaro/+filebug.
* Questions? "ask Linaro":
http://ask.linaro.org/.
* Interested in commercial support? inquire at "Linaro support":mailto:
support(a)linaro.org
[1] Stable source package releases are defined as releases where the full Linaro
Toolchain validation plan is executed.
[2] Engineering source package releases are defined as releases where the
compiler is only put through unit-testing and full validation is not
performed.
= Progress ==
* Upstream work (4/10, CARD-341)
- Patch review (gdb, binutils)
- glibc testsuites for ARM and AArch64
* Booting upstream kernel on Chromebook (4/10)
- Tried u-boot path but Google's shipped NV u-boot is broken in several ways
- Fall back to trying to boot a signed upstream kernel
- Gets halfway through boot then seems to turn the regulators off
* Malloc application benchmarking (2/10, TCWG-441)
- Add pdf library benchmark to benchmark suite
- Improve argument parsing and result plotting
- Seem to be hitting some new issue with mounting memory cgroup within docker
== Issues ==
* None
== Plan ==
* Iron out issues with malloc benchmark framework
* Get Chromebook booting
--
Will Newton
Toolchain Working Group, Linaro
== Progress ==
* Benchmarks (CARD-716 2/10)
- Wrapping up SPEC run, some results
- Fix missing tests, running with -ffast-math
* Toolchain (CARD-862 4/10)
- A few more assembler fixes
- http://llvm.org/PR20462
- http://llvm.org/PR20595
- Some vectorizer cleanups
- http://llvm.org/PR20655
* Background (4/10)
- Code review, meetings, discussions, etc.
- Trying D01s again as buildbots
== Plan ==
* Pick some more toolchain bugs to work on
* Release 3.5 tests and benchmarks
* Move bots to CMake, enable compiler-rt
* Change compilation to make Clang/LLVM non-NEON by default
* Enable D01s as buildbots
== Issues ==
* None.
== Progress ==
* Update "Keep constants in register when expanding" patch according
to comments (TCWG-486, 3/10).
* Refine ccmp patches since the old ones can not apply (TCWG-488, 2/10).
* Check PR62151, it was exposed by my commit r211885. But the root
cause was r208165.
* R/M toolchain related work (5/10)
== Plans ==
* Ping pending patches.
== Planed leaves ==
* Aug. 18 - 26.
Hi,
I am trying to build a working environment with Angstrom Linux, QT5 for
Toradex Apalis iMX6 module and additional QT5 SDK for my host machine.
The compilation of Angstrom with additional QT5 layer went fine.
However, there are some problems when building toolchain for the host
machine (command meta-toolchain-qt5). It seems that there is a problem
with configuration of linaro gcc runtime 4.8.
The reported error is: "checking dynamic linker characteristics...
configure: error: Link tests are not allowed after GCC_NO_EXECUTABLES".
The log file is in the attachment. Does anyone have any idea how to fix
this problem? I am using Ubuntu 14.04.
Thanks in advance,
Crt Gorup
Hello,
I'm trying to perform cross platform remote debugging from my x86 computer
to a remote ARM device. (ex: Beagle Bone Black)
I'm using Ubuntu 14.04 and Eclipse CDT.
I installed the Ubuntu package gcc-arm-linux-gnueabihf but the gdb debugger
is not in that package.
Therefore, I'm wondering if I should use the Linaro toolchain (which
include arm-linux-gnueabihf-gdb) or if I should install the Ubuntu
gdb-multiarch package.
What is the difference between gdb-multiarch and arm-linux-gnueabihf-gdb ?
Is it better to use gdb-multiarch ?
Thanks
ssinfod
== Progress ==
BeagleBoard and Pandaboard setup for gdb testing [3/10]
* Deployed debian linux on both boards
* Installation of required packages for gdb testing
* Run gdb native tests on Beagleboard, Pandaboard and Chromebook
Arm gdb record-replay bug fix [6/10] [TCWG-314]
* Applied previous asimd and vfp patches and test for failures
* Fixed exception due to a bug in previous patches with latest trunk.
* Fixed issues with solib trampoline code when stepping in reverse.
Miscellaneous [1/10]
* In pursuit of deploying linux on boards dd,ed my hard drive by
accident and spent some time re-installing my desktop.
== Plan ==
Arm record-replay bug fix [TCWG-314]
* Test bug fixes with all previous patches and resubmit.
Update and Submit Aarch64 record replay patches.
Resume work on Aarch64 prologue analysis.
=Progress=
cbuild2 benchmarking- TCWG-360 [6/10]
* Existed patches tidied up and gerritified
* A few drive-by bugfixes
* Cross-building support added and also gerritified
lowlevellock patch [1/10]
* Resubmitted bugfix, reacted to review
* Some wrestling with space-mangling evil in mail clients
Meetings/mail/etc [3/10]
=Plan=
Holiday Tuesday afternoon
cbuild2 benchmarking
* Get remote targets working
* Maybe look at results gathering
== This week ==
* Linaro bugzilla 331 - [4.9 Regression] ICE in final_scan_insn, at
final.c:2952 [4/10]
- Triaged and investigating
* Linaro bugzilla 307 - [Linaro 4.8] ICE in change_address_1, at
emit-rtl.c:2019 [1/10]
- Unable to validate. Further investigation before closing
* TCWG-515 - Neon intrinsic bug testing [5/10]
- Linaro Infrastructure headaches and setup.
- May split into several blueprints targeting two to three tests
- Require assistance debugging DejaGnu script error preventing some
tests from running
== Next week ==
- Continue with Neon intrinsic testing
- Continue investigation into resolution for Linaro bugzilla 331