Summary:
* Linaro toolchain binary 2013.01 release
* Move to using EGLIBC 2.17 in aarch64 build
Details:
1. Linaro toolchain binary.
* Document on how to do release test.
* Help Bero on 2013.01 release.
* Investigate lp:1107659. Crosstool-ng upstream has a workaround fix.
2. Move to using EGLIBC 2.17 in aarch64 build.
* Update Linux version to 3.7.0 since eglibc 2.17 configure
"checking for kernel header at least 3.7.0".
* Migrate local patches for eglibc 2.16 to 2.17 and update the config to 2.17
* Package build is OK. Test on simulation is ongoing.
3. Collect SPEC performance for different branch costs.
* The total results wave less than 0.5%.
* Three cases have 1-2% regression for smaller branch cost. Will
analyze the detail impact for the three cases.
Plan:
* Investigate coremark performance impact for different branch costs.
* Commit EGLIBC 2.17 changes
Planed leaves:
* Feb. 9 - 15: Chinese Spring Festival.
Best Regards!
-Zhenqiang
== Progress ==
* Backport
Tested and backported patch written to CSE optmize compares.
http://gcc.gnu.org/ml/gcc-patches/2013-02/msg00015.html
Ran GCC regression suite with ARMV8 foundation model for aarch64-none-elf
* Implementing GC sections support in bintuils
Had a quick look at changes need to be added.
Reading about relocations that needed to considered for
elf_backend_gc_sweep_hook
* Tried using Cbuild for buildign and testing gcc4.7 aarch64 branch.
ssh keys are not in sync. I am getting permission denied.
Cheking with David and Andy in valdation team.
Misc
* Attend tool chain weekly meet, and stand up call
* Attend usual AMD meetings
* Performed one x86_64 AMD task
* Booked tickets, hotel and got invite letter for Linaro connect.
== Next week ==
* Complete Cbuild experiments to test gcc svn aarch64 4.7 branch.
* Continue gc section support. Implement elf_backend_gc_sweep_hook
== Progress ==
* 64-bits ops in Neon: No news from upstream.
* vectorizer cost model: added possibility to tune the problem by
processor type.
* smin-umin: regression actually caused by a previous patch brought
when merging bswap16 support. Investigation on-going.
* managed to run spec2k on local board. Need to upload tools compiled
for hf platform.
* tcpanda heat problems: GCC testsuite passed.
* hot-cold partitioning: posted a follow-up to google patches on gcc-patches.
* looked at some codecs needing improvements (Neon intrinsics usage)
* feedback on lava/cbuild integration
* hotel/plane booked for Connect.
== Next ==
* handle 64-bits bitops in Neon feedback from upstream if any
* smin-umin: check bench results with probable culprit patch reverted.
Will need investigation on trunk too.
* vectorizer cost model: check bench results
* get more codecs sample codes.
Activity:
* calls and meetings
* last bits and pieces of ARM QEMU patches sent prior to upstream
1.4 hardfreeze
* continuing fixes for running a 3.8-rc4 vexpress kernel on QEMU:
* refactored the way we handle SYS_CFG vexpress registers so it's
possible to reasonably add support for more of them
* put together a basic implementation of the various regs
we're missing (oscillator, voltage, and some misc)
* ideally this would be done via variable-length qdev array
properties; started looking at how hard those would be to implement
* investigated linux-user bug where an edge case in use of
get_user_u32() had accidentally been broken; sent patch
* all travel/hotels now booked for Connect
-- PMM
== Progress ==
* Welcomed Omair to the team working on GDB
* Starting investigating cortex-a9 bootstrap failure
* Blueprints updating
* Preparing for two new starters next week
== Next week ==
* Welcome two new members to the team.
* Finish cortex-a9 bootstrapping investigations
== Future ==
* Run HOT/COLD partitioning benchmarks
* Analyse ARM results
* On x86_64 to see what the actual benefit we could get
* fix-gcc-multiarch-testing
* Come up with strawman proposal for updating testsuite to handle
testing with varying command-line options.
--
Matthew Gretton-Dann
Toolchain Working Group, Linaro
== Progress ==
* Maintenance
- Fixing ARM buildbots, poking people to fix bugs, keeping them green
- http://llvm.org/viewvc/llvm-project?view=rev&revision=173510
* Cost Model
- Fixing some bugs on the generic code
- http://llvm.org/viewvc/llvm-project?view=rev&revision=173691
- Adding some simple free cast (plus some infrastructure)
- http://llvm.org/viewvc/llvm-project?view=rev&revision=173849
* LLVM
- Investigating APFloat issue on Chromebook (bad libraries?)
- Clang miscompiles and show same synthoms, will play with options next
week
- AArch64 back-end in, to be built by default
* LAVA
- Got three last errors due to include path ('bits/predefs.h' file not
found)
- libc6-dev + libstdc++-dev have no effect, problem doesn't show on
buildbots
- Testing heating problem with multiple images (only 12.02 is good)
- Testing other boards, other images (with Dave)
* Friday Holiday
== Plan ==
* Try a bit more on the APFloat issue in Chromebook, but I think that's
just bad distro (ChrUbuntu), since no one else has this problem. Has anyone
put any Linaro image on a Chromebook?
* Continue working on getting faster builds on LAVA (quad-core origen,
Arndale, etc) with Dave Pigot.
* Continue micro-benchmarking the vectorization and updating the
cost-model. Start discussing the side-effects that are not modelled at all.
The Linaro Toolchain Working Group and Platform Team are pleased to
announce the 2013.01
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 2013.01
* Linaro GDB 7.5 2012.12
* 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/2013.01
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,
I have a few armv7 assembly tests. I'm trying to compile these using the linaro aarch64 toolchain and I'm getting errors.
Is there any specific flag that I have to pass to enable backward compatibility to allow v7 assembly to be compiled for a v8 model?
reset.s: Assembler messages:
reset.s:32: Error: operand 1 should be an integer register -- `mov r0,#0'
reset.s:33: Error: unknown mnemonic `mcr' -- `mcr p15,0,R0,C13,c0,1'
reset.s:36: Error: unknown mnemonic `mrc' -- `mrc p15,0,r0,c1,c0,0'
reset.s:40: Error: operand 1 should be a SIMD vector register -- `orr r0,r0,#0x00001000'
....
Relevant assembly code:
....
_reset:
// init Context ID Register
MOV r0, #0
MCR p15, 0, R0, C13, c0, 1
// Enable Instruction cache
mrc p15, 0, r0, c1, c0, 0
/* set bits:
12 = I i-cache
*/
orr r0, r0, #0x00001000
mcr p15, 0, r0, c1, c0, 0
.....
This is my assembler command: aarch64-linux-gnu-as -march=armv8-a+fp --keep-locals -o "reset.o" "reset.s"
Thanks,
Kalai
== Progress ==
* 64-bits ops in Neon: waiting for upstream.
* vectorizer cost model: initial activation with unaligned load/store
cost equal to aligned ones; benchmarking shows no significant
difference.
* smin-umin: a few benchmarks show a few unexpected regressions (10-15%).
* setting up spec2k on local board
* tcpanda heat problems: GCC built OK. Don't know how hot it became.
== Next ==
* handle 64-bits bitops in Neon feedback from upstream if any.
* analyze regressions in smin-umin
* check if more tuning of the vectorizer cost model is desirable.
* finish local board setup
* tcpanda: run gcc testsuite to check heat
== Progress ==
* Boehm GC AArch64 support:
- Tested on Foundation model
- Patches sent to mailing list
- Boehm GC has been accepted and merged into mainline
- Libatomic_ops under review, some improvements are needed.
== Next ==
* Boehm GC AArch64 support:
- Fix libatomic_ops for mainline merge
* Start gc sections support for AArch64 binutils
* Review roster