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 <kraxel@redhat.com>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Paul Dale <pauli@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/17442)
#include "crypto/ctype.h"
#include "internal/numbers.h"
#include <openssl/bio.h>
+#include <openssl/configuration.h>
/*
* Copyright Patrick Powell 1995
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)
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) {