==Progress===
* Backported one part of the partial-partial PRE patch . Still looking into it.
* Investigate PR48308 - a bug where combine was generating incorrect
transformations.
* Reopened PR50313 - a bug which I originally thought was a dup of PR48308.
* Looked at upstream bugzilla for sometime and triaged a few bugs.
* Linaro patch review.
=== Plans ===
* Continue looking at partial-partial PRE and try and understand it further.
* Look at PR50313 further
* Upstream patch review.
* Finish submitting PGO patch and ABI tests patch
* Look at Andrew's patches for neon shifts -
Absences.
* Feb 6-10 : Linaro Connect Q1.12.
* Feb 13- 18 : Holiday.
==Progress===
* Short week - 4 days only after the bank holiday monday.
* Investigated PR48308 for a bit.
* Caught up with emails after vacation.
* Looked at fate an automatic tester for libav to validate my fixed
to fp conversions . Need to finish that off.
* 1 more bug with output_move_double ICE looked at briefly. Appears
to be memory corruption but valgrinding didn't find the issue.
Prioritizing PR48308 above this.
=== Plans ===
* Look at PR48308 a bit more seriously.
* Finish my long standing patches.
Absences.
* Feb 6-10 : Linaro Connect Q1.12.
* Feb 13- 18 : Holiday.
Amber noticed this on her Twitter feed: a L4 microkernel based
para-virtualisation that runs on the A9:
http://l4dev.org/
They're currently running the 11.12 LEB on a Versatile Express. The
project overview:
http://l4dev.org/codezero_overview
talks about their 'hyperswitch' method to reduce the
para-virtualisation overhead and reduce the number of changes to the
Linux kernel.
-- Michael
The GCC release tested up just fine. The branch is now open for commits.
The next release is Thursday the 9th of February. Note that this is
in the middle of Connect.
-- Michael
The Linaro Toolchain Working Group is pleased to announce the 2012.01
release of Linaro GCC 4.6 and Linaro GCC 4.5.
No changes were made in Linaro GDB this month and, as such, no release
has been made.
Linaro GCC 4.6 2012.01 is the eleventh release in the 4.6 series.
Based off the latest GCC 4.6.2+svn182894 release, it contains a few
bug fixes from over the Christmas break.
Interesting changes include:
* Updates to 4.6.2+svn182894
Fixes:
* PR51301 ICE in vectorised widening multiplies
* LP: #897583 Code generation bug with -O2 (-foptimize-sibling-calls)
* LP: #736661 armel FTBFS due to compiler ICE
Linaro GCC 4.5 2012.01 is the seventeenth release in the 4.5 series.
Interesting changes include:
* Updates to 4.5.3+svn182893
Fixes:
* LP: #736661 armel FTBFS due to compiler ICE
The source tarballs are available from:
https://launchpad.net/gcc-linaro/+milestone/4.6-2012.01https://launchpad.net/gcc-linaro/+milestone/4.5-2012.01
Downloads are available from the Linaro GCC page on Launchpad:
https://launchpad.net/gcc-linaro
More information on the features and issues are available from the
release page:
https://launchpad.net/gcc-linaro/4.6/4.6-2012.01https://launchpad.net/gcc-linaro/4.5/4.5-2012.01
Mailing list: http://lists.linaro.org/mailman/listinfo/linaro-toolchain
Bugs: https://bugs.launchpad.net/gcc-linaro/
Questions? https://ask.linaro.org/
Interested in commercial support? inquire at support(a)linaro.org
-- Michael
The Linaro Toolchain Working Group is pleased to announce the
release of Linaro QEMU 2012.01.
Linaro QEMU 2012.01 is the latest monthly release of
qemu-linaro. Based off upstream (trunk) QEMU, it includes a
number of ARM-focused bug fixes and enhancements.
New in this month's release:
- Several bug fixes which reinstate support for running on ARM hosts
- Support for previously missing *xattr syscalls in usermode emulation
- A (dummy) model of the L2x0/PL310 L2 cache contrnoller (thanks to
Rob Herring and Mark Langsdorf of Calxeda)
Known issues:
- Graphics do not work for OMAP3 based models (beagle, overo)
with 11.10 Linaro images.
The source tarball is available at:
https://launchpad.net/qemu-linaro/+milestone/2012.01
More information on Linaro QEMU is available at:
https://launchpad.net/qemu-linaro
Hi Åsa. Well, the first proposals have arrived. I've cc'ed this to
linaro-toolchain so we have a record.
First, visit:
http://ex.seabright.co.nz/helpers/proposals
and see there are new merge requests from Ulrich with new results.
Next, login:
http://ex.seabright.co.nz/helpers/login
Your login is your Launchpad OpenID login "https://launchpad.net/~asa-sandahl"
After logging in, go back to the proposals page.
See that the fwprop-subreg merge request has a i686 and x86_64 result.
The i686 one is fine so click 'Record' and follow your nose. The
x86_64 is interesting - the fault might be real. Click 'Record'.
Note the subject line has 'regressed' in it. Ulrich will have to
investigate.
The lp-879725 results look fine so record both of those. Scanning
down the page shows that everything else is recorded so you're done!
The tool is a bit slow so don't be surprised if an operation takes ~10
s. The tool is backed by a cache so you won't see the results for ~2
hours.
-- Michael
Hi Michael,
I can't remember if I told you before, but I shall be away at the
CodeSourcery (Ok, Mentor Graphics's ESD TOOLS) annual meeting most of
next week.
I ought to be back at work on Friday. In the meantime I shall be reading
email, but not spending much time on Linaro work.
I can probably still get the GCC release process done, but if you'd
prefer Ramana did it this month then that's fine with me.
Andrew
Hi there. Linaro is about what's next and, as part of this, we should
backport any reasonable Cortex-A15 changes to our 4.6 branch.
Richard and Matthew, could you let us know directly when new patches
from ARM land upstream?
We're already doing this but I thought I'd say it out loud.
-- Michael
Hello,
I'm trying to build the Linaro GCC from source on an x86_64 Fedora 16 box.
I'm using as a guide a wiki entry I found in linaro.org site [1] that
explains how to build a native version of the compiler. But instead of a
native version I want to be able to cross-compile ARM binaries for my
target machine.
This is what I tried:
[javier@munra src]$ wget -c
http://launchpadlibrarian.net/86993387/gcc-linaro-4.6-2011.12.tar.bz2
[javier@munra src]$ tar xaf gcc-linaro-4.6-2011.12.tar.bz2
[javier@munra src]$ mkdir build && cd build
[javier@munra build]$ ../gcc-linaro-4.6-2011.12/configure
--target=arm-linux --disable-bootstrap --enable-languages=c
--prefix=/home/javier/tools
[javier@munra build]$ make -j4 && make install
But got this error:
make[2]: Leaving directory `/home/javier/src/build/gcc'
Checking multilib configuration for libgcc...
mkdir -p -- arm-linux/libgcc
Configuring in arm-linux/libgcc
configure: creating cache ./config.cache
checking for --enable-version-specific-runtime-libs... no
checking for a BSD-compatible install... /usr/bin/install -c
checking for gawk... gawk
checking build system type... x86_64-unknown-linux-gnu
checking host system type... arm-unknown-linux-gnu
checking for arm-linux-ar... arm-linux-ar
checking for arm-linux-lipo... arm-linux-lipo
checking for arm-linux-nm... /home/javier/src/build/./gcc/nm
checking for arm-linux-ranlib... arm-linux-ranlib
checking for arm-linux-strip... arm-linux-strip
checking whether ln -s works... yes
checking for arm-linux-gcc... /home/javier/src/build/./gcc/xgcc
-B/home/javier/src/build/./gcc/ -B/home/javier/tools/arm-linux/bin/
-B/home/javier/tools/arm-linux/lib/ -isystem
/home/javier/tools/arm-linux/include -isystem
/home/javier/tools/arm-linux/sys-include
checking for suffix of object files... configure: error: in
`/home/javier/src/build/arm-linux/libgcc':
configure: error: cannot compute suffix of object files: cannot compile
See `config.log' for more details.
make[1]: *** [configure-target-libgcc] Error 1
make[1]: Leaving directory `/home/javier/src/build'
make: *** [all] Error 2
Before trying to compile I've installed the libgmp, libmpfr and arm cross
tool-chain [2] Fedora packages so I guess all gcc dependencies are met
(binutils, glibc, etc).
Could someone be so kind to point me out what am I doing wrong? I'm sending
as an attachment the config.log generated file.
Please let me know if you need any more information about my setup and
environment.
[1]: https://wiki.linaro.org/WorkingGroups/ToolChain/Using/GCCNative
[2]: http://fedoraproject.org/wiki/Architectures/ARM/CrossToolchain
Thanks a lot and best regards,
Javier
I've taken a stab at the medium term requirements for KVM on ARM:
https://wiki.linaro.org/WorkingGroups/ToolChain/Specs/KVMEpic
I haven't looked outside Linaro so apologies if this overlaps with
other people's plans.
Peter, this is high level and hopefully matches what's in your head.
I want to use this to do a project plan, see if it can be done in 6-9
calendar months, and see if we need more people. Are there any
implementation details that we should call out, similar to calling out
virtio and UEFI?
Rusty, this should tell you more about where we're going.
Mounir, you, Peter, and I should turn this into a basic project plan.
-- Michael
Hi,
Does anyone have anything they'd like to bring up in tomorrow's
performance call. ? I don't have any topics other than following on
action items from last time's call - which was comparing movw/ movt
with constant pools .
https://wiki.linaro.org/WorkingGroups/ToolChain/Meetings/2012-01-10
Please add to it as you deem fit.
cheers
Ramana
* Linaro
Continued work on getting GCC to build on LAVA. I've ironed out a few
more bugs from my test scripts, but it's slow going because a test runs
takes a long time to run, and there are very few useful error messages
when something goes wrong.
Wrote, posted, and committed a patch to fix the "120" testsuite bug I
encountered last month. Basically the GCC testsuite's "headmerge-1"
testcase would have failed from now until September because a sloppy
regex happening to match "120" in the toolchain version string's
snapshot date. I've also backported it to upstream 4.6 and posted a
merge request for Linaro 4.6.
Continued running benchmarks for the generic tuning project.
Continued looking at optimizing 64-bit shifts. No real progress this
week though.
* Other
Monday: Public holiday.
Tuesday: Vacation.
Caught up on a mountain of email.
Summary:
* Read armV7-A/R reference manual and analyze bugs.
Details:
* Read armV7-A/R reference manual and share the instruction set part
with local team.
* Analyze bugs: LP: #889985 "binaries: can't step out of helper
functions" and LP: #889984 "binaries: should step across helper
functions"
Plan:
* Ramp-up on gcc.
Planed leave:
* Jan 21 - 29: Chinese new year holiday.
Best regards!
-Zhenqiang
Hi there. I want each administrative task inside our group to have an
owner and a fill-in. I've started a list at:
https://wiki.linaro.org/WorkingGroups/ToolChain/Jobs
I took the chance to hand off some of my jobs as well so you might see
your name somewhere new (but hopefully not surprising).
I'll discuss this at tonight's meeting and in the 1-on-1s. Reply away
if you'd like more detail or have a task to add.
-- Michael
[short week, three days]
RAG:
Red:
Amber:
Green:
Current Milestones:
|| || Planned || Estimate || Actual ||
||cp15-rework || 2012-01-06 || 2012-01-17 || ||
||initial-a15-system-model || 2012-01-27 || 2012-01-27 || ||
||qemu-kvm-getting-started || 2012-03-04?|| 2012-03-04?|| ||
(for blueprint definitions: https://wiki.linaro.org/PeterMaydell/QemuKVM)
Historical Milestones:
||a15-usermode-support || 2011-11-10 || 2011-11-10 || 2011-10-27 ||
||upstream-omap3-cleanup || 2011-11-10 || 2011-12-15 || 2011-12-12 ||
== other ==
* catchup on email, etc
* patch review: patches for Calxeda's Highbank SoC model
* put together pull requests for target-arm and arm-devs patchqueues
* rebased qemu-linaro, added patches for things we want to fix in 2011.01,
rolled a tarball, tested it and sent to Michael H for testing
Hi Ramana. You were right about being able to do operations on
intrinsic types. Instead of doing the admittedly made up:
int16x4_t foo2(int16x4_t a, int16x4_t b)
{
int16x4_t ca = vdup_n_s16(0.2126*256);
int16x4_t cb = vdup_n_s16(0.7152*256);
return vadd_s16(vmul_s16(ca, a), vmul_s16(cb, b));
}
you can do:
int16x4_t foo3(int16x4_t a, int16x4_t b)
{
int16x4_t ca = vdup_n_s16(0.2126*256);
int16x4_t cb = vdup_n_s16(0.7152*256);
return ca*a + cb*b;
}
which is more readable and, as an added bonus, generates the
multiply-and-accumulate that I missed when using intrinsics. Nice.
-- Michael
== GDB ==
* Ongoing discussion on remote support for "info proc" and
core file generation.
* Fixed various GDB 7.4 regressions on multiple platforms.
== GCC ==
* Patch review week.
* Started looking into current status of performance patches.
Mit freundlichen Gruessen / Best Regards
Ulrich Weigand
--
Dr. Ulrich Weigand | Phone: +49-7031/16-3727
STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
IBM Deutschland Research & Development GmbH
Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294
Hi,
* Android
* migrated my linaro android build environment
* did a small change to the debuggerd patch (thanks Sylvain)
* OpenEmbedded
* the linaro binary toolchain uses multiarch paths while OE doesn't
-> setup a workaround to make it look like a classic one
* however, I think what I really want is to build the libc instead
of using the one provided by the binary external toolchain
* The core-image-minimal still doesn't boot properly because 'init'
doesn't come properly
Regards
Ken
The remaining change for neon-strided-load-extract is to allow fwprop.c
to propagate:
(set (reg X) (subreg (reg Y) N))
even if no further simplifications are possible. I posted the original
patch for comments here:
http://article.gmane.org/gmane.comp.gcc.patches/246180/
and fixed the problem that H.J. spotted. I wasn't entirely happy with
the benchmark results though, so it never became an RFA.
Richard
gcc/
* fwprop.c (propagate_rtx): Also set PR_CAN_APPEAR for subregs.
Index: gcc/fwprop.c
===================================================================
--- gcc/fwprop.c 2011-09-15 14:36:23.206143787 +0100
+++ gcc/fwprop.c 2011-09-15 14:36:40.995131564 +0100
@@ -664,7 +664,12 @@ propagate_rtx (rtx x, enum machine_mode
return NULL_RTX;
flags = 0;
- if (REG_P (new_rtx) || CONSTANT_P (new_rtx))
+ if (REG_P (new_rtx)
+ || CONSTANT_P (new_rtx)
+ || (GET_CODE (new_rtx) == SUBREG
+ && REG_P (SUBREG_REG (new_rtx))
+ && (GET_MODE_SIZE (mode)
+ <= GET_MODE_SIZE (GET_MODE (SUBREG_REG (new_rtx))))))
flags |= PR_CAN_APPEAR;
if (!for_each_rtx (&new_rtx, varying_mem_p, NULL))
flags |= PR_HANDLE_MEM;
== QEMU ==
* Wrote the context routines for Eglibc, including those that QEMU uses
These pass all the context tests I could find, including QEMUs coroutine
tests, and with them QEMU seems to boot OK. I've got a full eglibc test
run going at the moment, but I don't think anything else uses
them. I posted
them with comments and a question to libc-ports; I'll try and chase follow
ups.
== String routines ==
* I posted the strchr and strlen routines to eglibc (libc-ports)
* On strchr the question of whether it was worth using the longer version
that's faster for longer strings (but slower for shorter strings) came
up. I posted
some stats, observations etc - and there is still a discussion on
going about it.
* For strlen, rth noted the same trick that I'd originally seen in newlib
(and for which RichardS and Ramana had suggested) of a quicker end-of-string
sequence using clz. I'd avoided this because I'd originally seen it
in newlib and
didn't want to copy it; but since 3 people have individually suggested it it
would seem using.
== Goodbye! ==
Thank you all for a fun & interesting year! I'm sure many of us
will meet online again in the future. I'll try and follow my
linaro.org address
while it's still live to check for any replies to any patches/comments etc.
Feel free to mail me at davidgil(a)uk.ibm.com (work) or dave(a)treblig.org (home);
for Linaro people I've also added some more contact methods at:
https://wiki.linaro.org/Internal/People/DaveGilbert/Contact
Thanks again!
Dave
anyone have a suggestion for this person?
-------- Original Message --------
Subject: New question: problem in installing Linaro tools on Ask Linaro
Date: Mon, 26 Dec 2011 21:31:57 -0800 (PST)
From: Ask Linaro <dnsadmin(a)linaro.org>
To: doanac <andy.doan(a)linaro.org>
Ask Linaro - Q & A forum for Linaro developers <http://ask.linaro.org/>
------------------------------------------------------------------------
Hello doanac,
chandrakala <http://ask.linaro.org/users/172/chandrakala> has just
posted a new question on Ask Linaro, entitled problem in installing
Linaro tools
<http://ask.linaro.org/questions/456/problem-in-installing-linaro-tools>
and tagged "/linaro <http://ask.linaro.org/tags/linaro/> installation
<http://ask.linaro.org/tags/installation/>/". Here's what it says:
Hi all,
Iam new to linux and gnu tools. i have downloaded linaro gnu tools
to install cortex-a8 on my ubuntu machine. iam able to successfully
install gcc tools. But when i try to install arm tools it is
throwing error. following are the commands used to install gnu tools
and the error it is generated
mckala@mckala:~/Desktop/gstreamer/gcc_objdir$
../gcc-linaro-4.6-2011.12/gcc-linaro-4.6-2011.12/configure
--target=arm-*-elf --disable-bootstrap --enable-languages=c,c++
--with-mode=thumb --with-arch=armv7-a --with-tune=cortex-a8
--with-fpu=neon --with-float=softfp
--prefix=/home/mckala/Desktop/gstreamer/gcc_objdir --disable-werror
--with-newlib
mckala@mckala:~/Desktop/gstreamer/gcc_objdir$ make all-host
mckala@mckala:~/Desktop/gstreamer/gcc_objdir$ make install-host
with this gnu tools installation is completed and i did not get any
error. when i used the following command to install cross compiler,
it is giving error
mckala@mckala:~/Desktop/gstreamer/gcc_objdir$ make
The error is
checking for suffix of object files... configure: error: in
|/home/mckala/Desktop/gstreamer/gcc_objdir/arm-*-elf/libgcc':
configure: error: cannot compute suffix of object files: cannot
compile See|config.log' for more details. make[1]: ***
[configure-target-libgcc] Error 1
config.log file is showing the following error.
gcc_objdir/arm-/-elf/bin/
-B/home/mckala/Desktop/gstreamer/gcc_objdir/arm-/-elf/lib/ -isystem
/home/mckala/Desktop/gstreamer/gcc_objdir/arm-/-elf/include -isystem
/home/mckala/Desktop/gstreamer/gcc_objdir/arm-/-elf/sys-include -V >&5
xgcc: fatal error: no input files compilation terminated.
Can any one please help on this.
Thanks in advance.
Don't forget to come over and cast your vote.
Thanks,
Ask Linaro
P.S. You can always fine-tune which notifications you receive here
<http://ask.linaro.org//users/16/doanac/subscriptions/>.
------------------------------------------------------------------------