All,
During Connect the suggestion was made that each working group should have
its own IRC Channel for discussions and topics relating to the group in
particular (as opposed to #linaro which is 'generic' Linaro conversations).
Therefore I have just set up #linaro-tcwg on Freenode for the Toolchain
Working Group.
This channel is public and open to anyone who wants to talk with the TCWG
group about anything toolchain related.
Thanks,
Matt
--
Matthew Gretton-Dann
Toolchain Working Group, Linaro
== Progress ==
- Very short work week. I was on leave last Wednesday and Thursday (27th
and 28th).
- Posted patch for gc-section tests for TLS and got related relocs.
- Discussing with Marcus on patch I wrote for gc section tests on PLT
related relocs.
== Plan ==
- Post patch for gc section tests for PLT relocs.
- Complete gc section tests for other generic cases.
- Understand and evaluate gprof support work for Aarch64
== Progress ==
working on http://cards.linaro.org/browse/TCWG-14
- All but 2 test cases are passing and extension elimination for the
simple cases are eliminated
- one of the test failure was due to bug with value range propagation
pass. Have to investigate this further.
- In one instance even though extensions are removed, 1 more instruction
is generated (for crc) - Need to investigate it
- Got the chromebook and Set up Ubuntu; boot strapping gcc now
== Plan ==
- Start with the benchmarking
- investigate the performance and VRP issue
- Also start with http://cards.linaro.org/browse/TCWG-13 in parallel
== Issues ==
* None
== Progress ==
* Libunwind AArch64 support:
- Most of the testsuite is now fine
- but some fixes still needed before upstream submission.
== Plan ==
* Libunwind AArch64 support:
- Fix and submit upstream.
== Progress ==
* Disable-peeling:
- benchmarked locally on snowball. Observed a few regressions in spec2k.
To be analyzed and confirmed with the results from cbuild.
- patched cbuild to work-around a bzr bug which prevented these jobs
from being spawned.
* Libsanitizer: sent patch upstream.
Discussion about interactions with qemu.
* Revert-coalesce: spawned thought-to-be reference jobs for benchmarking.
* Neon intrinsics codegen:
- First analysis of sample codecs seems to indicate that gcc
generates sequences of interdependent instructions where rvct manages
to insert some code in between.
- To be confirmed by dedicated benchmarking, probably in bare-machine mode.
* Neon intrinsics testsuite:
- Added support for polynomial variants (*_p8, *_p16)
- Identified wrong code generated by gcc-linaro-4.7; did not check with trunk.
- Transforming into a dejagnu forms will probably be a lot of work :-(
* Internal activities
== Next ==
* Disable-peeling:
- analyze bench results from cbuild when available
- compare with the results from my snowball
* Libsanitizer:
- resume investigation about isatty problem when ran under qemu.
* Turnoff 64bits ops In Neon:
- backport in linaro-4.8 once the process has been clarified.
* Revert-coalesce:
- check bench results
* Neon intrinsics codegen:
- perform dedicated benchmarking
== Progress ==
* Booked flight for LCE.
* Benchmarked and ran tests on new memcpy implementation.
* Attempted but failed to get new memcpy tested on big endian (still todo).
* Committed new memcpy implementation to cortex strings.
* Passed new memcpy to Android team for bionic.
* Submitted newlib patch for new memcpy.
* Committed binutils ld-elfvsb testsuite fixes, native testsuite now green!
* Further investigation of IFUNC in glibc.
== Issues ==
* Pandaboard ES still a bit flakey, Chromebook hopefully on its way to
replace it.
== Plan ==
* Iron out issues with native binutils make check in cbuild/LAVA.
* Get newlib memcpy patch committed.
* Investigate testing memcpy on big endian (qemu user, models?).
* IFUNC...
--
Will Newton
Toolchain Working Group, Linaro
Progress:
* qemu maintenance
** https://ci.linaro.org/jenkins/job/qemu-ltp/ now shows graphs
of LTP test results for linux-user mode
** rebased qemu-linaro and got it working again (omap3 display
code needed rework after upstream changes)
** investigated why Christoffer Dall's kernels weren't booting:
turns out to be that vexpress now requires CONFIG_REGULATOR
but doesn't force it to be set or set it in the vexpress_defconfig
** rebased/resent/pinged various in-flight patches
* VIRT-4 [Guest migration support for KVM]
** VIRT-49: implement cp15 sync with kernel
*** located my work on this from last year, refreshed my
memory on how far I'd got and what I was planning to do
-- PMM
== Progress ==
* Re-installed the panda buildbot, using USB drive as bot dir
* Reviewing lots of ARM patches (more than usual)
* Trying Arndale again, some errors, some passes, cooler might be
responsible
- Got one internal error, one build error and one pass with Ubuntu kernel
+ patch
- Trying Suse image:
- It has a broken serial driver (makes things much harder)
- sshd does not start by default (in conjunction with serial bug, it's a
killer)
- Now running on a precarious mode, hopefully enough for our needs
* sqlite3 error due to VMUL.f64 while on x86_64 "long double" is f128
- sqlite3 is the best example on what NEVER to do with floating point
values >:|
- Sent patch, working around TILE-Gx issues
== Issues ==
* Still a bit ill, productivity reduced
* Not having a wired network on my desk wastes a LOT of my time
== Plan ==
* Push the sqlite3 patch though
* Continue fixing the 4 remaining broken tests
* Continue with Arndale investigation with Christophe and Zhenqiang
Hi folks,
I'm trying again the bootstrap of GCC on Arndale and it goes pretty well
until it has to install libgcc that it just compiled.
When I build first time, I get an error while installing libgcc:
make[4]: Entering directory
`/home/linaro/devel/gcc/build/objs/armv7l-unknown-linux-gnueabihf/libgcc'
/bin/bash /home/linaro/devel/gcc/src/libgcc/../mkinstalldirs ../.././gcc
(...)
/bin/bash /home/linaro/devel/gcc/src/libgcc/../mkinstalldirs ../.././gcc;
/usr/bin/install -c -m 644 ./libgcc_s.so.1 ../.././gcc/libgcc_s.so.1; rm -f
../.././gcc/libgcc_s.so; /usr/bin/install -c -m 644 ./libgcc_s.so
../.././gcc/libgcc_s.so
Live child 0x01dec548 (install-shared) PID 4405
Reaping losing child 0x01dec548 PID 4405
make[4]: *** [install-shared] Error 1
Though, if I run that command by hand, it works...
I then re-ran make and the first point there is an error is on gmp:
This program built for arm-unknown-linux-gnueabihf
Reading makefiles...
Reading makefile `Makefile'...
Reaping losing child 0x01866320 PID 4784
make[3]: *** [config.h] Error 1
Removing child 0x01866320 PID 4784 from chain.
make[3]: Leaving directory `/home/linaro/devel/gcc/build/objs/gmp'
Need a job token; we have children
Duplicate the job FD
Live child 0x00ae17f8 (all-stage1-libiberty) PID 4755
Live child 0x00be3508 (all-stage1-gmp) PID 4736
Reaping losing child 0x00be3508 PID 4736
make[2]: *** [all-stage1-gmp] Error 2
Removing child 0x00be3508 PID 4736 from chain.
Released token for child 0x00be3508 (all-stage1-gmp).
make[2]: *** Waiting for unfinished jobs....
Live child 0x00ae17f8 (all-stage1-libiberty) PID 4755
I can't notice anything wrong on gmp (all objects are there), other than a
number of symlinks to a missing directory:
gmp-mparam.h -> /home/linaro/devel/gcc/src/gmp/mpn/generic/gmp-mparam.h
the directory "generic" doesn't exist, and lots of files in "mpn" also
point there. Could be a red herring, though.
Any ideas?
cheers,
--renato
PS: this doesn't look like an Arndale specific bug, so we might still be
able to use them for GCC bootstrapping...