mbedtls/scripts
Manuel Pégourié-Gonnard 2adb375c50 Add option to avoid 64-bit multiplication
Motivation is similar to NO_UDBL_DIVISION.

The alternative implementation of 64-bit mult is straightforward and aims at
obvious correctness. Also, visual examination of the generate assembly show
that it's quite efficient with clang, armcc5 and arm-clang. However current
GCC generates fairly inefficient code for it.

I tried to rework the code in order to make GCC generate more efficient code.
Unfortunately the only way to do that is to get rid of 64-bit add and handle
the carry manually, but this causes other compilers to generate less efficient
code with branches, which is not acceptable from a side-channel point of view.

So let's keep the obvious code that works for most compilers and hope future
versions of GCC learn to manage registers in a sensible way in that context.

See https://bugs.launchpad.net/gcc-arm-embedded/+bug/1775263
2018-06-07 11:05:33 +02:00
..
data_files Add LinkLibraryDependencies to VS2010 app template 2018-02-22 12:23:53 +00:00
abi_check.py Fix minor issues with command line options 2018-04-16 12:02:29 +01:00
apidoc_full.sh Add scripts/apidoc_full.sh 2016-01-12 14:48:03 +00:00
bump_version.sh Removes yotta from bump_version.sh 2016-05-23 19:15:39 +01:00
config.pl Add option to avoid 64-bit multiplication 2018-06-07 11:05:33 +02:00
ecc-heap.sh Rename M255 to Curve25519 2015-06-23 13:09:10 +02:00
find-mem-leak.cocci Remove malloc references in mbedtls/scripts 2017-07-06 10:34:12 +01:00
footprint.sh Remove Yotta module from footprint.sh script 2017-05-15 11:23:55 +03:00
generate_errors.pl Rename aead_chacha20_poly1305 to chachapoly 2018-05-24 13:37:31 +02:00
generate_features.pl Rename include directory to mbedtls 2015-03-10 11:23:56 +00:00
generate_visualc_files.pl Remove VS6 files, only 2010 supported now 2015-05-14 13:04:03 +02:00
massif_max.pl Output stack+heap usage with massif 2015-02-16 17:22:46 +00:00
memory.sh Print I/O buffer size in memory.sh 2015-09-09 13:51:05 +02:00
output_env.sh all.sh: with --no-armcc, don't call armcc from output_env.sh 2018-03-21 08:35:07 +01:00
rename.pl Adds checks to 1.3->2.0 API migration script 2016-06-23 11:11:30 +01:00
rm-calloc-cast.cocci Remove malloc references in mbedtls/scripts 2017-07-06 10:34:12 +01:00
tmp_ignore_makefiles.sh Ability to ignore changes to Makefiles due to CMake usage 2014-06-24 11:09:25 +02:00