Jiaqi Gao a9b88826e7 third_party/fiat: replace memcpy with OPENSSL_memcpy
Align with the other use of `OPENSSL_memcpy` in `curve25519_64_adx.h`.
`string.h` will no longer be needed.

Signed-off-by: Jiaqi Gao <jiaqi.gao@intel.com>
2023-10-30 20:01:15 -07:00
..
2022-03-23 19:34:10 +00:00
2022-03-23 19:34:10 +00:00
2022-03-23 19:34:10 +00:00
2022-03-23 19:34:10 +00:00

Fiat Cryptography

The files in this directory are generated using Fiat Cryptography from the associated library of arithmetic-implementation templates. These files are included under the MIT license. (See LICENSE file.)

Some files are included directly from the fiat-c/src directory of the Fiat Cryptography repository. Their contents are #included into source files, so we rename them to .h. Implementations that use saturated arithmetic on 64-bit words are further manually edited to use platform-appropriate incantations for operations such as addition with carry; these changes are marked with "NOTE: edited after generation".

CryptOpt

Files in the asm directory are compiled from Fiat-Cryptography templates using CryptOpt. These generated assembly files have been edited to support call-stack unwinding. The modified files have been checked for functional correctness using the CryptOpt translation validator that is included in the Fiat-Cryptography repository. Correct unwinding and manual assembler-directive changes related to object-file conventions are validated using unit tests.