From 2a1c9adc087ece083ce186716a367f51ddc3e072 Mon Sep 17 00:00:00 2001 From: guzhihao4 Date: Mon, 13 Feb 2023 21:01:06 +0800 Subject: [PATCH] Change long double format from ld80 to ld128 for x86_64 Change long double macro to ld128 Test: XTS passed Issue: I6EUIF Signed-off-by: guzhihao4 Change-Id: I932f3fe5a1f7d3877b02a8d93e56a30e727b91e4 --- musl_src.gni | 1 + porting/linux/user/arch/x86_64/bits/float.h | 20 ++++++++++++++++++++ 2 files changed, 21 insertions(+) create mode 100644 porting/linux/user/arch/x86_64/bits/float.h diff --git a/musl_src.gni b/musl_src.gni index 4e4973d8..71f78c8f 100644 --- a/musl_src.gni +++ b/musl_src.gni @@ -143,6 +143,7 @@ if (musl_arch == "arm") { ] } else if (musl_arch == "x86_64") { musl_src_arch_file = [ + "arch/x86_64/bits/float.h", "src/fenv/x86_64/fenv.s", "src/ldso/x86_64/dlsym.s", "src/ldso/x86_64/tlsdesc.s", diff --git a/porting/linux/user/arch/x86_64/bits/float.h b/porting/linux/user/arch/x86_64/bits/float.h new file mode 100644 index 00000000..e188cb61 --- /dev/null +++ b/porting/linux/user/arch/x86_64/bits/float.h @@ -0,0 +1,20 @@ +#ifdef __FLT_EVAL_METHOD__ +#define FLT_EVAL_METHOD __FLT_EVAL_METHOD__ +#else +#define FLT_EVAL_METHOD 0 +#endif + +#define LDBL_TRUE_MIN 6.47517511943802511092443895822764655e-4966L +#define LDBL_MIN 3.36210314311209350626267781732175260e-4932L +#define LDBL_MAX 1.18973149535723176508575932662800702e+4932L +#define LDBL_EPSILON 1.92592994438723585305597794258492732e-34L + +#define LDBL_MANT_DIG 113 +#define LDBL_MIN_EXP (-16381) +#define LDBL_MAX_EXP 16384 + +#define LDBL_DIG 33 +#define LDBL_MIN_10_EXP (-4931) +#define LDBL_MAX_10_EXP 4932 + +#define DECIMAL_DIG 36 -- GitLab