Re-visit SHA-1 code
authorEric Biggers <ebiggers3@gmail.com>
Sun, 15 Jun 2014 16:34:57 +0000 (11:34 -0500)
committerEric Biggers <ebiggers3@gmail.com>
Mon, 16 Jun 2014 01:56:54 +0000 (20:56 -0500)
commit19ce03addb8071555d951a965fa0bd7e3ae7224b
tree30a50f0dc53d114fcb4f08b4a7005f052e6b983e
parent4a0639235f5f6e28ce9c9cbd21edc71199f85d09
Re-visit SHA-1 code

- Fixed build failures when configured with --enable-ssse3-sha1.

- Actually calculate the message digest correctly in the SSSE3-optimized
  version!  The Intel code just does block transformations, not arbitrary
  updates; the previous code did not reflect this.

- Use an appropriate fallback when the CPU does not support SSSE3
  instructions; don't just call abort()!

- Improve sha1_update() and sha1_final().  They should now be slightly
  faster, as well as easier to understand.

- Use beXX_to_cpu() and cpu_to_beXX() macros instead of hard-coding
  endian conversions.
12 files changed:
Makefile.am
NEWS
build-aux/nasm_lt.sh [new file with mode: 0755]
build-aux/strip_fPIC.sh [deleted file]
configure.ac
include/wimlib/endianness.h
include/wimlib/sha1.h
include/wimlib/types.h
m4/ax_prog_nasm.m4 [deleted file]
m4/nasm.m4 [new file with mode: 0644]
src/sha1-ssse3.asm
src/sha1.c