diff options
author | Koen Kooi <koen.kooi@linaro.org> | 2013-10-16 09:25:55 +0200 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2013-10-26 15:59:14 +0100 |
commit | 0816c57ee3ddfbc7ccfa85c5425001c2db74f2c7 (patch) | |
tree | 923bb67a85d5e06bd95cff6725f3f371479900cb /meta/recipes-connectivity/openssl | |
parent | 137d141ee39c5345755e79705266c686c3341b10 (diff) | |
download | poky-0816c57ee3ddfbc7ccfa85c5425001c2db74f2c7.tar.gz |
openssl: switch ARM builds from linux-elf-arm to linux-armv4 config
This enables aes and sha1 assembly at buildtime. Openssl does a
runtime check to see which portion gets enabled.
'./Configure TABLE' gives the following:
*** linux-elf-arm
$cc =
$cflags = -DL_ENDIAN -DTERMIO -O2 -pipe -g -feliminate-unused-debug-types -Wall -Wa,--noexecstack -DHAVE_CRYPTODEV -DUSE_CRYPTODEV_DIGESTS
$unistd =
$thread_cflag = -D_REENTRANT
$sys_id =
$lflags = -ldl
$bn_ops = BN_LLONG DES_RISC1
$cpuid_obj =
$bn_obj =
$des_obj =
$aes_obj =
$bf_obj =
$md5_obj =
$sha1_obj =
$cast_obj =
$rc4_obj =
$rmd160_obj =
$rc5_obj =
$wp_obj =
$cmll_obj =
$modes_obj =
$engines_obj =
$perlasm_scheme = void
$dso_scheme = dlfcn
$shared_target= linux-shared
$shared_cflag = -fPIC
$shared_ldflag =
$shared_extension = .so.$(SHLIB_MAJOR).$(SHLIB_MINOR)
$ranlib =
$arflags =
$multilib =
*** linux-armv4
$cc = gcc
$cflags = -DTERMIO -O3 -Wall
$unistd =
$thread_cflag = -D_REENTRANT
$sys_id =
$lflags = -ldl
$bn_ops = BN_LLONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL BF_PTR
$cpuid_obj = armcap.o armv4cpuid.o
$bn_obj = bn_asm.o armv4-mont.o armv4-gf2m.o
$des_obj =
$aes_obj = aes_cbc.o aes-armv4.o bsaes-armv7.o
$bf_obj =
$md5_obj =
$sha1_obj = sha1-armv4-large.o sha256-armv4.o sha512-armv4.o
$cast_obj =
$rc4_obj =
$rmd160_obj =
$rc5_obj =
$wp_obj =
$cmll_obj =
$modes_obj = ghash-armv4.o
$engines_obj =
$perlasm_scheme = void
$dso_scheme = dlfcn
$shared_target= linux-shared
$shared_cflag = -fPIC
$shared_ldflag =
$shared_extension = .so.$(SHLIB_MAJOR).$(SHLIB_MINOR)
$ranlib =
$arflags =
$multilib =
Build tested on armv7a/angstrom and armv8/distroless, runtime tested on armv7a/angstrom.
'openssl speed' results:
Algo blocksize ops/s after
ops/s before difference
-------------------------------------------
MD5 16 308,766 264,664 -14.28%
64 277,090 263,340 -4.96%
256 212,652 197,043 -7.34%
1024 103,604 100,157 -3.33%
8192 17,936 17,796 -0.78%
sha1 16 290,011 385,098 32.79%
64 234,939 302,788 28.88%
256 144,831 177,028 22.23%
1024 57,043 67,374 18.11%
8192 8,586 9,932 15.68%
sha256 16 290,443 605,747 108.56%
64 178,010 370,598 108.19%
256 82,107 168,770 105.55%
1024 26,064 53,068 103.61%
8192 3,550 7,211 103.10%
sha512 16 59,618 259,354 335.03%
64 59,616 258,265 333.22%
256 21,727 98,057 351.31%
1024 7,449 34,304 360.49%
8192 1,047 4,842 362.63%
des cbc 16 964,682 1,124,459 16.56%
64 260,188 298,910 14.88%
256 65,945 76,273 15.66%
1024 16,570 19,110 15.33%
8192 2,082 2,398 15.17%
des ede3 16 370,442 429,906 16.05%
64 95,429 110,147 15.42%
256 23,928 27,808 16.21%
1024 5,993 6,960 16.13%
8192 752 868 15.36%
aes128 16 1,712,050 2,301,100 34.41%
64 466,491 651,155 39.59%
256 120,181 168,953 40.58%
1024 30,177 42,792 41.80%
8192 3,791 5,361 41.41%
aes192 16 1,472,560 1,964,900 33.43%
64 400,087 544,971 36.21%
256 103,245 141,062 36.63%
1024 25,902 35,389 36.63%
8192 3,256 4,451 36.67%
eas256 16 1,330,524 1,772,143 33.19%
64 355,025 486,221 36.95%
256 90,663 125,281 38.18%
1024 22,725 31,484 38.54%
8192 2,837 3,952 39.31%
rsa 2048bit 15 25 69.94%
public 547 832 52.00%
dsa 2048bit 55 86 54.26%
verify 47 73 53.33%
(From OE-Core rev: 8f29346a755d0a7690be9374cce6c88076541a3f)
Signed-off-by: Koen Kooi <koen.kooi@linaro.org>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-connectivity/openssl')
-rw-r--r-- | meta/recipes-connectivity/openssl/openssl.inc | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/meta/recipes-connectivity/openssl/openssl.inc b/meta/recipes-connectivity/openssl/openssl.inc index b208eb0998..a3b0ac4c74 100644 --- a/meta/recipes-connectivity/openssl/openssl.inc +++ b/meta/recipes-connectivity/openssl/openssl.inc | |||
@@ -61,7 +61,7 @@ do_configure () { | |||
61 | target="$os-${HOST_ARCH}" | 61 | target="$os-${HOST_ARCH}" |
62 | case $target in | 62 | case $target in |
63 | linux-arm) | 63 | linux-arm) |
64 | target=linux-elf-arm | 64 | target=linux-armv4 |
65 | ;; | 65 | ;; |
66 | linux-armeb) | 66 | linux-armeb) |
67 | target=linux-elf-armeb | 67 | target=linux-elf-armeb |