android_kernel_google_msm/arch
Sami Tolvanen 60317b0c4e crypto: arm/sha256 - Add optimized SHA-256/224
Add Andy Polyakov's optimized assembly and NEON implementations for
SHA-256/224.

The sha256-armv4.pl script for generating the assembly code is from
OpenSSL commit 51f8d095562f36cdaa6893597b5c609e943b0565.

Compared to sha256-generic these implementations have the following
tcrypt speed improvements on Motorola Nexus 6 (Snapdragon 805):

  bs    b/u      sha256-neon  sha256-asm
  16    16       x1.32        x1.19
  64    16       x1.27        x1.15
  64    64       x1.36        x1.20
  256   16       x1.22        x1.11
  256   64       x1.36        x1.19
  256   256      x1.59        x1.23
  1024  16       x1.21        x1.10
  1024  256      x1.65        x1.23
  1024  1024     x1.76        x1.25
  2048  16       x1.21        x1.10
  2048  256      x1.66        x1.23
  2048  1024     x1.78        x1.25
  2048  2048     x1.79        x1.25
  4096  16       x1.20        x1.09
  4096  256      x1.66        x1.23
  4096  1024     x1.79        x1.26
  4096  4096     x1.82        x1.26
  8192  16       x1.20        x1.09
  8192  256      x1.67        x1.23
  8192  1024     x1.80        x1.26
  8192  4096     x1.85        x1.28
  8192  8192     x1.85        x1.27

Where bs refers to block size and b/u to bytes per update.

Change-Id: Id221ad8ca7f27ca079290911da0178c3364b39f3
Signed-off-by: Sami Tolvanen <samitolvanen@google.com>
Cc: Andy Polyakov <appro@openssl.org>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2020-12-14 17:10:40 +01:00
..
alpha net: introduce SO_MAX_PACING_RATE 2020-11-30 19:31:32 +03:00
arm crypto: arm/sha256 - Add optimized SHA-256/224 2020-12-14 17:10:40 +01:00
avr32 net: introduce SO_MAX_PACING_RATE 2020-11-30 19:31:32 +03:00
blackfin vfs: define struct filename and have getname() return it 2018-12-07 22:28:48 +04:00
c6x
cris net: introduce SO_MAX_PACING_RATE 2020-11-30 19:31:32 +03:00
frv net: introduce SO_MAX_PACING_RATE 2020-11-30 19:31:32 +03:00
h8300 net: introduce SO_MAX_PACING_RATE 2020-11-30 19:31:32 +03:00
hexagon vfs: define struct filename and have getname() return it 2018-12-07 22:28:48 +04:00
ia64 net: introduce SO_MAX_PACING_RATE 2020-11-30 19:31:32 +03:00
m32r net: introduce SO_MAX_PACING_RATE 2020-11-30 19:31:32 +03:00
m68k net: introduce SO_MAX_PACING_RATE 2020-11-30 19:31:32 +03:00
microblaze vfs: define struct filename and have getname() return it 2018-12-07 22:28:48 +04:00
mips net: introduce SO_MAX_PACING_RATE 2020-11-30 19:31:32 +03:00
mn10300 net: introduce SO_MAX_PACING_RATE 2020-11-30 19:31:32 +03:00
openrisc vfs: define struct filename and have getname() return it 2018-12-07 22:28:48 +04:00
parisc net: introduce SO_MAX_PACING_RATE 2020-11-30 19:31:32 +03:00
powerpc net: introduce SO_MAX_PACING_RATE 2020-11-30 19:31:32 +03:00
s390 net: introduce SO_MAX_PACING_RATE 2020-11-30 19:31:32 +03:00
score vfs: define struct filename and have getname() return it 2018-12-07 22:28:48 +04:00
sh vfs: define struct filename and have getname() return it 2018-12-07 22:28:48 +04:00
sparc net: introduce SO_MAX_PACING_RATE 2020-11-30 19:31:32 +03:00
tile vfs: define struct filename and have getname() return it 2018-12-07 22:28:48 +04:00
um Merge remote-tracking branch 'stable/linux-3.4.y' into lineage-15.1 2017-12-27 17:13:15 +03:00
unicore32 vfs: define struct filename and have getname() return it 2018-12-07 22:28:48 +04:00
x86 BACKPORT: FROMLIST: mm: ASLR: use get_random_long() 2017-12-27 22:50:17 +03:00
xtensa net: introduce SO_MAX_PACING_RATE 2020-11-30 19:31:32 +03:00
.gitignore
Kconfig FROMLIST: mm: mmap: Add new /proc tunable for mmap_base ASLR. 2016-10-29 23:12:40 +08:00