Re: [PATCH] block-sha1: more good unaligned memory access candidates
- From
Nicolas Pitre <nico@cam.org>
- Date
- Aug 13, 2009, 20:13 UTC
- Message-ID
- <alpine.LFD.2.00.0908131603240.10633@xanadu.home>
- In-Reply-To
- <7v63crbja2.fsf@alter.siamese.dyndns.org>
On Thu, 13 Aug 2009, Junio C Hamano wrote:
Show 16 quoted lines
> Nicolas Pitre <nico@cam.org> writes: > > > As it is now, I was about to suggest: > > > > git mv block-sha1/sha1.[ch] . > > rmdir block-sha1 > > rm -r mozilla-sha1 > > rm -r arm > > rm -r ppc > > > > and remove support for openssl's SHA1 usage, making this implementation > > unconditional. After all it is faster, or so close to be faster than > > the alternatives, that we should probably cut on the extra dependency > > and simplify portability issues at the same time. > > Wow. Is it now faster than the arm/ and ppc/ hand-tweaked assembly?
It is indeed faster than the ARM assembly version by far, and faster than all the alternative implementations too, but with a 7x increase in compiled code size. In the context of Git I think this is a good compromize. Making the assembly version faster than the C version could be possible, but that would require quite some work and I don't expect the gain to be significant, certainly not worth the trouble.
Furthermore the C version can be used to generate ARM Thumb code while the asm version cannot without yet more work.
Nicolas