boringssl/crypto
Adam Langley 29b186736c Precompute sorted array for error strings.
Previously, error strings were kept in arrays for each subdirectory and
err.c would iterate over them all and insert them at init time to a hash
table.

This means that, even if you have a shared library and lots of processes
using that, each process has ~30KB of private memory from building that
hash table.

This this change, all the error strings are built into a sorted list and
are thus static data. This means that processes can share the error
information and it actually saves binary space because of all the
pointer overhead in the old scheme. Also it saves the time taken
building the hash table at startup.

This removes support for externally-supplied error string data.

Change-Id: Ifca04f335c673a048e1a3e76ff2b69c7264635be
2015-02-09 17:35:31 -08:00
..
aes Change CMakeLists.txt to two-space indent. 2015-01-28 16:37:10 -08:00
asn1 Precompute sorted array for error strings. 2015-02-09 17:35:31 -08:00
base64 Remove string.h from base.h. 2015-02-02 19:14:15 +00:00
bio Precompute sorted array for error strings. 2015-02-09 17:35:31 -08:00
bn Precompute sorted array for error strings. 2015-02-09 17:35:31 -08:00
buf Precompute sorted array for error strings. 2015-02-09 17:35:31 -08:00
bytestring Don't accept tag number 31 (long form identifier octets) in CBB_add_asn1. 2015-02-03 11:03:59 -08:00
chacha Don't assume alignment of ChaCha key on ARM. 2015-02-03 00:34:17 +00:00
cipher Precompute sorted array for error strings. 2015-02-09 17:35:31 -08:00
conf Precompute sorted array for error strings. 2015-02-09 17:35:31 -08:00
des Change CMakeLists.txt to two-space indent. 2015-01-28 16:37:10 -08:00
dh Precompute sorted array for error strings. 2015-02-09 17:35:31 -08:00
digest Precompute sorted array for error strings. 2015-02-09 17:35:31 -08:00
dsa Precompute sorted array for error strings. 2015-02-09 17:35:31 -08:00
ec Precompute sorted array for error strings. 2015-02-09 17:35:31 -08:00
ecdh Precompute sorted array for error strings. 2015-02-09 17:35:31 -08:00
ecdsa Precompute sorted array for error strings. 2015-02-09 17:35:31 -08:00
engine Precompute sorted array for error strings. 2015-02-09 17:35:31 -08:00
err Precompute sorted array for error strings. 2015-02-09 17:35:31 -08:00
evp Precompute sorted array for error strings. 2015-02-09 17:35:31 -08:00
hkdf Precompute sorted array for error strings. 2015-02-09 17:35:31 -08:00
hmac Remove string.h from base.h. 2015-02-02 19:14:15 +00:00
lhash Remove string.h from base.h. 2015-02-02 19:14:15 +00:00
md4 Remove string.h from base.h. 2015-02-02 19:14:15 +00:00
md5 Change CMakeLists.txt to two-space indent. 2015-01-28 16:37:10 -08:00
modes Remove string.h from base.h. 2015-02-02 19:14:15 +00:00
obj Precompute sorted array for error strings. 2015-02-09 17:35:31 -08:00
pem Precompute sorted array for error strings. 2015-02-09 17:35:31 -08:00
perlasm perlasm/x86_64-xlate.pl: handle inter-bank movd. 2014-11-10 13:45:32 -08:00
pkcs8 Precompute sorted array for error strings. 2015-02-09 17:35:31 -08:00
poly1305 Remove string.h from base.h. 2015-02-02 19:14:15 +00:00
rand Fix some unchecked mallocs. 2015-02-09 19:39:41 +00:00
rc4 Change CMakeLists.txt to two-space indent. 2015-01-28 16:37:10 -08:00
rsa Precompute sorted array for error strings. 2015-02-09 17:35:31 -08:00
sha Change CMakeLists.txt to two-space indent. 2015-01-28 16:37:10 -08:00
stack Remove string.h from base.h. 2015-02-02 19:14:15 +00:00
x509 Precompute sorted array for error strings. 2015-02-09 17:35:31 -08:00
x509v3 Precompute sorted array for error strings. 2015-02-09 17:35:31 -08:00
arm_arch.h aarch64 support. 2015-01-14 23:38:11 +00:00
CMakeLists.txt Precompute sorted array for error strings. 2015-02-09 17:35:31 -08:00
constant_time_test.c Update constant-time operations. 2014-11-10 13:48:30 -08:00
cpu-arm-asm.S Don't probe for NEON with SIGILL on aarch64. 2015-02-03 19:56:25 +00:00
cpu-arm.c Don't probe for NEON with SIGILL on aarch64. 2015-02-03 19:56:25 +00:00
cpu-intel.c Remove string.h from base.h. 2015-02-02 19:14:15 +00:00
cpu-x86_64-asm.pl Inital import. 2014-06-20 13:17:32 -07:00
cpu-x86-asm.pl Use asm directives to protect OPENSSL_cleanse. 2014-07-31 18:49:22 +00:00
crypto_error.h Add ISC header to a handful of files. 2014-06-26 10:26:42 -07:00
crypto.c aarch64 support. 2015-01-14 23:38:11 +00:00
directory_posix.c Remove string.h from base.h. 2015-02-02 19:14:15 +00:00
directory_win.c Remove string.h from base.h. 2015-02-02 19:14:15 +00:00
directory.h Add visibility rules. 2014-07-31 22:03:11 +00:00
ex_data_impl.c Free more memory in cleanup functions. 2015-01-13 00:04:35 +00:00
ex_data.c Don't compare signed vs. unsigned. 2014-10-01 02:17:38 +00:00
header_removed.h Add ISC header to a handful of files. 2014-06-26 10:26:42 -07:00
internal.h aarch64 support. 2015-01-14 23:38:11 +00:00
mem.c Enable more warnings & treat warnings as errors on Windows. 2015-01-31 00:18:55 +00:00
thread.c Remove string.h from base.h. 2015-02-02 19:14:15 +00:00
time_support.c Fix NaCl build. 2014-10-02 22:45:22 +00:00