# Progress #
* aarch64 gdb , TCWG-652, [6/10]
** TCWG-662: Fixed and committed (by Pedro).
** TCWG-660: Rebuild toolchain with ABE.
** TCWG-663: Root cause of fails are known, that test case sets HW
breakpoint on arbitrary address while aarch64 HW breakpoint requires
4-byte align. ARM has the similar HW breakpoint feature, need to
to check on arm target too.
* fsf gdb patch review [2/10]
** Review and approve one patch from IBM which fixes TCWG-669 too.
** Discuss on re-org for syscall catchpoint for different target/arch.
* misc [2/10]
** Meeting.
** Move to the new house.
# Issues #
* Need an ARM board with HW breakpoint support in kernel. I tried
32-bit system on my juno board via schroot, but
PTRACE_SETHBPREGS doesn't work properly.
# Plan #
* TCWG-660: Teach ABE to import systemtap and build glibc with
--enable-systemtap.
* TCWG-663: See how the tests behave on ARM if ARM board is available.
* Other cards under TCWG-652.
--
Yao
== Progress ==
* Validation: (2/10)
- reached a state where Jenkins "green" actually means no regression found
- submitted patches for review
- confirmed that ABE master branch produces results similar to merge branch
- stopped checking the accuracy of report.sh since a few bugzilla
had been submitted, using ST script instead
* Backports (3/10)
- reviews are getting difficult, with lots of conflicts as the 4.9
branch has diverged from trunk quite a lot
* Sanitizers (1/10)
- trying to build LLVM+run the ASAN tests on AArch32
- tried to reconfigure my Hikey 96board with a 42 VA bits enabled
kernel, but it didn't boot: I still don't have access to such a
platform
* GCC FSF trunk/4.9 monitoring
- stopped tracking random "Interrupted system call"
- builds and validations now run faster, but with more frequent such errors
* Misc (4/10)
- meetings, conf-calls, emails, ...
- Release/maintenance branches policy, respin criteria, validation matrix
== Next ==
* Backports: reviews, and improve review-tool
* Sanitizers
Hi,
I have being trying to persuade gcc to generate the ldp instruction without success. I have tried many combinations, below is an example.
--- cut here ---
#define LDP(x,y,p) { \
struct vec { long x, y; } data; \
data = *(struct vec *)p; p += 2; \
x = data.x; y = data.y; \
}
long testp(long *p) {
long x, y;
LDP(x, y, p);
return x+y;
}
--- cut here ---
$ gcc --version
gcc (GCC) 4.9.1
Copyright (C) 2014 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
$ gcc -S -O3 ldp.c
$ cat ldp.s
.cpu generic+fp+simd
.file "ldp.c"
.text
.align 2
.global testp
.type testp, %function
testp:
ldr x1, [x0,8] ;; why not ldp?????
ldr x0, [x0]
add x0, x1, x0
ret
.size testp, .-testp
.ident "GCC: (GNU) 4.9.1"
What can I do do make it generate ldp?
Ed.
== Progress ==
Bug triage [2/10]
Bug 1199 analysis [4/10]
reproduced, studied IRA dumps for a while, will have to report this upstream
Backports + BackFLiP enhancement [3/10]
Misc [1/10]
meetings, git training presentation, mailing lists
== Plans ==
benchmark 2015.02 release
more bugs
== Progress ==
LLDB development
-- Some code sniffing and created JIRA cards with some task estimation [2/10]
-- Trying AArch64 cross build and update howto [1/10]
-- Trying Arm cross build and update howto [2/10]
GDB patch updates and test cases for ARM record-replay instruction
recording [4/10]
Miscellaneous [1/10]
-- 96board with custom kernel no success with getting ethernet
working on it yet
== Plan ==
Wind up all pending gdb patches
== Issue ==
* none
== Progress ==
* Release and Backports (6/10)
- Supported backporting activity
- Added new feature to Backflip
- Discussed redefinition of release/maintenance policy
* Misc (4/10)
- Various meetings
- Catch up with mails
- Updated GCC release process in collaborate
- HiKey
== Plan ==
* Release and backport support
== This week ==
Short week - 3 days. Took Sat, Sun off due to health issues, severe
ear infection -:(
* Modularization project
a) TCWG-637: Applied TLC to parser in include-remove tool
b) TCWG-621: Began refactoring rtl.h
c) TCWG-628.
* TCWG-619:
- Started going through LTO documentation.
* Bugs
1178: Found a possible fix, prevents the ICE for the test-case.
== Next week ==
* TCWG-619
* Submit fix to 1178 upstream
* TCWG-628
== This week ==
* GCC Modularization project
- TCWG-621: Refactoring rtl.h almost completed.
- TCWG-639: Working on rewriting the tool in python.
- TCWG-637: Working on basing the tool on rtags instead of ctags.
- TCWG-629: Continue target-hook conversion.
* Backports:
- Submitted following backports for review:
r215612, r215722, r219656, r219657, r219659, r219661
== Issues ==
- Building chromium dependencies.
- Cannot log in to NX session on tcwg-env-05.
== Next Week ==
- Chromium LTO build (TCWG-619)
- Validate and commit backports.
== Progress ==
* compiler-pass to widen computation (TCWG-547) - (7/10)
- ran into -std=gnu90 issue in compiling spec2k/2006 with the trunk
using the new infrastructure
- ran benchmarking but the results are not much different
- tried with -save-temps but the intermediates are gone. Not sure if
infrastructure cleans it
- setting up spec2k in nx aarch64 chroot for easy comparison of
intermediate values (asm and tree dumps)
- also plan to try benchmarking with widening pass enabled only for
unsigned type where BIT_AND_EXPR (zero_extend) is optimized well as
compared to new middle-end ZEXT_EXPR (which is not handled well yet) to
see if the difference is there.
* Improve register allocation for AArch64 (TCWG-620) - (1/10)
- Looked at the relevant patches and code
* https://bugs.linaro.org/show_bug.cgi?id=1291 (1/10)
* Misc (1/10)
== Plan ==
* TCWG-620 and TCWG-547
* https://bugs.linaro.org/show_bug.cgi?id=1291
* TSAN support for Aarch64 (5/10)
TCWG-642
Discussed on making -pie for -fsanitize=thread as default in GCC.
Learnt that LLVM sanitizers now support both -pie and non -pie mode.
Discussed the same issue with sanitizer's group. They asked me to
do -pie for aarch64 as first version. Pushed GCC changes to
linaro git.
TCWG-654
Discussed with Renato, moved to LLVM tree and woking on that.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64946.
TCWG-634
Ran ASAN tests which 32 bit allocator code now as default on amd-01.
/home/venkataramanan.kumar/LLVM/TSAN_port/Source/projects/compiler-
rt/lib/sanitizer_common/sanitizer_allocator.h:841
((res)) < ((kNumPossibleRegions)) (4193146, 524288)
I got similar error in TSAN and it went off when I switched to 64
bit allocator.
* Bug 869 - Wrote a pattern in match.pd to remove type promotion in
ABS_EXPR . Richard Beiner suggested to add ABSU_EXPR to take care of
signed overflows (3/10)
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64946
* Emails, meetings. (2/10)
* Linaro 1-1 with christophe, maxim and Ryan.
* AMD meetings/event, 1-1 with AMD manager, status meeting.
* GCC mailing list.
== Plan ==
* TSAN/ASAN support look if 64 allocator is needed or not .
* LLVM build with local patches.
* Bug869.
* Misc and Meetings (AMD, LInaro)
== Progress ==
* Releases (CARD-1431 2/10)
- Spinning RC4, final, all green
* Buildbots (CARD-1823 1/10)
- Adding new quick Thumb2 non-NEON bot
- Adding new full self-hosting Thumb2 bot
* Libraries (CARD-1831 1/10)
- Trying to build a soft-float compiler-rt test-suite
* Sanitizers for AArch32/64 (CARD-1753 4/10)
- Investigating/fixing broken sanitizer bots (4 failures)
- Investigating other sanitizer failures on Junos
- More planning on TSAN, ASAN
* Background (2/10)
- Code review, meetings, discussions, etc.
- Reviewing the remaining EuroLLVM papers
- More LLDB planning
== Plan ==
* LLDB meeting with Google
* EuroLLVM final paper review meeting
* Continue building test-suite with Compiler-RT, libc++
* Continue help on ASAN/TSAN
* Try our first sprint planning...
# Progress #
* aarch64 gdb, TCWG-652, [5/10]
** TCWG-653: triage fails in aarch64-linux gdb testing, both native and
remote. Nearly done.
** TCWG-670: Clean up GDB testsuite for syscall catchpoint first.
Ongoing.
** TCWG-672: GDB can't unwind from glibc with the expected function name
if glibc is stripped. Nearly done.
** Committed two patches upstream fixing two fails on aarch64-linux
target.
** Clean up arm and aarch64 bug reports on sourceware.org bugzilla.
* fsf gdb patch review [4/10]
** Reviewed Omair's two process record GDB patches.
** Reviewed one patch may cause fails on remote testing.
* misc [1/10]
** 1x1 with Ryan.
** With Bernard's help, set up ssh access to linaro servers.
# Plan #
* All cards under TCWG-652.
* Move out of temporary apartment to a rented one on Friday.
--
Yao
Go away where ? ABE just uses whatever triplet you give it. I commonly use just arm-linux-gnueabi for example. If you don't specify 'none', it shouldn't appear anywhere. If it does, let me know and I'll fix it.
- rob -
-------- Original message --------
From: Christopher Covington <cov(a)codeaurora.org>
Date: 02/26/2015 2:52 AM (GMT+07:00)
To: linaro-toolchain(a)lists.linaro.org
Subject: Debian Multiarch Tuple Style Naming With ABE
Hi,
I recently built with ABE for the first time. It's pretty slick.
Is there a way to make the vendor string (the "none" in
"arm-none-linux-gnueabihf-*") go away? It breaks my scripts without appearing
to add value.
Thanks,
Chris
--
Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
_______________________________________________
linaro-toolchain mailing list
linaro-toolchain(a)lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain
Holiday Friday [2/10]
catomics - TCWG-436 [2/10]
* Fixed broken benchmark-against-sysroot code in scripts
* Built a lot of sysroots
Juno cache effects - LDTS-1238 [4/10]
* Quite a bit of reading and learning some more perf and other tools
* Formed a few hypothesis, started testing
* Looking promising, but I find these things often go wrong, so we'll see
Misc [2/10]
* Featuring first successful Jenkins run of all of SPEC2006
=Plan=
Make sure I've really fixed the last sysroot bug, actually run
benchmarks on catomics
Attempt to close out the cache effects issue
Carry on with Jenkins
Hi,
I recently built with ABE for the first time. It's pretty slick.
Is there a way to make the vendor string (the "none" in
"arm-none-linux-gnueabihf-*") go away? It breaks my scripts without appearing
to add value.
Thanks,
Chris
--
Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
Hi,
I am trying to port the Boost.Context library (from www.boost.org) to aarch64 gcc and have come across a gnarly problem.
Boost.Context essentially does co-routine style context switching. It has a structure f_context which it uses to save and restore contexts. The structure f_context contains both integer (x0..xN) and floating point VFP (d8..d15) context.
The function jump_context switches contexts
typedef struct f_context *f_context_t
extern void jump_context(fcontext_t *old, f_context_t new, bool save_fp);
So this jumps to a new context returning the old context in *old. If save_fp is set the floating point context must be saved because the application uses floating point. Otherwise the save and restore of the floating point context may be ignored.
So, essentially, to save the old context it does
jump_fcontext:
# prepare stack for GP + FPU
sub sp, sp, #0xb0
# test if fpu env should be preserved
cmp w3, #0
b.eq 1f
# save d8 - d15
stp d8, d9, [sp, #0x00]
stp d10, d11, [sp, #0x10]
stp d12, d13, [sp, #0x20]
stp d14, d15, [sp, #0x30]
1:
# save x19-x30
stp x19, x20, [sp, #0x40]
stp x21, x22, [sp, #0x50]
stp x23, x24, [sp, #0x60]
stp x25, x26, [sp, #0x70]
stp x27, x28, [sp, #0x80]
stp x29, x30, [sp, #0x90]
However, there is a problem with this because gcc may store integer value in floating point registers around a function call.
So, I have no way of knowing whether it is actually necessary to save/restore floating point context.
Even worse applications using Boost.Context may be completely borken if they assume it is safe to call jump_context with save_fp == 0.
Any suggestions?
Ed.
== This week ==
* Released Linaro 4.8 and 4.9 February 2015 release (2/10)
* Vector Extensions Project (7/10)
- Design work on C++ classes
- Reviewed Boost.simd as alternative implementation
- Review of libvpx benchmark
* Misc. (1/10)
- Conference calls
- ARM required online training
== Next week ==
- ARM CodeGen conference in Cambridge
--
Michael Collison
Linaro Toolchain Working Group
michael.collison(a)linaro.org
== Progress ==
LLDB development
-- LLDB Call graph analysis for understanding some development nits [1/10]
-- Trying out LLDB server arm and aarch64 cross compilation. [2/10]
-- List down arm-lldb task list with some debugging [2/10]
Miscellaneous [1/10]
-- 96board setup
Holiday [4/10]
-- Monday 16th and Tuesday 17th Feb 2015
== Plan ==
Convert LLDB Arm task list to JIRA cards
Try to fix LLDB server arm and aarch64 cross build issues.
Some GDB patch updates
Connect detox [2/10]
ABE benchmarking automation - TCWG-360 [5/10]
* Backport benchmarking
** Harder than expected, have to build the backport into a binary,
then benchmark that binary, passing information between jobs.
** AFAIK I'm blazing the Jenkins-chainging trail for us.
* Release benchmarking
** New LAVA release broke my image (but quickly fixed by the LAVA folks)
** Now seems to be running into issues with Jenkins/builders/an
anonymous job-slayer
* Misc fixes and improvements
** Main highlight being support for building with separated-out sysroot
Misc - [3/10]
=Plan=
Kick off catomics benchmark runs
(Attempt to) close out cache effects on Juno issue
Carry on with Jenkins
=Issues=
* Some of the Jenkins builders seem unreliable
* My lightly hacked version of the BinaryRelease job is unreliable
** Is the BinaryRelease job itself is reliable
* TSAN support for Aarch64 (5/10)
Fixed some kernel size issues in my local working tree. (TCWG-581) .
GCC does not default to -fPIE or -pie. Ran into address layout
issues when I used -fsanitize=thread. Some test cases passed with the
mapping I used for 42 bit VA when -pie and -fPIE are added.
* Bug 869 - Looking at match.pd to remove type promotion in ABS_EXPR (1/10)
* Emails, meetings. (2/10)
* Linaro 1-1 with maxim and Ryan.
* AMD meetings/event, 1-1 with AMD manager, status meeting.
* GCC mailing list.
Leave on 20-Feb-2015 (2/10)
== Plan ==
* TSAN support for Aarch64 work fixing GCC -fsanitize=thread option.
* Break tasks under TCWG-581.
* LLVM build with local patches.
* Bug869.
* Misc and Meetings (AMD, LInaro)
== Progress ==
* compiler-pass to widen computation (TCWG-547) - (5/10)
- Analysed core-mark code size regression
- fixed constant handling
- Added VRP support for ZEXT_EXPR
* Improve register allocation for AArch64 (TCWG-620) - (1/10)
- Looked at the relevant patches
* Misc (4/10)
- Setting up ABE benchmarking scripts
- Ran into some LAVA related issues for ABE benchmarking
- Recovering from connect
- Started with 69 board setup
== Plan ==
* TCWG-620 and TCWG-547
* ABE benchmarking
== Progress ==
* GCC trunk/4.9 monitoring
* Neon intrinsics tests
- committed the last patch of the 2nd series.
- about another 1/3 of the tests remain to be converted: will wait
for GCC stage1
* AArch64 sanitizers (2/10)
- Renato committed my patches to enable ASAN in LLVM/AArch64
- the official aarch64 buildbot (Juno) had problems after these, so
the asan tests are disabled again until the problem is understood.
Probable board configuration problem, since the tests passed on our
Juno.
- preparing a patch to solve the long standing issue with dependency
on aarch64 kernel version (kernel_old_[ug]id)
* Backports (4/10)
- reviews
- respawned validations under MergeFarm
* ABE:
- improving reporting
* Misc (4/10)
- meetings, conf-calls, emails, ....
== Next ==
Connect, then holidays
== Progress ==
* Rebooting brain after Connect (2/10)
* Friday off (2/10)
* Release 3.6 (CARD-1431 1/10)
- Spinning RC3, RC4
- Long discussions about Phoronix benchmark regressions
* Buildbots (CARD-1823 2/10)
- Buildbot cleanup and reshape
- Adding two new internal buildbots
- Investigating AArch64 broken bot
* Background (3/10)
- Code review, meetings, discussions, etc.
- Sprint planning
- Catching up on emails
- Servers purchase
- EuroLLVM paper reviews
== Plan ==
* Install new servers when they come
* Add the two new bots upstream
* Plan LLDB with Omair, contact Google
* Plan TSAN with Venkat
* Help Christophe investigate ASAN on AArch64
Holiday [3/10]
ABE benchmarking automation - TCWG-360 [3/10]
* Initial Jenkins implementation
Investigating cache effects on Juno - LDTS-1238 [2/10]
* One effect due to write streaming, others still to look at
Misc [2/10]
* Unpacking, some background catomics
Connect [10/10]
=Plan=
Carry on with Jenkins implementation
Run some benchmarks on catomics
Juno cache effects
Write up/think about where to go with libm exercising
ABE benchmarking automation - TCWG-360 [8/10]
* Pursued sneaky bugs through twisty mazes of bash
* Learned that ControlMaster does not play nice with my scripts
* Learned more about IPC pitfalls
* Cleaned up build behaviour of scripts somewhat
* Implemented support for benchmarking against sysroot (needed by Will
and by me)
* Generally tried to help Charles
* A bit of Jenkins testing
Misc [2/10]
* Featuring part 1 of an office move
=Plan=
Holiday Wednesday, 1/2 of Thursday
Part 2 of office move
Support benchmark users
Look more at cache effects on Juno
Get Jenkins working
Benchmark catomic patches (as much as I can without putting even more
pressure on the Junos)
Write up/think about where to go with libm exercising
Final preparation for Connect
The Linaro Toolchain Working Group (TCWG) is pleased to announce the 2015.02
stable release of the Linaro GCC 4.9 source package.
Linaro GCC 4.9 2015.02 is the eleventh Linaro GCC source package release in the
4.9 series. It is based on FSF GCC 4.9.3-pre+svn220525 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 engineering[2] releases.
Interesting changes in this GCC source package release include
* Backport of [AArch32] PR63676, exit tree fold when node be TREE_CLOBBER_P
* Backport of [AArch32] M0/M1 small multiply
* Backport of [AArch64] Fix unsafe access to deallocated stack
* Backport of Int div by constant compilation enhancement
* Backport of [AArch32] Fix PR target/64460: Set 'shift' attr properly on some patterns
* Backport of [AArch32] Fix typo in *<arith_shift_insn>_shiftsi
* Backport of [AArch64] Let LR register allocable
* Backport of Improve warning message for bitfields
* Backport of [AArch32] PR rtl-optimization/64011
* Backport of Fix checking on MAX_PENDING_LIST_LENGTH
* Backport of Remove VEC_LSHIFT_EXPR and vec_shl_optab
* Backport of [AArch64] Use new reduc_[us](min|max)_scal optabs, inc. for builtins
* Backport of [AArch64] Use new reduc_plus_scal optabs, inc. for __builtins
* Backport of Add new optabs for reducing vectors to scalars
* Backport of [Vectorizer] Make REDUC_xxx_EXPR tree codes produce a scalar result
* Backport of [AArch32] new cortex-m7 tune option
* Backport of [AArch32] cortex-m7 scheduling
* Backport of Improve Neon intrinsics testing
* Backport of [AArch32] [testsuite] gnu11 cleanup for aapcs testcases
Linaro GCC 4.8 2015.02 is the sixteenth release in the 4.8 series and is in
maintenance. Based off the latest GCC 4.8.4+svn220525 release, it includes
performance improvements and bug fixes.
The Linaro GCC 4.8 maintenance branch will be retired when Linaro GCC 5.1 is delivered.
Linaro GCC 4.9 will become the new maintenance release. Interesting changes in this GCC source
package release include:
* Updates to GCC 4.8.4+svn220525
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.
--
Michael Collison
Linaro Toolchain Working Group
michael.collison(a)linaro.org
== This week ==
* Linaro 4.8 and 4.9 Releases (9/10)
- Validated backports, followed release process and staged tarballs
for release
* Misc (1/10)
- Conference calls
== Next week ==
- Backports
- Work on bug fixes
* TSAN support for Aarch64 (3/10)
Working on memory map layout for TSAN in Aarch64 (TCWG-581) .
Experimenting switching on 64 bit allocator as default.
* Bug 869 - Analyzing tree dumps on how VECT_CONVERT_EXPR works (2/10)
* Emails, meetings. (3/10)
* Linaro remote hack sessions.
* internal AMD meetings/event, 1-1 with AMD manager, .
* GCC mailing list.
Leave on 10-Feb-2015 (2/10)
== Plan ==
* TSAN support for Aarch64 work on memory layout.
* Bug869
* Review/Watch connect slides.
== This week ==
* Created dummy release in preparation for February Linaro release (2/10)
* Backports (2/10)
- Backported 216220 and 217229
- Additional merge issues indicates another backport is required.
- I will abandon the backports for this release.
* Bug fixing (5/10)
- Bug 535 - Could not reproduce after triage.
- Bug 539 - Additional triage.
* Misc (1/10)
- Conference calls
== Next week ==
- Commit validated backports and create release
== Progress ==
* AArch64 ILP32 toolchain (5/10)
- Got SPEC2k results for LP64 and ILP32
* Committed patch for AArch64 -Bsymbolic ld issue (1/10)
* Other stuff (2/10)
- Working on handing over various projects
- Email, meetings, etc.
* Friday travelling to Connect (2/10)
== Issues ==
* Juno boards have been busy
== Plan ==
* Connect
--
Will Newton
Toolchain Working Group, Linaro
== Progress ==
* Automation Framework (CARD-1378 1/10)
- Restarting build-02
- Trying new way to setup juno-01, failed
- Moving gateway-config to new private git server
* Release 3.6 (CARD-1431 4/10)
- Found NEON regression, reverting patches
- Setting up more new NEON buildbots
* Libraries (CARD-1831 1/10)
- Opening discussion on libunwinder move, getting consensus
* Background (2/10)
- Code review, meetings, discussions, etc.
- FOSDEM 2015 (http://llvm.org/devmtg/2015-02/)
* Flying to Connect (2/10)
== Issues ==
After working on Sunday and all nights since, I'll be off tomorrow and
will get ready to Connect on Friday. Email/HO/IRC as usual.
== Plan ==
Connect
* TSAN support for Aarch64 (5/10)
Working on memory map layout for TSAN in Aarch64 (TCWG-581) .
* Emails, meetings. (3/10)
* 1-1 with maxim, linaro status call.
* internal AMD meetings, 1-1 with AMD manager.
* GCC mailing list.
Leave on 26-Jan-2014 (India Holiday) (2/10)
Planned Leave on 04-Feb-2014
== Plan ==
* TSAN support for Aarch64 work on memory layout.
== This week ==
* Backports (10/10)
- 216734 - Temporarily remove aarch64_gimple_fold_builtin code for
reduction operations
- 216736 - [Vectorizer] Make REDUC_xxx_EXPR tree codes produce a
scalar result
- 216737 - Add new optabs for reducing vectors to scalars
- 216738 - Use new reduc_plus_scal optabs, inc. for __builtins
- 216741 - Use new reduc_[us](min|max)_scal optabs, inc. for builtins
- 216742 - Restore gimple_folding of reduction intrinsics
- 216779 - Remove VEC_LSHIFT_EXPR and vec_shl_optab
- 217331 - Fix checking on MAX_PENDING_LIST_LENGTH
- 217430 - Fix typo in *<arith_shift_insn>_shiftsi
- 217431 - Let LR register allocable
- 217533 - Pair load store instructions using a generic scheduling
fusion pass
- 219717 - PR rtl-optimization/64011
- 219718 - Improve warning message
== Next week ==
- Prepare for release by creating "dummy" release
- Work on bug fixes
Hi,
We've noticed that in the 14.11 toolchain binary release that the .asc files
contain md5sums instead of PGP signatures. Would it be possible to either
switch these files to contain signatures or change the filename to indicate
that they contain md5sums?
I also noticed that an md5sum is missing:
http://releases.linaro.org/14.11/components/toolchain/binaries/armeb-linux-…
Finally, there appears to be some inconsistent usage of tuples in the download
directories. Would it be possible to use the same tuple for a particular
toolchain everywhere that tuple is used? For example, for the arm-none-eabi
toolchain, the directory is "arm-none-eabi", but the compiler tarball has only
"arm-eabi".
Thanks,
Chris
--
Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
== Progress ==
* Automation Framework (CARD-1378 1/10)
- Setting up new box
* Release 3.6 (CARD-1431 5/10)
- Looking for the patch that introduced a major NEON regression since December
* Background (4/10)
- Code review, meetings, discussions, etc.
- More Jira farming...
- Some EuroLLVM paper reviews
- LLVM/Android planning
== Plan ==
* Keep trying to find the bug in release 3.6
* Try to have some time to fix the NEON unwinder issue
* Preparing for Connect
== Issues ==
I cocked up the LLVM 3.6 ARM release last December when I
inadvertently ignored a bug report about clang not self-hosting on
NEON machines. To make matters worse, I was the one that decided to
move *all* our buildbots to non-NEON machines, expecting that the
test-suite on a Chromebook would catch all NEON problems.
There are limits to human intelligence, not human stupidity.
== Progress ==
* LLD (1/10, TCWG-561, TCWG-563, TCWG-570)
- Updated and added more cards, adding more detail and loose priorities
- Rebased, fixed up and resubmitted relocation test patch
* AArch64 ILP32 toolchain (4/10)
- Attempted various SPEC2k runs and fixed issues found
* Submitted patch for AArch64 -Bsymbolic ld issue (1/10)
* Connect slides (2/10)
* Other stuff (1/10)
- Email, meetings, etc.
* Tuesday looking after sick child
== Issues ==
* Juno access has been patchy
== Plan ==
* Get SPEC2k running ok on Juno and with ILP32
* Push remaining LLD patches
--
Will Newton
Toolchain Working Group, Linaro
Hello,
I have a question about the status of overo support in qemu-linaro vs upstream qemu; from a quick look on the Git commits for qemu-linaro, most things seemed to have been ported back upstream into qemu as of v2.0.0, although there does appear to be some recent new commits. However, I'm looking for overo board support, and although I see that OMAP3 chip support has been merged upstream, there aren't any board configuration files for overo. What would be the easiest way to get working qemu overo board support?
Additionally, I don't see any recent binary packages available for qemu-linaro. The qemu-linaro packages on the Ubuntu PPA haven't been built for almost a year now, and the releases.linaro.org page doesn't seem to have recent qemu-linaro builds either.
Thanks,
Dominic
* TSAN support for Aarch64 (5/10)
Up streamed make file changes for building non x86_targets (TCWG-579).
Working on memory map layout for TSAN in Aarch64 (TCWG-581) .
* Fix Bug 863(Linaro)/ 63949(FSF) (2/10).
Tested patches and fixed few aarch64 regressions.
got feedback that approach is good. planning to send a revised patch
for stage 1.
* Emails, meetings. (3/10)
* 1-1 with maxim,christophe,Ryan, linaro status call.
* internal AMD meetings, 1-1 with AMD manager.
* GCC mailing list.
Leave on 26-Jan-2014 (India Holiday)
== Plan ==
* TSAN support for Aarch64 work on memory layout.
* Send revised patch for Bug 863
== Progress ==
LLDB vs GDB investigation [TCWG-583] [4/10]
-- Scoring of previous patches and mailing list discussions
-- Tried and was able to build+test lldb on x86_64 linux
-- Tried and was able to build (but not test) lldb on arm linux
-- Tried lldb AArch64 build but couldnt get it going successfully.
Some gdb bug fixing and wrap up open gdb stuff [4/10]
Miscellaneous [2/10]
-- Meetings, Emails etc
-- Connect Preparation: Flights Confirmation, Visa pick up etc.
== Plan ==
Try fixing LLDB testsuite on arm and try out aarch64 build if possible.
ABE benchmarking automation - TCWG-360 [6/10]
* Fixed an awkward escaped process
* Struggled with LAVA timeouts & discovered that some Junos
accidentally have a baked-in timeout
* More discussion/thinking about where to store benchmark source
* Some trouble with intermittent flakiness when copying large chunks
of data over the lab network
Investigating cache effects on Juno - LDTS-1238 [2/10]
Misc - [2/10]
* Featuring catomics (TCWG-436) - implemented a few missing catomics
(well under 1/10)
=Plan=
Pack for office move
Fix intermittent copying problem
Look more at cache effects on Juno
Test Jenkins dispatch (Rob says it works now)
* Look into triggering coremark on every backport
Carry on, hopefully close, storage discussion
Benchmark catomic patches
Write up/think about where to go with libm exercising
== Progress ==
* Automation Framework (CARD-1378 2/10)
- Rebooting machines, again...
- Fiddling with bugzilla, wiki
* Release 3.6 (TCWG-575 5/10)
- Investigating ARMv7 bootstrapping failures
- Rebuilding manually with cmake, as autoconf build is bogus
- Turns out wasn't autoconf, but a NEON bug reported 14th Dec
- Benchmarking AArch64 3.6-RC1 against 3.5.1 - all good
* Background (3/10)
- Code review, meetings, discussions, etc.
- More Jira farming
- Investigating some weird llvm-objdump issues
- Fixing ninja output issue on bots with an ugly hack
== Plan ==
* Bisect NEON bug, revert the patch, back-port to 4.6 RC2
* Add a NEON+T2 full buildbot (dragonboard) to the list of public bots
* Benchmark ARMv7 3.6 RC1 or RC2 against 3.5.1
== Progress ==
* GCC trunk/4.9 monitoring (1/10)
* AArch64 sanitizers (3/10)
- patched LLVM to reduce the number of failures to 2 on Juno
- need access to a board with different memory layout to make sure
my patches actually support all configurations
* Neon intrinsics tests (2/10)
- committed most of the series
- addressed comments received on a few of them
- looked at error reported by vmax test: I needed to force AArch64
FPCR.DN=1 in the test, posted updated patch.
* Misc (4/10)
- meetings, conf-calls, emails, ...
== Next ==
* GCC trunk/4.9 monitoring
* AArch64 sanitizers
* abe: look at backport and tcwgweb scripts
== This week ==
* GCC modularization project
* Header flattening
- committed r220092, which addresses suggestions for expr.h flattening patch.
* Include reduction
- Analyzed cross referencers: ctags, rtags, crange.
- Analyzed python modules for C lexer: plex, ply.
- Wrote python script for include reduction.
- Wrote python script 'find-header-deps' for finding header
dependencies in files.
* Target macro removal
- Went through documentation and patches for target macro removal.
- Hookize ASM_OUTPUT_LABEL target macro.
* Bugs 413
- Started working on 413.
* Connect slides
- Started working on match-and-simplify presentation slides.
== Issues ==
- Sore throat and fever since Saturday.
- Terrible lag with NXClient on tcwg-env-03 (didn't happen before).
== Next Week ==
- Bug 413
- Continue working on include-reduction tool.
- Hookize ASM_OUTPUT_* target macros in defaults.h.
- Finish connect slides.
== Progress ==
* LLD (2/10, TCWG-561, TCWG-563, TCWG-570)
- Rebased patches and resolved conflicts
- Applied error handling patch
- Applied sh_addralign == 0 patch
- Submitted first of outstanding relocation test patches
* AArch64 ILP32 toolchain (4/10)
- Rebased and cleaned up ABE patches so they are more mergeable
- Spent a lot of time looking at building SPEC
* Connect slides (2/10)
* Other stuff (2/10)
- Email, meetings, etc.
== Issues ==
* None
== Plan ==
* Finish Connect slides
* Benchmark ILP32
* Push remaining LLD patches
--
Will Newton
Toolchain Working Group, Linaro
== Progress ==
LLDB vs GDB investigation [TCWG-583] [2/10]
Configuration of GDB AArch64 remote testing with juno. [1/10]
GDB AArch64/ARM/X86 native/remote testing and comparison result
compilation. [4/10]
Investigate some record-replay testsuite failures on d01. [2/10]
Miscellaneous [1/10]
-- Meetings, Emails etc
== Plan ==
More LLDB vs GDB investigation [TCWG-583]
More GDB AArch64 feature comparison
ABE benchmarking automation - TCWG-360 [5/10]
* Converted Juno runs from OE to Ubuntu
* Fixed cross-compilation in SPEC2000
* Picked up a couple of users, spent some time supporting them
* Discussion about storage
catomics - TCWG-436 [3/10]
* Took a remarkably long time to make the last few patches build
* Looked through the generated code
* Learned some of the ways of test-schroot
Misc - [2/10]
=Plan=
Support Charles' release benchmarking
Try Jenkins again, now that release has gone
Carry on, hopefully close, storage discussion
Benchmark catomic patches
Write up/think about where to go with libm exercising
== This week ==
* GCC Modularization Project (1/10)
- Flattening header files
- Reviewed expr.h patches and email discussion regarding post stage
3 development
* Bug Fixing (7/10)
- Bug 539 - .LTHUNK symbols are surviving
- Triage indicates bug is multiple inheritance related
- Investigated several legacy fixes on trunk that no longer apply
- Investigating possible fix in linker:
http://sourceware.org/ml/binutils/2012-06/msg00260.html
- Bug 535 - static cast from float to int not working on ARM hardfp
- Initial triage
* Backports (1/10)
- 217394- PR target/61997 - cc1plus ICE with aarch64 target using PCH
and builtin functions
* Misc (1/10)
- Conference calls
== Next week ==
- Work on backports and bug fixes
- Vacation January 22nd and 23rd.
== Progress ==
* Tuesday sick
* Automation Framework (CARD-1378 5/8)
- Fixing more crashed Junos
- Working on QEMU VMs on gateway (buildbot master, nagios)
- Finalising server purchase, building new rack
* Release 3.6 (TCWG-575 1/8)
- AArch64 built and tested, all green.
- ARM is broken, investigating...
* Background (2/8)
- Code review, meetings, discussions, etc.
- Jira farming
== Plan ==
* More Jira farming
* Setup the new server in the rack
* 3.6 benchmarking against 3.5
== Progress ==
* GCC trunk/4.9 monitoring (1/10)
- noticed a regression in the 4.9 branch
* AArch64 sanitizers (2/10)
- juno-01 back online, so I could rebuild & test llvm with asan tests enabled
- several failures reported, debugging...
* Neon intrinsics tests (1/10)
- pushed a series of patches, probably too late before stage 4.
* Backports (1/10)
- reviews
* Misc (5/10)
- meetings, conf-calls, emails, ....
- Connect preparation
== Next ==
* GCC trunk/4.9 monitoring
* AArch64 sanitizers
* Neon intrinsics tests
* cbuild2/abe: improve reporting, look at backport and tcwgweb scripts
The Linaro Toolchain Working Group (TCWG) is pleased to announce the 2015.01
engineering release of the Linaro GCC 4.9 source package.
Linaro GCC 4.9 2015.01 is the tenth Linaro GCC source package release in the
4.9 series. It is based on FSF GCC 4.9.3-pre+svn219502 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 engineering[2] releases.
Interesting changes in this GCC source package release include
* Linaro bugzilla PR fixed : #902
* Updates to GCC 4.9.3-pre+svn219502
* Backport of [AArch64] Support SISD variants of SCVTF,UCVTF
* Backport of [AArch64] Fix ICE in aarch64_float_const_representable_p
* Backport of [AArch64] Switch to sched-pressure by default.
* Backport of [AArch64] Add scheduler for ThunderX
* Backport of [AArch64] Remove crypto extension from default for cortex-a53,
cortex-a57
* Backport of [AArch64] doloop pattern for -fmodulo-sched
* Backport of [AArch32] Add execution tests of ARM REV intrinsics.
* Backport of [AArch32] Post-indexed addressing for NEON memory access
* Backport of [AArch32] Improve 64 bit division performance (serie)
* Backport of [AArch32] Revert 215321 backport.
* Backport of [AArch32/AArch64] Add ACLE 2.0 predefined macros
* Backport of PR tree-optimization/54742 - extend jump thread for finite state
automata
* Backport of PR target/61997 - cc1plus ICE with aarch64 target using PCH and
builtin functions
* Backport of PR target/63724 - Fix up BSL expander for floating point types
* Backport of [LRA] Relax one gcc_assert in lra-eliminate for fixed register
* Backport of Add clobber_reg function
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.
== Progress ==
* LLD (3/10, TCWG-561, TCWG-570)
- Re-spin and re-submitted error handling patch and dependencies
- Submitted a patch for crash with sh_addralign == 0
* AArch64 ILP32 toolchain (2/10)
- Got a native ILP32 toolchain building on a hackbox
- Got a working hacking session on Juno with help from Dave
- Just need to combine the two
* Other stuff (1/10)
- Email, meetings, etc.
* Holiday Thursday and Friday (4/10)
== Issues ==
* None
== Plan ==
* Run make check on ILP32 glibc
* Connect presentation
* Try and get outstanding LLD patches committed
--
Will Newton
Toolchain Working Group, Linaro
== Issues ==
* none.
== Progress ==
* Give compilation courses at University (5/10)
* GCC 4.9 2015.01 (4/10)
- Gave some support to Michael for his backports
- Performed mine.
* Misc: (1/10)
- meetings.
- mails
== Plan ==
* Linaro GCC 4,9 2015.01 release
ABE benchmarking automation - TCWG-360 [8/10]
* Added some sanity checks, fixed some bugs in LAVA URL handling
* Some struggling with Jenkins, with support from Rob
* Compress builds before scp-ing
* Resurrected SPEC, fixed some problems I'd forgotten about
Misc [2/10]
* Email catchup, start-of-year meetings
* Brief look at single-thread optimization in glibc (TCWG-436)
* Connect prep (including immunization boosters, I'm still a little woozy)
=Plan=
Test SPEC with present state of automation
Keep struggling with Jenkins
Address benchmark storage
Actually do something with TCWG-436
Write up/think about where to go next with libm exercising
== Progress ==
* TCWG-486 (4/10)
- Ready to start benchmarking
- Discussed with Bernie on new benchmarking set-up
- Waiting for Ryan on permission
* https://bugs.linaro.org/show_bug.cgi?id=412 (4/10)
- Created a reduced test-case and filed upstream bug
- looked at GCSE code and ifcvt code/dumps
* gcc bugzilla and gcc-patches list (2/10)
- Review patches
- Looked at arm related bugs
== Plan ==
TCWG-486 and TCWG-555
== This week ==
* GCC Modularization Project
- Worked on header-file flattening tool to make it usable for
flattening headers.
Used it to flatten expr.h.
- fixed build issue with ggc-compile.c due to tree.h flattening.
- committed Michael's tree.h flattening patch to FSF trunk (r219402).
- built r219402 on all targets in config-list.mk with languages: all, go
- upstreamed patch to fix visium build on FSF trunk which broke due to r219402.
- fixed plugin/ggcplug.c test-case which was failing due to r219402.
- sent expr.h flattening patch upstream for review.
== Next Week ==
* Commit expr.h flattening patch to FSF trunk.
* Commit cfgloop.h flattening patch to FSF trunk.
* Try to commit df.h flattening patch to FSF trunk.
== Progress ==
* Automation Framework (CARD-1378 2/10)
- DNS requests (Hetzner, bridge), new APM
- Following up on purchase of new server, new rack, UPS
* Buildbots (TCWG-76 4/10)
- Enabling swap on dragon boards (local bots)
- Investigating AArch64 RT failure, XFAIL like ARM
- AARch64 full bot (Clang+LLVM+RT) green! Getting ARM to make it public
- Installing QEMU VMs for different buildmasters
* Background (4/10)
- Code review, meetings, discussions, etc.
- Email back-log...
- FOSDEM organisation (accepting talks, fixing Penta cock-ups)
== Plan ==
* Increase check-all verbosity on bots
* Finish installing all buildmaster QEMU images
* Setup new rack
* Probably more release 3.5.1 testing (RC3), CMake bot testing
* Help Will and Christophe setting up their bots
== Backlog ==
* Fix libc++abi NEON/VFPv3 unwinder
* FPU parser (PR20787)
* .fpu in assembler (PR20757)
* -mpfu in driver (PR20700)
== Progress ==
* LLD (5/10, TCWG-561, TCWG-570)
- Re-spin and re-submitted error handling patch
- Implemented some more relocations and added tests
* AArch64 ILP32 toolchain (2/10)
- Investigated OE for building a native toolchain
- Started on hacking ABE to build a "cross on native" toolchain
- Switched to hackboxes as the performance is better than LAVA
* Released newlib and binutils 2015.01 releases and updated release
procedure (2/10)
* Other stuff (1/10)
- Email, meetings, etc.
- Pushed new strcpy to cortex-strings
== Issues ==
* None
== Plan ==
* Get ABE building a native ILP32 toolchain on LP64
* More LLD work
--
Will Newton
Toolchain Working Group, Linaro
== Progress ==
* Back from holiday
* Public holiday Thursday (2/10)
* TCWG-486 (4/10)
- Simplified existing patch
- Discussed with Zhenqiang
* TCWG-555 (4/10)
- propagate wrap/overflow information to ssa
== Plan ==
TCWG-486 and TCWG-555
== Progress ==
* Holiday Monday to Wednesday (6/10)
* Public holiday Thursday (2/10)
* Catch up on email (1/10)
* LLD for AArch64 (1/10, TCWG-563)
- Rebased, tidied up and submitted error handling patch
== Issues ==
* None
== Plan ==
* Figure out how to get a native ILP32 toolchain
* More LLD work
--
Will Newton
Toolchain Working Group, Linaro
== Progress ==
1 day week:
* Automation Framework (CARD-1378 1/2)
- Resetting APMs and Junos that fell during the holidays
* Release 3.5.1 (TCWG-477 1/2)
- Testing RC2, all good
== Plan ==
* improve buildbots (swap, verbose, libs)
* fix libc++abi NEON/VFPv3 unwinder
* purchase new builder, prepare lab for it
== This week ==
* GCC Modularization Project
- started working on flattening rtl.h
- submitted expr.h flattening patch upstream for review.
- worked with Michael on tree.h flattening patch.
== Next week ==
- investigate bug 905
- modify expr.h, cfgloop.h patches to avoid conflicts with Michael's
tree.h flattening patches and submit upstream.
== Progress ==
* 2015.01 release
- reviewed Yvan's backports
* GCC trunk/4.9 monitoring (2/10)
- still tracking cause of random "interrupted system call" errors
* AArch64 sanitizers (1/10)
- LLVM+compiler-rt build seems OK, but still unable to run the tests on Juno
* Neon intrinsics tests (3/10)
- continued conversion to GCC testsuite
- fixed checks for Neon QC flags
- patch reviews
* Misc (4/10)
- meetings, conf-calls, emails, ....
== Next ==
* GCC trunk/4.9 monitoring
* AArch64 sanitizers
* Neon intrinsics tests
* cbuild2/abe: look at backport and tcwgweb
On holiday until January 5h
ABE benchmarking automation - TCWG-360 [6/10]
* TCWG/LAVA lab interactions working with just a couple hacks
* Jenkins job created (thanks Rob) and beginning to work
Misc - [4/10]
* Included a quick look at Will's single-thread performance patches -
unfortunately, no time to actually do anything with them
=Plan=
Benchmarking storage/automation
Look though Will's single-thread performance patches
Switch to TCWG Junos
Write up/think about where to go next with libm exercising
Test benchmark repeatability
=Absences=
On holiday Monday 22nd Dec to Friday 2nd Jan
== Progress ==
* Friday off
* Automation Framework (CARD-1378 2/8)
- Writing up best practices, lab structure, etc
- Removing port forwards, private keys from the lab
- IT ticket to remove tcwg-sysadmin from public git
* Toolchain (CARD-862 1/8)
- Fixed compiler-rt problem on AArch64 build
- Fixing libcxxabi problem on ARM unwind
* Release 3.5.1 (TCWG-477 1/8)
- Finished RC1 testing on ARM and AArch64
* Buildbots (TCWG-76 2/8)
- Found commit that broke lnt bot, green again
- Setting up internal bots (4 ARM, 1 ARM64)
* Background (2/8)
- Code review, meetings, discussions, etc.
== Plan ==
* Continue 3.5.1 release (RC2, etc)
* Fix a few remaining problems with Compiler-RT / libc++abi
Holiday until January...
== Progress ==
* Holiday Thursday and Friday (4/10)
* LLD for AArch64 (2/10, TCWG-563)
- Completed patch to improve relocation range checking
- llvm mailing lists down so no reviews happening
* ILP32 work (3/10)
- Several test builds on Juno, still cannot get a working native toolchain
* Email, meetings, other stuff (1/10)
== Issues ==
* Cable power level issue causing broadband problems
== Plan ==
* On holiday until in January, but I will check email periodically
--
Will Newton
Toolchain Working Group, Linaro
== Progress ==
QEMU kernel debugging setup [3/10] [TCWG-568]
-- Finally figured out the steps to debug kernel with ARM cortex A9 core.
Kernel debugging to investigate limitation of ARM watchpoint
implementation [2/10] [TCWG-569]
-- Debug kernel code with gdb to investigate problems.
Miscellaneous [1/10]
-- Meetings, Emails etc
-- Wiki updates
Sick Leave [4/10]
== Plan ==
QEMU kernel debugging setup [TCWG-568]
-- Figure out steps to debug kernel with ARM cortex A15 core.
More Kernel debugging to investigate limitation of ARM watchpoint
implementation [TCWG-569]
-- Get A15 core running on QEMU and debug kernel hw debug
implementation on both A9 and A15.
Updates to GDB wiki pages with kernel debugging howto.
I've completed renaming Cbuildv2 to Abe, as well as modifying all the
board files for remote testing to match what the new DNS server is
using. Please stop using the existing cbuild2 repository, as all changes
are now done in the new repository. I'll leave the old repository for a
while, I know there are branches there people depend on. For those, I'm
sorry for the pain (having just gone through that myself), but please
migrate any important branches to the new repository. URLs for that are
here:
https://git.linaro.org/toolchain/abe.git
- rob -
ABE benchmarking - TCWG-360 [7/10]
* Finished post-move LAVA lab workarounds
* Should be flexible enough for TCWG lab too, but we'll see
* Refactored sources - now more robust and maintainable
lowlevellock.h comments - CARD-341 [1/10]
* A further round of changes, got an OK
Raised a bug on GCC re questionable generation of pow calls - TCWG-558 [0/10]
* Upstream fixed it really fast
Misc - [2/10]
=Plan=
Switch to TCWG Junos, perhaps start using gprof
Think about where to go next with libm exercising
Look though Will's single-thread performance patches
Test benchmark repeatability
Port benchmarking scripts to ABE repo
Start on storage/automation, if Rob has time
=Absences=
On holiday Monday 22nd Dec to Friday 2nd Jan
== Issues ==
* none.
== Progress ==
* GCC 4.9 2014.12 (2/10)
- Released
* Bugzilla #902 (ICE in split_reg on armeb-linux-gnueabihf) (6/10)
- reduced test case
- identified the commit that introduced the bug
- identified the trunk revision that fixed it which is
not backportable on our branch as it
* Misc: (2/10)
- Revisions management script
- Various meetings.
== Plan ==
* Bugzilla #902
* List the backports needed for 2015.01
* Libunwind
== This week ==
* GCC Modularization Project (9/10)
- Flattening header files
- Submitted tree-core.h, and tree.h patches for review
- Successfully tested on platforms listed in config-list.mk
- Reviewed and tested patches from Prathamesh
* Misc (1/10)
- Conference calls
== Next week ==
- Work on backports and bug fixes
= Progress ==
* TSAN support for Aarch64 (6/10)
Working on writing Aarch64 specific "internal_clone" function.
* Emails, linaro/AMD status meetings. (4/10)
1-1 with maxim, Christophe.
== Plan ==
* TSAN support for Aarch64.
* Fix Linaro Bug 863
AMD internal event on 18th (full day)
== Progress ==
* Compiler-pass to widen computation to back-end promoted mode (2/10)
- Looking at generated code with benchmarks
- some benchmark analysis with coremark
* https://cards.linaro.org/browse/TCWG-486 (3/10)
- Reviewed Zhenqiang's and Dmitry's patches and experimented
- I have at lease one case which is not working with Zhenqiang's patch
* MISC (1/10)
- Scanned gcc-patches and bug database
* Holiday (4/10)
== Planned Leave ==
* 11/12/2014 to 24/12/2014
== This week ==
* GCC Modularization project:
- Completed flattening df.h.
- Completed testing cfgloop.h on all targets in config-list.mk
- Completed flattening expr.h.
== Next week ==
- Modify df.h flattening patches based on Michael's review.
- Start working on flattening rtl.h.
== Progress ==
* Automation Framework (CARD-1378 5/10)
- Getting around fastboot issues on Dragon
- Upgrading Dragons to 3.17 / utopic
- Testing stability of Dragon boards once again
- Writing best practices, and lab setup documents
- Liaising with ST and Qualcomm to stress their boards
* Buildbots (TCWG-76 2/10)
- Investigating AArch64 compiler-rt issue
- Bisecting test-suite bot failure
* Release 3.5.1 (TCWG-477 1/10)
- Running validation on ARM and AArch64
* Background (2/10)
- Code review, meetings, discussions, etc.
- Helping Christophe and Will with LLVM stuff
== Plan ==
- Finish 3.5.1 validation
- Continue investigating test-suite failure
- Follow up on AArch64 compiler-rt issue
- Lab stuff for sure...
== Progress ==
* Off sick Monday (2/10)
* LLD for AArch64 (4/10, TCWG-563)
- Commited a few patches for reloc tests
- Working on a patch to improve relocation range checking
* ILP32 work (3/10)
- Merged gettext 0.19.3 into glibc. This should fix build failures
with bison 3.x
- Various test builds on Juno
* Email, meetings, reading docs etc. (1/10)
== Issues ==
* None
== Plan ==
* Submit LLD relocation range checking patch
* Tidy up loose ends from gettext merge
* Figure out why native ILP32 toolchain build fails
--
Will Newton
Toolchain Working Group, Linaro
== Progress ==
* GCC trunk/4.9 monitoring (1/10)
- still tracking cause of random "interrupted system call" errors
- flagged a few wrong new Neon testcases
* AArch64 sanitizers (1/10)
- documented build process (based on configure) works on aarch64,
but still unable to run the sanitizer tests
- using supposedly up-to-date but undocumented build process (cmake)
fails when configuring sanitizers libs
- started discussion with upstream, no progress yet
* Neon intrinsics tests (3/10)
- continued conversion to GCC testsuite
- checks for Neon QC flags need fixing
* Misc (5/10)
-meetings, conf-calls, emails, ....
== Next ==
* GCC trunk/4.9 monitoring
* AArch64 sanitizers
* Neon intrinsics tests
* cbuild2/abe: look at backport and tcwgweb
The Linaro Toolchain Working Group (TCWG) is pleased to announce the 2014.12
release of the Linaro GCC 4.9 source package.
Linaro GCC 4.9 2014.12 is the ninth Linaro GCC source package release. It is
based on FSF GCC 4.9.3-pre+svn218412 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.3-pre+svn218412
* Backport of [AArch64] arm_neon.h - add vpaddd_f64, vpaddd_s64,
vpaddd_u64 intrinsics
* Backport of [AArch64] Move some code around in aarch64_expand_mov_immediate
* Backport of [AArch64] Improve codegen of vector compares inc. tst instruction
* Backport of [AArch64] Remove vector compare/tst __builtins
* Backport of [AArch64] Add execution tests of vget_low and vget_high
* Backport of [AArch64] Replace temporary inline assembler for vget_high
* Backport of [AArch64] PR 61749: Do not ICE in lane intrinsics when
passed non-constant lane number
* Backport of [AArch32] Disable xordi3-opt.c/iordi3-opt.c on thumb1 target
* Backport of [AArch64] Fix scan-assembler test false alarm on aarch64-linux-gnu
* Backport of [AArch64] Add test of vld[234]q? intrinsic
* Backport of [AArch64] Extend test of vld1+vst1 intrinsics to cover
more variants
* Backport of [AArch64] Add a test of vldN_dup intrinsics
* Backport of [AArch64] Add a test of the vldN_lane intrinsic
* Backport of [AArch64] Add a test of the vst[234](q?) intrinics
* Backport of [AArch64] Add execution test of vset(q?)_lane intrinsics.
* Backport of [AArch64] Add cost handling of CALLER_SAVE_REGS and POINTER_REGS
* Backport of [AArch64] Fix cost for Q register moves
* Backport of [AArch64] Add regmove_costs for Cortex-A57 and A53
* Backport of [AArch64] Add aarch64 to list of targets that support gold
* Backport of [testsuite] whole_vector_shift
* Backport of [testsuite] vect-reduc-or
* Backport of [testsuite] Fix race in libstdc++ testsuite
* Backport of [testsuite] update testcases for GNU11
* Backport of [testsuite] fix gcc-dg-prune glitch when filtering
"relocation truncation" error
* Backport of [testsuite] Update testcases for GNU11
* Backport of [testsuite] fix wrap_compile_flags
* Backport of Increase PARAM_MAX_COMPLETELY_PEELED_INSNS when branch is costly
* Backport of Add -mthunderx option
* Backport of Accept cortex-m7/fpv5-sp-16/fpv5-d16
* Backport of Remove unused variable and marco
* Backport of Target Legitimize Address
* Backport of Hookize and remove *_BY_PIECES_P
* Backport of Remove no-longer-needed fp-bit target macros.
* Backport of Fix CLZ_DEFINED_VALUE_AT_ZERO for vector modes
* Backport of ifcvt: Allow CC mode if HAVE_cbranchcc4
* Backport of Fix predicate and constraint mismatch in logical atomic operations
* Backport of Migrate to new reduc_plus_scal_optab
* Backport of Migrate to new reduc_[us](min|max)_scal_optab
* Backport of Change CORE_REGS in GENERAL_REGS
* Backport of Fix IRA ICE tmpdir-gcc-.dg-struct-layout-1/t028
* Backport of Fix IRA ICE tmpdir-gcc-.dg-struct-layout-1/t028 -addon
* Backport of PR target/63937 fix 216996
* Backport of PR rtl-optimization/63210 IRA
* Backport of PR 63173 fix vldX_dup
* Backport of PR 63442 libgcc_cmp_return_mode not always return word_mode
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.