From: Gerd Hoffmann Date: Fri, 7 Jan 2022 11:58:27 +0000 (+0100) Subject: crypto/bio: fix build on UEFI X-Git-Tag: openssl-3.2.0-alpha1~3107 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=328bf5adf9e23da523d4195db309083aa02403c4;p=thirdparty%2Fopenssl.git crypto/bio: fix build on UEFI When compiling openssl for tianocore compiling abs_val() and pow_10() fails with the following error because SSE support is disabled: crypto/bio/bio_print.c:587:46: error: SSE register return with SSE disabled Fix that by using EFIAPI calling convention when compiling for UEFI. Signed-off-by: Gerd Hoffmann Reviewed-by: Tomas Mraz Reviewed-by: Paul Dale (Merged from https://github.com/openssl/openssl/pull/17442) --- diff --git a/crypto/bio/bio_print.c b/crypto/bio/bio_print.c index 1ea9a1a3c69..60b28c61ff0 100644 --- a/crypto/bio/bio_print.c +++ b/crypto/bio/bio_print.c @@ -13,6 +13,7 @@ #include "crypto/ctype.h" #include "internal/numbers.h" #include +#include /* * Copyright Patrick Powell 1995 @@ -512,7 +513,11 @@ fmtint(char **sbuffer, return 1; } +#ifdef OPENSSL_SYS_UEFI +static LDOUBLE EFIAPI abs_val(LDOUBLE value) +#else static LDOUBLE abs_val(LDOUBLE value) +#endif { LDOUBLE result = value; if (value < 0) @@ -520,7 +525,11 @@ static LDOUBLE abs_val(LDOUBLE value) return result; } +#ifdef OPENSSL_SYS_UEFI +static LDOUBLE EFIAPI pow_10(int in_exp) +#else static LDOUBLE pow_10(int in_exp) +#endif { LDOUBLE result = 1; while (in_exp) {