openssl/crypto/ec
David Benjamin c0e8e5007b Fix some CFI issues in x86_64 assembly
The add/double shortcut in ecp_nistz256-x86_64.pl left one instruction
point that did not unwind, and the "slow" path in AES_cbc_encrypt was
not annotated correctly. For the latter, add
.cfi_{remember,restore}_state support to perlasm.

Next, fill in a bunch of functions that are missing no-op .cfi_startproc
and .cfi_endproc blocks. libunwind cannot unwind those stack frames
otherwise.

Finally, work around a bug in libunwind by not encoding rflags. (rflags
isn't a callee-saved register, so there's not much need to annotate it
anyway.)

These were found as part of ABI testing work in BoringSSL.

Reviewed-by: Richard Levitte <levitte@openssl.org>
GH: #8109
2019-02-17 23:39:51 +01:00
..
asm Fix some CFI issues in x86_64 assembly 2019-02-17 23:39:51 +01:00
curve448 Remove unnecessary trailing whitespace 2019-02-05 16:25:11 +01:00
build.info Build: Remove BEGINRAW / ENDRAW / OVERRIDE 2019-01-31 16:19:49 +01:00
curve25519.c curve25519.c: improve formula alignment 2018-12-06 19:38:13 +01:00
ec2_oct.c Following the license change, modify the boilerplates in crypto/ec/ 2018-12-06 14:51:47 +01:00
ec2_smpl.c SCA hardening for mod. field inversion in EC_GROUP 2019-02-17 21:02:36 +02:00
ec_ameth.c Following the license change, modify the boilerplates in crypto/ec/ 2018-12-06 14:51:47 +01:00
ec_asn1.c Following the license change, modify the boilerplates in crypto/ec/ 2018-12-06 14:51:47 +01:00
ec_check.c Following the license change, modify the boilerplates in crypto/ec/ 2018-12-06 14:51:47 +01:00
ec_curve.c Following the license change, modify the boilerplates in crypto/ec/ 2018-12-06 14:51:47 +01:00
ec_cvt.c Following the license change, modify the boilerplates in crypto/ec/ 2018-12-06 14:51:47 +01:00
ec_err.c SCA hardening for mod. field inversion in EC_GROUP 2019-02-17 21:02:36 +02:00
ec_key.c Following the license change, modify the boilerplates in crypto/ec/ 2018-12-06 14:51:47 +01:00
ec_kmeth.c Following the license change, modify the boilerplates in crypto/ec/ 2018-12-06 14:51:47 +01:00
ec_lcl.h SCA hardening for mod. field inversion in EC_GROUP 2019-02-17 21:02:36 +02:00
ec_lib.c Add EC_GROUP_get0_field 2019-02-15 16:43:18 +02:00
ec_mult.c Following the license change, modify the boilerplates in crypto/ec/ 2018-12-06 14:51:47 +01:00
ec_oct.c Following the license change, modify the boilerplates in crypto/ec/ 2018-12-06 14:51:47 +01:00
ec_pmeth.c Following the license change, modify the boilerplates in crypto/ec/ 2018-12-06 14:51:47 +01:00
ec_print.c Following the license change, modify the boilerplates in crypto/ec/ 2018-12-06 14:51:47 +01:00
ecdh_kdf.c Following the license change, modify the boilerplates in crypto/ec/ 2018-12-06 14:51:47 +01:00
ecdh_ossl.c Following the license change, modify the boilerplates in crypto/ec/ 2018-12-06 14:51:47 +01:00
ecdsa_ossl.c Following the license change, modify the boilerplates in crypto/ec/ 2018-12-06 14:51:47 +01:00
ecdsa_sign.c Following the license change, modify the boilerplates in crypto/ec/ 2018-12-06 14:51:47 +01:00
ecdsa_vrf.c Following the license change, modify the boilerplates in crypto/ec/ 2018-12-06 14:51:47 +01:00
eck_prn.c Following the license change, modify the boilerplates in crypto/ec/ 2018-12-06 14:51:47 +01:00
ecp_mont.c SCA hardening for mod. field inversion in EC_GROUP 2019-02-17 21:02:36 +02:00
ecp_nist.c SCA hardening for mod. field inversion in EC_GROUP 2019-02-17 21:02:36 +02:00
ecp_nistp224.c SCA hardening for mod. field inversion in EC_GROUP 2019-02-17 21:02:36 +02:00
ecp_nistp256.c SCA hardening for mod. field inversion in EC_GROUP 2019-02-17 21:02:36 +02:00
ecp_nistp521.c SCA hardening for mod. field inversion in EC_GROUP 2019-02-17 21:02:36 +02:00
ecp_nistputil.c Following the license change, modify the boilerplates in crypto/ec/ 2018-12-06 14:51:47 +01:00
ecp_nistz256.c SCA hardening for mod. field inversion in EC_GROUP 2019-02-17 21:02:36 +02:00
ecp_nistz256_table.c Following the license change, modify the boilerplates in crypto/ec/ 2018-12-06 14:51:47 +01:00
ecp_oct.c Following the license change, modify the boilerplates in crypto/ec/ 2018-12-06 14:51:47 +01:00
ecp_smpl.c SCA hardening for mod. field inversion in EC_GROUP 2019-02-17 21:02:36 +02:00
ecx_meth.c Following the license change, modify the boilerplates in crypto/ec/ 2018-12-06 14:51:47 +01:00