== Progress ==
* Investigating Cross-Compilation with LLVM
- Gathering all options necessary to cross-compile
- Cross-compiling Clang+LLVM with Clang to ARM
- Writing down all issues found during the process
* Investigating the Clang Driver
- Refactoring some common decisions about targets
- Adding new CPUs, cleaning a few areas
== Plan ==
* Try to upstream some patches to make cross-compilation a bit easier
* Write a document on how to cross-compile with Clang on LLVM website
== Progress ==
* 4 day week (Bank Holiday Monday)
* Wiki cleanup pretty much done
* More malloc implementation work
* Further investigation of ptmalloc to see if it can be improved
* Fixed gdb build for non-Intel architectures
* Found an issue with clone in glibc 2.18 and committed a fix
* Committed strlen code to glibc
== Issues ==
* None
== Plan ==
* Get glibc patches applied upstream
* More malloc
* Look into stack guard and pointer guard stuff for ARM
--
Will Newton
Toolchain Working Group, Linaro
Hello,
Is there any LLVM cross-compiler built for ARM. If not, then could you
provide some pointers where I could start creating one?
--
Regards,
Pavan
Hi all,
There has been interest from LEG members to ensure that optimal library
routines are used on their platforms. My understanding is that the
"correct" way of doing this these days is to use ifuncs to select the
best implementation for a given system.
I see that glibc 2.18 contains an ifunc-ed version of memcpy. Does the
TCWG have a hit list of other functions that might get the same
treatment? If so, does it have a plan and the resources to implement
them? If it's a matter of resources, I think LEG might be able to help
there.
Cheers,
mwh
Hi,
Apologies in advance for any chinese whispers effects that happen, but
colleagues at Canonical are attempting to backport this change:
https://sourceware.org/git/?p=glibc.git;a=commit;h=ae65139d140ac85808c0666c…
to the (e)glibc in current versions of Ubuntu, 2.17, but are
encountering mysterious segfaults when building. These are the
additional patches being used:
arm/define-sfi_breg-and-PC_OFS.patch
arm/Add-Cortex-A15-optimized-NEON-and-VFP-memcpy-rou.patch
arm/Make-multiarch-memcpy-always-use-NEON-when-compi.patch
arm/Clean-up-__libc_ifunc_impl_list.patch
arm/Make-armv7-memcpy-implementations-SFI-friendly.patch
arm/Use-push-pop-mnemonics.patch
arm/Support-avoiding-pc-as-destination-register.patch
arm/BX_ALIGN_LOG2.patch
arm/Pass-dl_hwcap-to-IFUNC-resolver-functions.patch
-- all grabbed from glibc git. Are we missing something obvious? :)
Cheers,
mwh
== Progress ==
* Got Cbuildv2 building native on Odroid and Wandboard via Jenkins
using the LAVA build farm.
* Improved support for native builds in Cbuildv2.
* Added building binary tarballs for releases.
* Looked at two patches for multilib support.
* Reviewed a bunch of wiki pages, updated some, deleted some,
some were ok as is and still useful.
* Registered for LCU13.
* Ordered Odroid XU & U2 boards.
* Put out 2 lightning caused wildland fires.
* Ran weekend music festival fund raiser for a local non-profit.
== Plan ==
* Review more wiki pages.
* Improve binary tarball support in Cbuildv2.
* Add 'make check' to Jenkins builds.
* Get Jenkins to do automated builds on LAVA build farm.
* Get lava-tool working.
== Progress ==
* spec2k comparison between ARM and x86
- Analysis ongoing
- Preparing to post the results for internal discussions
* Back-porting
- Back ported all the assigned one
- There are some make check failures for thread related test cases
with qemu; investigating it
== Plan ==
* Continue with spec2k comparison between ARM and x86
* Finish the back-ports
== Progress ==
3 day week 21 August unwell and 23-August leave.
* Libssp support for AArch64 TCWG 23:
Sent RFC patch for review.
http://sourceware.org/ml/libc-ports/2013-08/msg00044.html
workign on cross testing eglibc from host.
* Backport 201406 to linaro branch. Waiting for review.
== Plan ==
* Post RFC patch for Libssp support for AArch64 in GCC
* Continue testing the patch for Libssp support for AArch64 in GCC
and glibc TCWG-23
* Backport 201411 201624 201666 from trunk
== Issues ==
* LTO/PGO work stopped now since libssp support priority is more.
* Waiting for Marcus feedback for Matt comments on gprof patches TCWG-20.
== Issues ==
* none
== Progress ==
* 2013-08 release:
- Released 4.7 and 4.8 .
* 4.8-2013.08 c++ and java reported issues:
- Trying to reproduced the reported failures on x86 and a9hf,
without success for the moment.
* LRA:
- Rebased the ongoing work on updated sources.
- Preparing an upstream request for comment.
== Plan ==
* Review roster
* 4.8 backports
* LRA
== Issues ==
* None
== Progress ==
* 2 day off.
* Conditional compare
- Send out RFC and basic support patches for community review.
- Update and design test cases.
- Investigating bootstrap issue when expanding conditional compare
to optimized RTL.
== Plan ==
* Continue on conditional compare.
== Panned leaves ==
* Sept. 3-5: internal meeting.
== Progress ==
* GDB Record and Replay (TCWG-197)
Studied ARM Thumb32 instruction encoding for thumb32 encoding
Studied existing arm/thumb code for instruction decoding and recording
Setup remote debug environment to debug arm native gdb record/replay code.
* Spent a couple of hours reading gdb wiki pages and identified some
improvement which I will make in coming weeks.
* Prepared US visa application documents.
== Plan ==
* GDB Record and Replay: write code for decoding and recording thumb32
instructions.
On 17 August 2013 14:36, Renato Golin <renato.golin(a)linaro.org> wrote:
> On 17 August 2013 08:36, Michael Hope <michaelh(a)juju.net.nz> wrote:
>>
>> user/real is 3.81 so it was nicely CPU bound. The Wandboard runs at
>> 1.0 GHz vs the U2 1.7 GHz and 142 / 1.7 = 83, which is very close to
>> your 80 minutes.
>
>
> Yes, on release builds, the SATA makes little difference.
(+linaro-toolchain, which I dropped at the start)
I had a hack and set up a chroot on my Tegra 3 OUYA to run distcc.
With the Wandboard driving and a 'ninja make -j12', LLVM 3.3 built in
75 minutes (meh). You really need the 2 GiB of RAM - the 650 MiB left
on the OUYA plus the occasional four 250 MiB g++ hurts.
-- Michael
== Progress ==
* Nice holidays in Brittany.
- Wine, cheese, more wine, some beaches...
* ODroid buildbot still running...
- After a long and hot week with all windows close (room temp > 25C), the
bot has held stable no hotter than 63C and is running self-hosting
(partial+full build) without a single hiccup.
- I'd be very happy with them as buildbots (rather than Chromebooks)
- I'd also be very happy to test the ODroid X2 (octo-A15/A7)
== Plan ==
* Initial investigation on cross-compilation issues
* Liaise with ARM on divmod issue (some ideas on ValueInRegs floating
around)
== Progress ==
* 4 day week (off Thursday)
* Wrote a patch to fix gas NEON addressing mode bug and committed
* Submit and respin of glibc malloc tests and fixes
* Pushed cortex-malloc test and benchmark suite to git.l.o
* More malloc work
* Started wiki cleanup
== Issues ==
* None
== Plan ==
* Further malloc work
* Get glibc patches applied upstream
* Complete wiki cleanup
--
Will Newton
Toolchain Working Group, Linaro
Progress:
* QEMU maintenance:
** versatile-pb PCI: sent kernel patchset, so this is off
my queue now unless there are problems in review
** interviewing candidates for Linaro QEMU position
** sent pullreq for various accumulated QEMU patches now 1.7
development has opened up
** booked travel, hotels for Connect USA, KVM Forum
-- PMM
Hi,
I was trying to build a gcc-linaro that targets AArch64 (mostly
following guides such as http://jk.ozlabs.org/docs/arm64-toolchain/) and
failing, to be short and simple. Unfortunately I don't have the errors
I was encountering to hand, so instead I'll ask: Is the build process
for building aarch64-linux-gnu-gcc and friends documented anywhere?
Cheers,
mwh
== Progress ==
* Spent a couple of days studying existing patches and code changes made
for reverse debug support.
* Evaluated record n replay and reverse debug support by testing these
features in various configuration with few forced code changes.
* Evaluated catch syscall patch by running it on chrome book.
* Finally submitted UK visa application. Spent a couple of days preparing
documents getting them attested and took the trip to UK visa application
center for application submission.
* Independence Day Public Holiday on 14th August.
== Plan ==
* Continue work on Reverse debug on arm major task next week is to study
arm documentation and identify changes required for thumb32 support in
process record and replay feature.
* Review and update TCWG Libraries and Dev tools wiki pages.
== Progress ==
* Libssp support for AArch64 TCWG 23:
Understood the TCB datastructure. Sent a mail to the internal team on the
changes needed and where to put stack gaurd slot in TCB.
Got some comments from Matt. Worked on the changes in eglibc.
Tested a simple stack smashing program in V8 model by moving
the patched run time linker and glibc. Sent the RFC internally for review.
* 4 day week 15-August India naional holiday.
== Plan ==
* Post RFC patch for Libssp support for AArch64 in GCC and glibc TCWG-23
* Continue testing the patch for Libssp support for AArch64 in GCC and
glibc TCWG-23
* Backport and test revision 201406 to linaro branch.
== Issues ==
* LTO/PGO work stopped now since libssp support priority is more.
* Waiting for Marcus feedback for Matt comments on gprof patches TCWG-20.
Misc
------
23-August availing leave.
== Progress ==
* spec2k comparison between ARM and x86
- Trying to reproduce some of the earlier optimization studies
- Set up Acovea Trying milepost gcc
* VRP based zero/sign extension elimination
- Posted the modified patch
== Plan ==
* Continue with spec2k comparison between ARM and x86
* Wiki Cleanup
== Progress ==
* Made it back from the Tetons after a rainy climbing trip
* Helped Vish with #357
* Cbuildv2 improvements for cross builds and binary releases
* Wrote script to for better Jenkins support
* Added more user parameters to Jenkins config page for building
toolchains.
== Plans ==
* More work on Cbuildv2 for building binary releases
* Write more Cbuildv2 docs
* More help on #357
* Start going through Wiki pages
* Investigate lava-tool so Cbuildv2 can use Jenkins slaves remotely
== Progress ==
* Short week (3 days off to move house)
* Submitted outstanding glibc patches after 2.18 release
* Wrote some glibc allocator tests which have exposed some minor issues
== Issues ==
* None
== Plan ==
* Complete glibc allocator tests and submit them
* Get malloc implementation functionally complete
--
Will Newton
Toolchain Working Group, Linaro
== Progress ==
* 2013.08 4.8 release:
- completed achievable backports (postponed some with problems to
next release)
- created & uploaded release. Will be announced next week along with 4.7
- Matthias a reported a problem in c++/java
* Aarch64 frame layout: submitted sample code for internal discussion.
* Wiki cleanup: started
* trunk validation:
- continued to work on internal validation of trunk using our
compute farm (build+cross validation) to help catch regressions early.
- validating every commit seems too heavy currently
== Plan ==
next week off