[openssl/openssl] 3e47a2: ec: Use static linkage on nistp521 felem_{square,m...

openssl-machine noreply at github.com
Fri Aug 4 14:25:13 UTC 2023


  Branch: refs/heads/master
  Home:   https://github.com/openssl/openssl
  Commit: 3e47a286dc3274bda72a196c3a4030a1fc8302f1
      https://github.com/openssl/openssl/commit/3e47a286dc3274bda72a196c3a4030a1fc8302f1
  Author: Rohan McLure <rohanmclure at linux.ibm.com>
  Date:   2023-08-04 (Fri, 04 Aug 2023)

  Changed paths:
    M crypto/ec/ecp_nistp521.c

  Log Message:
  -----------
  ec: Use static linkage on nistp521 felem_{square,mul} wrappers

Runtime selection of implementations for felem_{square,mul} depends on
felem_{square,mul}_wrapper functions, which overwrite function points in
a similar design to that of .plt.got sections used by program loaders
during dynamic linking.

There's no reason why these functions need to have external linkage.
Mark static.

Signed-off-by: Rohan McLure <rohanmclure at linux.ibm.com>

Reviewed-by: Paul Dale <pauli at openssl.org>
Reviewed-by: Shane Lontis <shane.lontis at oracle.com>
Reviewed-by: Dmitry Belyavskiy <beldmit at gmail.com>
Reviewed-by: Todd Short <todd.short at me.com>
(Merged from https://github.com/openssl/openssl/pull/21471)


  Commit: 01d901e470d9e035a3bd78e77b9438a4cc0da785
      https://github.com/openssl/openssl/commit/01d901e470d9e035a3bd78e77b9438a4cc0da785
  Author: Rohan McLure <rohanmclure at linux.ibm.com>
  Date:   2023-08-04 (Fri, 04 Aug 2023)

  Changed paths:
    M crypto/ec/build.info
    M crypto/ec/ec_curve.c
    M crypto/ec/ec_lib.c
    M crypto/ec/ec_local.h
    A crypto/ec/ecp_nistp384.c

  Log Message:
  -----------
  ec: 56-bit Limb Solinas' Strategy for secp384r1

Adopt a 56-bit redundant-limb Solinas' reduction approach for efficient
modular multiplication in P384. This has the affect of accelerating
digital signing by 446% and verification by 106%. The implementation
strategy and names of methods are the same as that provided in
ecp_nistp224 and ecp_nistp521.

As in Commit 1036749883cc ("ec: Add run time code selection for p521
field operations"), allow for run time selection of implementation for
felem_{square,mul}, where an assembly implementation is proclaimed to
be present when ECP_NISTP384_ASM is present.

Signed-off-by: Rohan McLure <rohanmclure at linux.ibm.com>

Reviewed-by: Paul Dale <pauli at openssl.org>
Reviewed-by: Shane Lontis <shane.lontis at oracle.com>
Reviewed-by: Dmitry Belyavskiy <beldmit at gmail.com>
Reviewed-by: Todd Short <todd.short at me.com>
(Merged from https://github.com/openssl/openssl/pull/21471)


  Commit: 966047ee13188e8634af25af348940acceb9316d
      https://github.com/openssl/openssl/commit/966047ee13188e8634af25af348940acceb9316d
  Author: Rohan McLure <rohanmclure at linux.ibm.com>
  Date:   2023-08-04 (Fri, 04 Aug 2023)

  Changed paths:
    A crypto/ec/asm/ecp_nistp384-ppc64.pl
    M crypto/ec/build.info
    M crypto/ec/ecp_nistp384.c

  Log Message:
  -----------
  ec: powerpc64le: Add asm implementation of felem_{square,mul}

Add an assembly implementation of felem_{square,mul}, which will be
implemented whenever Altivec support is present and the core implements
ISA 3.0 (Power 9) or greater.

Signed-off-by: Rohan McLure <rohanmclure at linux.ibm.com>

Reviewed-by: Paul Dale <pauli at openssl.org>
Reviewed-by: Shane Lontis <shane.lontis at oracle.com>
Reviewed-by: Dmitry Belyavskiy <beldmit at gmail.com>
Reviewed-by: Todd Short <todd.short at me.com>
(Merged from https://github.com/openssl/openssl/pull/21471)


Compare: https://github.com/openssl/openssl/compare/4c50610bdadb...966047ee1318


More information about the openssl-commits mailing list