|
Message-ID: <20130302113441.GQ6181@port70.net> Date: Sat, 2 Mar 2013 12:34:41 +0100 From: Szabolcs Nagy <nsz@...t70.net> To: musl@...ts.openwall.com Subject: Re: ARM optimisations * Rob Landley <rob@...dley.net> [2013-03-01 22:33:19 -0600]: > I'd actually say that armv5 is probably the one to optimize for, > because it's somewhere over 80% of the installed base of arm systems > and generally provides an additonal 25% speedup from armv4 to armv5. > Anything lower than that can use C, anything newer than that can > benefit from an armv5 version vs C. ... > I believe armv6 was mostly just SMP extensions, so not worth > optimizing memcpy for. armv7 is nice but not uibiquitous the way > armv5 is, and armv7 brings with it the "thumb2" instruction set > which means you'd need 2 versions depending on what target you > wanted to compile for... a quick research shows that glibc has ifdefs for armv5te and armv4t optimizations http://sourceware.org/git/?p=glibc.git;a=blob;f=ports/sysdeps/arm/memcpy.S linaro has armv7 optimized version http://bazaar.launchpad.net/~linaro-toolchain-dev/cortex-strings/trunk/view/head:/src/linaro-a9/memcpy.S olibc (the bionic one not the openbsd one) has armv7+neon optimized memcpy https://github.com/olibc/olibc/blob/master/libc/arch-arm/bionic/memcpy.S
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.