diff options
author | cinap_lenrek <cinap_lenrek@felloff.net> | 2017-11-20 00:10:35 +0100 |
---|---|---|
committer | cinap_lenrek <cinap_lenrek@felloff.net> | 2017-11-20 00:10:35 +0100 |
commit | 077e719dfbf9bf2582bed80026251cc0d108c16e (patch) | |
tree | 5e8fd7d6297f5d007ea21c85f8346eae0717ed7d /sys/src/ape/lib/sec | |
parent | 1eb373945455f1ba03fa1b221529d74ca2a778ad (diff) |
libsec: write optimized _chachablock() function for amd64 / sse2
doing 4 quarterround's in parallel using 128-bit
vector registers. for second round shuffle the columns and
then shuffle back.
code is rather obvious. only trick here is for the first
quaterround PSHUFLW/PSHUFHW is used to swap the halfwords
for the <<<16 rotation.
Diffstat (limited to 'sys/src/ape/lib/sec')
-rw-r--r-- | sys/src/ape/lib/sec/amd64/mkfile | 1 | ||||
-rw-r--r-- | sys/src/ape/lib/sec/port/mkfile | 2 |
2 files changed, 2 insertions, 1 deletions
diff --git a/sys/src/ape/lib/sec/amd64/mkfile b/sys/src/ape/lib/sec/amd64/mkfile index f11c532a6..a2b3e867a 100644 --- a/sys/src/ape/lib/sec/amd64/mkfile +++ b/sys/src/ape/lib/sec/amd64/mkfile @@ -3,6 +3,7 @@ APE=/sys/src/ape LIB=/$objtype/lib/ape/libsec.a FILES=\ + chachablock\ md5block\ sha1block\ aesni\ diff --git a/sys/src/ape/lib/sec/port/mkfile b/sys/src/ape/lib/sec/port/mkfile index b25156cba..54d96bb8a 100644 --- a/sys/src/ape/lib/sec/port/mkfile +++ b/sys/src/ape/lib/sec/port/mkfile @@ -11,7 +11,7 @@ CFILES = des.c desmodes.c desECB.c desCBC.c des3ECB.c des3CBC.c\ sha1pickle.c md5pickle.c\ poly1305.c\ rc4.c\ - chacha.c\ + chacha.c chachablock.c\ salsa.c\ genrandom.c prng.c fastrand.c nfastrand.c\ probably_prime.c smallprimetest.c genprime.c dsaprimes.c\ |