Force inlining of ssl_populate_transform() if used only once

Somehow, at least ARMC5 isn't able to recognize this automatically.
Since some of the arguments to ssl_populate_transform() are compile-
time constants in reduced configurations, inlining leads to slightly
shorter code.
This commit is contained in:
Hanno Becker 2019-08-16 10:21:32 +01:00
parent fc7429eef4
commit 298a47064c

View File

@ -1200,7 +1200,15 @@ static inline int ssl_calc_finished( int minor_ver,
* - MBEDTLS_SSL_EXPORT_KEYS: ssl->conf->{f,p}_export_keys * - MBEDTLS_SSL_EXPORT_KEYS: ssl->conf->{f,p}_export_keys
* - MBEDTLS_DEBUG_C: ssl->conf->{f,p}_dbg * - MBEDTLS_DEBUG_C: ssl->conf->{f,p}_dbg
*/ */
static int ssl_populate_transform( mbedtls_ssl_transform *transform, /* Force compilers to inline this function if it's used only
* from one place, because at least ARMC5 doesn't do that
* automatically. */
#if !defined(MBEDTLS_SSL_CONTEXT_SERIALIZATION)
MBEDTLS_ALWAYS_INLINE static inline
#else
static
#endif /* MBEDTLS_SSL_CONTEXT_SERIALIZATION */
int ssl_populate_transform( mbedtls_ssl_transform *transform,
int ciphersuite, int ciphersuite,
const unsigned char master[48], const unsigned char master[48],
#if defined(MBEDTLS_SSL_SOME_MODES_USE_MAC) #if defined(MBEDTLS_SSL_SOME_MODES_USE_MAC)