(This is a combined report having realized that I didn't manage to
send this out on Monday because of some power issues).
== GCC ==
== Progress ==
* Cleared out some backlog of backports from mainline.
* Investigating some of the BRANCH_COST results.
* Small patches to fix VFP constraints being tested and fixed on trunk
upstream.
* Upstream bugzilla triaging.
* Upstream bugzilla triaging.
* Looked at Neon 64 bit arithmetic and sent out report.
* Reviewed the unaligned access patch and the EPILOGUE_USES regression
with coremark.
* Issues with my panda board means my benchmark runs aren't happening.
Need to urgently find a way of running them. The panda board dies
mysteriously once a while. Playing around with the kernel to get
something going . Will look at it again next week.
* Merged neon shift immediates patch into linaro-4.6 but needs some rework.
* Merged the fix for LP744754 into linaro 4.5 and 4.6
== Plans ==
* Back on to BRANCH_COST .
* Resubmit neon shift immediates patch for merging.
* Look at some of the perf regressions between a8 and A9.
* Get a working panda board again. !
* Backport arith_shiftsi patch to 4.6 branch upstream.
Meetings:
* 1-1s
* TCWG calls.
== This week ==
* More on the address-of-main() bug. The original patch caused
regressions on x86_64, so I submitted a different approach,
which has now been applied upstream.
* Worked on the libnih bug. It turned out to be a problem in the
libc start routine.
* A bit of patch review.
* More on auto inc/dec.
== Next week ==
* General bug-fixing.
* More auto inc/dec.
Richard
== 64 bit atomics ==
* Submitted patches to gcc patch list
- One comment back already asking if we should really change ARM
to have a VDSO to make checks of the user helper version easier
* Added thumb ldrexd/strexd to valgrind; patch added to bug in their
bugtracker (KDE bug 266035)
* Came to the conclusion eglibc doesn't actually need any changes
- It's got a place holder for a 64bit routine, but it's unused and
isn't exposed to the libc users
- Note that neither eglibc or glibc built cleanly from the trunk on ARM.
* Started digging into QEmu a bit more to find out how to solve the
helper problem
== String routines ==
* Added SPEC2k6 string routine results to my charts; while most
stuff is in the noise it seems
the bionic routine is a bit slower overall than everything else, and
my absolutely trivially simple
~5 instruction loop is a tie for the fastest with my smarter 4
byte/loop using uadd.
== Next week ==
* Sleep, Rest, Relaxation, getting older
* (Will be polling email for any more follow ups on my gcc patches)
Dave
RAG:
Red:
Amber:
Green:
Current Milestones:
|| || Planned || Estimate || Actual ||
||qemu-linaro-2011-07 || 2011-07-21 || 2011-07-21 || ||
Historical Milestones:
(q1 milestones deleted)
||qemu-linaro 2011-04 || 2011-04-21 || 2011-04-21 || 2011-04-21 ||
||qemu-linaro 2011-05 || 2011-05-19 || 2011-05-19 || n/a ||
||close out 1105 blueprints || 2011-05-28 || 2011-05-28 || 2011-05-19 ||
||complete 1111 planning || 2011-05-28 || 2011-05-28 || 2011-05-27 ||
||qemu-linaro-2011-06 || 2011-06-16 || 2011-06-16 || 2011-06-16 ||
== upstream-omap3-patches
* analysed omap3 patchstack and identified some initial parts to pull out
* extracted and submitted upstream a 3-patch set to qdevify omap gpio
* disentangled a cluster of patches for fixing and qdevifying NAND,
ONENAND and the OMAP GPMC model; started on the cleanup process
* spotted and fixed a bug where n810 segfaults if a key is pressed
(this was already fixed in qemu-linaro but not very cleanly)
== other ==
* submitted patch for proper implementation of prlimit64 syscall
for qemu usermode
* sent a patch to fix the final gcc 4.6 write-only-variable warning
* patch review, etc
Current qemu patch status is tracked here:
https://wiki.linaro.org/PeterMaydell/QemuPatchStatus
Absences:
1-5 August: Linaro sprint 1111
(maybe) 15-16 August: QEMU/KVM strand at LinuxCon NA, Vancouver
[LinuxCon proper follows on 17-19th]
* Got introduced to most of the team members - great!
* My manager fixed a linaro laptop for med which I have installed with
Natty. (This is very good since I cannot run as root on my STEricsson
laptop. There are also other security restrictions that makes it very hard
to work in Linaro.)
* Started working a little bit with the Snowball board. I have managed to
flash it using the "riff" tool.
* Read through the material about SPEC2000.
* I have borrowed a Panda board that I can use for the next two weeks. A
question that popped up is how to get one from Linaro?
* I will be on vacation 18th July - 15 August
Best regards
Åsa
It all started with this:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/791552
basically, switching toolchain from 4.5 to 4.6, somehow broke usb on omap3.
This morning i tested with linux-linaro-natty:
[flag@newluxor linux-linaro-natty]$ git log --oneline -1
f15fd8f LINARO: Linux-linaro-2.6.38-1002.3
and i can reproduce the problem there too.
Here is some more info (dmesg, toolchain, lsusb, etcetc):
http://pastebin.ubuntu.com/620786/
--
bye,
p.
Hi,
- support of multiple uses of original pattern statements (needed for
over-promotion work) - committed upstream
- support of widen-mult of unsigned types and constants - merged to
gcc-linaro-4.6
- vectorizer peeling heuristic improvement - proposed to merge to gcc-linaro-4.6
Ira
Here's an implementation of an 8x8 integer DCT done with NEON
intrinsics -- essentially a translation of the assembly version in
libjpeg-turbo trunk:
https://github.com/mkedwards/crosstool-ng/blob/master/patches/libjpeg-turbo…
It is in a compilable (on Linaro 2011.05 GCC 4.5, anyway; a recent
Linaro 4.6 snapshot ICEs) but otherwise untested state. Still, it's
interesting to compare the assembly that it generates against the
hand-written version. I thought I'd give linaro-toolchain a heads-up
in case y'all could use a test case that generates plenty of pressure
on the VFP/NEON register bank. (I intend to use it to see how much
performance difference there really is, on the A8 and A9, between NEON
code compiled for 16 vs. 32 registers.)
Cheers,
- Michael