* Attended Linaro Connect; notable sessions:
+ Ubuntu plans for QEMU for Ringtail release
= upstream qemu has merged qemu-kvm back in so
Ubuntu will switch to qemu from qemu-kvm for x86
= also makes sense now to use upstream qemu for all archs
(following Debian) rather than using qemu-linaro for non-x86:
reasons for using q-l in Ubuntu now mostly fixed (ie upstream
ARM support no longer dire). Ubuntu will carry omap3 patches
to avoid dropping that feature in the changeover
= makes sense for Linaro too as we now have an automated
package-to-PPA setup for people who need bleeding-edge and
also will want Ubuntu to transition to a more stably released
and supported QEMU codebase to use for KVM-on-ARM-servers
+ KVM Testing plans
= worked through a list of things that would be nice to test;
useful feedback from people in the session about what matters.
Missing: specific commitment by anybody to write tests :-)
+ various informal discussions about possibilities for v8 QEMU
* this week: at LinuxCon Europe / ELC-Europe / KVM-Forum / QEMU Summit
-- PMM
Hi toolchain people,
I've gone through and massaged our meetings and 1-on-1s to handle the
recent daylight savings changes. Most meetings now start at 9:15 am GMT
and 1-on-1s are packed before them if possible.
Let me know if I should massage them further,
-- Michael
== Progress ==
* Attended Linaro Connect
* Worked out focus for performance in next iteration:
* Cortex-A15
* Other discussions on:
* Transitioning from cbuild->LAVA
* ARMv8 GNU Tools support
* big.LITTLE Toolchain tuning
== Next Week ==
* Backport Doko's configury changes for arm-none-linux-gnueabihf support
* Remerge HOT/COLD partitioning to test like for like (TBB generation)
* Benchmark LRA vs Reload on x86 and x86-64
* Write up strawman for non-multitest testing in GCC
== Future ==
* Decide whether the effort to develop HOT/COLD partitioning is worth it.
* Support LRA on ARM.
* Attend Connect in Hong Kong...
--
Matthew Gretton-Dann
Linaro Toolchain Working Group
matthew.gretton-dann(a)linaro.org
Dear All,
We have ARM cross compiler, and building our code. we got below error.
we have GCC Linaro 4.6.4.
arm-linux-gnueabi/bin/ld: DIV usage mismatch between
/home/Release/libasm.a(Blt32_Neon.o) and /home/Release/liblayer.so
arm-linux-gnueabi/bin/ld: failed to merge target specific data of file
/home/Release/libasm.a(Blt32_Neon.o)
is it related to below link ?
http://sourceware.org/ml/binutils/2012-03/msg00211.html
thanks
Hi,
here's some patches for gcc-linaro to make it work with
--host=arm-linux-androideabi
They're the quick and dirty thing to do and look like they could have
been written by Microsoft, needed something working in time for
Connect ;)
gcc-4.7-android-workarounds.patch: Workarounds for things that go
wrong, but where the true cause is yet to be determined (e.g. why
would configure think we have fread_unlocked and friends when we
don't?)
gcc-4.7-libitm-android.patch: Workaround for Bionic not knowing Elf32_auxv_t
gcc-4.7-no-unneeded-multilib.patch: Get the multilib config in sync
with regular Linux
gcc-4.7-stlport.patch: Use stlport instead of libstdc++ (yes, this
sucks - but it's what Android decided to do). Still needs to link
libstdc++ because Bionic contains a libstdc++.so (but it's more like a
libsupc++ - no STL there, but needed for stlport to work).
ttyl
bero
== Progress ==
* HOT/COLD partitioning for PGO
* Initial look at results
* Patch Tracking & Backporting
* Testing Doko's configury changes for arm-none-linux-gnueabihf support
* Connect Prep
* LRA Investigations
* Sign/zero extension II
== Next Week ==
* Linaro Connect
== Future ==
* Attend Connect
* HOT/COLD partitioning for PGO:
* Get two current patches accepted upstream
* Post question upstream about register allocation 'mistakes' I am seeing
--
Matthew Gretton-Dann
Linaro Toolchain Working Group
matthew.gretton-dann(a)linaro.org
Summary:
* Validate and release Linaro binary toolchain 2012.10
* Test
Details:
1. Release Linaro binary toolchain 2012.10
* Fix windows installer issue due to version format change.
* Validate and release Linaro binary toolchain 2012.10.
2. Identify the root cause of PR 54902 (lp:1065559), and Richard
Biener fixed it.
3. Enable SPEC2006 test. Testing is ongoing.
Planed Leaves:
* Nov. 5-7: Off site teambuilding event.
* Nov. 9, 12-13: Annual leaves
Plans:
* Performance test for shrink-wrap.
Best regards!
-Zhenqiang
== track-kvm-abi-changes ==
* updated qemu patches to match Christoffer's v13 tree, committed
all fixes suggested in previous round of code review, rebased
and sent RFC v3 of the QEMU KVM/ARM support patches
== other ==
* rebased qemu-linaro on master; found and fixed a bug which
meant that beagle models crashed when the kernel tried to touch
the USB-OHCI device
* submitted some minor QEMU cleanup patches (last lot of stuff
before softfreeze next week, I expect)
* usual upstream review/etc
* started to look at virtio-mmio patches
* prep for Linaro Connect next week
KVM blueprint progress tracker:
http://ex.seabright.co.nz/helpers/backlog?group_by=topic&colour_by=state&pr…
-- PMM
== Progress ==
* Aarch64 GDB support testing:
- Ran the GDB testsuite via gdbserver on x86
- Made a board file to run against the model
- Tried debugging a simple hello world via gdbserver:
It fails while loading the image, because of a mismatch between
kernel and GDB ptrace interface.
* Aarch64 GDB backport investigation:
- Backported to the Linaro GDB 7.5 release.
- Discussed with ARM people the ptrace issue.
== Next ==
* On vacation.
The Linaro Toolchain Working Group is pleased to announce the 2012.10
release of the Linaro Toolchain Binaries, a pre-built version of
Linaro GCC and Linaro GDB that runs on generic Linux or Windows and
targets the glibc Linaro Evaluation Build.
Uses include:
* Cross compiling ARM applications from your laptop
* Remote debugging
* Build the Linux kernel for your board
What's included:
* Linaro GCC 4.7 2012.10
* Linaro GDB 7.5 2012.09
* A statically linked gdbserver
* A system root
* Manuals under share/doc/
The system root contains the basic header files and libraries to link
your programs against.
The Linux version is supported on Ubuntu 10.04.3 and 12.04, Debian
6.0.2, Fedora 16, openSUSE 12.1, Red Hat Enterprise Linux Workstation
5.7 and later, and should run on any Linux Standard Base 3.0
compatible distribution. Please see the README about running on
x86_64 hosts.
The Windows version is supported on Windows XP Pro SP3, Windows Vista
Business SP2, and Windows 7 Pro SP1.
The binaries and build scripts are available from:
https://launchpad.net/linaro-toolchain-binaries/trunk/2012.10
Need help? Ask a question on https://ask.linaro.org/
Already on Launchpad? Submit a bug at
https://bugs.launchpad.net/linaro-toolchain-binaries
On IRC? See us on #linaro on Freenode.
Other ways that you can contact us or get involved are listed at
https://wiki.linaro.org/GettingInvolved.
Hi All,
I wanted to see the difference in objdump of an application where I can
make the difference between the VFPV3 and VFPV4 support. I tried enabling
the flag -mfpu=vfpv3 and -mfpu=vfpv4 for ARM Cortex A15 toolchain in my
test code but cannot see the difference in two objdumps.
According to my survey, the fused multiply and accumulate is the only
instruction that can create the difference in two. Can any one provide the
sample test code for the same? Precisely, I wish to see the difference in
performance for vfpv3 and vfpv4.
Looking forward to your reply.
Thanks and Regards,
Jubi
Summary:
* Linaro bug analysis
* Validation
Details:
1. Linaro bug analysis:
* lp:1065122: Triaged. A fix patch was committed to 4.7 and trunk.
* lp:1065559: Confirmed. Need more investigation to find the root cause.
* lP:1065509: Can not reproduce it with the latest Linaro toolchain.
* lp:1066095: Investigate and invalid it since the reporter can not
reproduce it now.
2. Bug fix and smoke test for Linaro binary toolchain 2012.10 release.
3. Clean up shrink-wrap related patches and send to Linaro mail-list for review.
Plans:
* Linaro binary toolchain 2012.10 release.
* Shrink-wrap performance test.
Planed leave:
* Oct. 26
Best regards!
-Zhenqiang
== Progress ==
* Read wikis on OpenEmbedded and FastModel
* Aarch64 GDB support testing :
- Managed to run OE rootfs and kernel under FastModel
- Configured the ssh/scp access to the model
* Aarch64 GDB backport investigation :
- Discussed with ARM the port and plans
- Identified upstream patches
== Next ==
* Continue on Aarch64 GDB.
Short week (two days):
== other ==
* implemented QEMU patches to track and tell the kernel where the
various bits of the VGIC should be mapped in the address space;
however these seem to cause the host kernel to Oops...
* added a log message category for "guest just did something that's
probably a bug in the guest", so we can use it instead of random
printf/aborting QEMU
* generate inline code for Neon 64 bit negate and 32 bit abs,
rather than calling helper functions
* updated and resent new versions of some minor cleanup patches
which had got lost/obsoleted by QEMU internals changes
KVM blueprint progress tracker:
http://ex.seabright.co.nz/helpers/backlog?group_by=topic&colour_by=state&pr…
-- PMM
== Progress ==
* HOT/COLD partitioning for PGO
* Submitted merge request for current changes so that we can
benchmark and see how much benefit we can actually expect
* Patch Tracking & Backporting
* Backported Uli's fix for insn splitting at -O0 to 4.7
* Started backporting Doko's configury changes for
arm-none-linux-gnueabihf support
* Connect Prep
* Started investigating LRA
* Admin
* Interviewing
== Next Week ==
* Prepare for Connect
* Investigate zero/sign extension
* Investigate LRA
* Investigate Conditional Comparison benefits
* AArch64
* Document processes
== Future ==
* Attend Connect
* HOT/COLD partitioning for PGO:
* Get two current patches accepted upstream
* Post question upstream about register allocation 'mistakes' I am seeing
--
Matthew Gretton-Dann
Linaro Toolchain Working Group
matthew.gretton-dann(a)linaro.org
Hi Ramana,
The attached file is a reference patch to add more dwarf/unwind info
in epilogue. Please help to review.
Without the patch, dwarf check fail for the following cases when
enabling shrink-wrap:
tst ... L1 //simple_return
push ...
...
pop ... //.cfa_offset is not 0
L1:
bx lr //common simple_return
Thanks!
-Zhenqiang
== other ==
* upstream patch review
* target-arm pull request
* reviewed/committed some boot wrapper patches from Tixy to init the CCI
* rebased various qemu kvm-related patches on current upstream master,
sent out RFC v2 for review (matching kernel -v12 patches); this is
getting some useful review feedback
* added check for 'does KVM support vfp-d32' rather than just
assuming it on the QEMU side
* discussed API for userspace to tell KVM the base address of the
VGIC with Avi, Christoffer [todo: write QEMU patches to go with
C's proposed kernel patches]
KVM blueprint progress tracker:
http://ex.seabright.co.nz/helpers/backlog?group_by=topic&colour_by=state&pr…
-- PMM
Summary:
* Test shrink-wrap.
* Identify the root cause of dwarf check fail when enabling shrink-wrap.
Details:
1. Test shrink-wrap on PandaBoard with Precise
* Bootstrap is OK
* No make check regression
* No performance change for SPEC2000 INT.
2. Identify the root case for dwarf check fail on ARM, while they are
OK on X86 and MIPS when enabling shrink-wrap.
* "push" related INSNs are set as RTX_FRAME_RELATED_P in prologue; but
not all "pop" related INSNs are set as RTX_FRAME_RELATED_P.
* Prologue uses REG_FRAME_RELATED_EXPR notes to tell the dwarf backend
SP is adjusted; but no such kind of notes in epilogue.
* In addition, dwarf info for INSNs to adjust SP are not handled
correctly in epilogue.
Plans:
* Verify shrink-wrap related bugs
* Prepare Linaro binary toolchain 2012.10 release
Best regards!
-Zhenqiang
The Linaro Toolchain Working Group is pleased to announce the 2012.10
release of both Linaro GCC 4.7 and Linaro GCC 4.6.
Linaro GCC 4.7 2012.10 is the seventh release in the 4.7 series. Based
off the latest GCC 4.7.2+svn191881 release, it includes ARM-focused
performance improvements and bug fixes.
Interesting changes include:
* Updates to GCC 4.7.2+svn191881
* Backport changes to use VLD1 for Neon quad loads.
Fixes:
* LP 1053348: Missing binary files
Linaro GCC 4.6 2012.10 is the twentieth release in the 4.6 series.
Based off the latest GCC 4.6.3+svn191880 release, this is the seventh
release after entering maintenance.
Interesting changes include:
* Updates to 4.6.3+svn191880
* A fix to LP #1029454
The source tarballs are available from:
https://launchpad.net/gcc-linaro/+milestone/4.7-2012.10https://launchpad.net/gcc-linaro/+milestone/4.6-2012.10
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 pages:
https://launchpad.net/gcc-linaro/4.7/4.7-2012.10https://launchpad.net/gcc-linaro/4.6/4.6-2012.10
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
--
Matthew Gretton-Dann
Linaro Toolchain Working Group
matthew.gretton-dann(a)linaro.org
== Progress ==
* Completed Linaro ramp up process.
* Obtained my SSH security exception
* Crosstool-ng :
- Repoduced the aarch64 builds (bare and linux)
- Updated gcc to Linaro 2012.10 and submitted the merge request.
* Cbuild autobuilder :
- Not able to spawn a job on seabright (lack of permission)
== Misc ==
* One day off.
== Progress ==
* builtin_bswap16:
* Backported missing patch from thunk to Linaro/4.7. One test still
failing in the hard-float + thumb configuration because it forces
armv6 and results in a unsupported configuration: vfp-1 + hard-float.
Resumed discussion about a fix I proposed 3 weeks ago.
* PGO/hot-cold partitioning/Spec2k:
* read doc about spec2k
* started looking at 254.gap causing an ICE.
* started studying qemu traces about 175.vpr crashing when compiled
using profiling info. Cold code returns from a function using a
clobbered lr value.
== Next ==
* builtin_bswap16:
* complete backport to linaro-gcc 4.7.
* PGO/hot-cold partitioning/Spec2k:
* investigate compiler crash and runtime failures.
== Progress ==
* Deputising for Michael
* 4.6 and 4.7 2012.10 releases
* Included extra AArch64 merge into gcc-lianro/4.7
* AArch64 support
* Did another merge
* Starting another one.
* HOT/COLD partitioning for PGO
* PINGed If/Then/Else block conversion patch
* Started reworking postreload-gcse.c patch
* Ran into issues with vanilla gcc-linaro/4.7 not being able to
build for 'arm-none-linux-gnueabihf' without some configury magic
* Admin
* Interviewing
== Next Week ==
* Do another AArch64 merge.
* HOT/COLD partitioning for PGO:
* Get two current patches accepted upstream
* Post question upstream about register allocation 'mistakes' I am seeing
* symbol_ref splitting
* Test code alignment hypothesis
* Test v2 patch.
== Future ==
* Look at Cards for Vectorization, PGO and LTO with Michael.
--
Matthew Gretton-Dann
Linaro Toolchain Working Group
matthew.gretton-dann(a)linaro.org