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)