|
Message-id: <407BD2A5-E4A4-48A6-832E-C6F9479466D1@mac.com>
Date: Fri, 15 Nov 2013 12:25:07 -0600
From: James Gregurich <bayoubengal@....com>
To: musl@...ts.openwall.com
Subject: question float.h & powerpc
Hi.
I’m puzzled by the long double settings for powerpc.
bits/float.h has
#define FLT_ROUNDS 1
#define FLT_EVAL_METHOD 0
#define LDBL_TRUE_MIN 4.9406564584124654e-324
#define LDBL_MIN 2.2250738585072014e-308
#define LDBL_MAX 1.7976931348623157e+308
#define LDBL_EPSILON 2.2204460492503131e-16
#define LDBL_MANT_DIG 53
#define LDBL_MIN_EXP (-1021)
#define LDBL_MAX_EXP 1024
#define LDBL_DIG 15
#define LDBL_MIN_10_EXP (-307)
#define LDBL_MAX_10_EXP 308
#define DECIMAL_DIG 17
the clang source code shows
// PPC-LINUX:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
// PPC-LINUX:#define __LDBL_DIG__ 31
// PPC-LINUX:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
// PPC-LINUX:#define __LDBL_HAS_DENORM__ 1
// PPC-LINUX:#define __LDBL_HAS_INFINITY__ 1
// PPC-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
// PPC-LINUX:#define __LDBL_MANT_DIG__ 106
// PPC-LINUX:#define __LDBL_MAX_10_EXP__ 308
// PPC-LINUX:#define __LDBL_MAX_EXP__ 1024
// PPC-LINUX:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
// PPC-LINUX:#define __LDBL_MIN_10_EXP__ (-291)
// PPC-LINUX:#define __LDBL_MIN_EXP__ (-968)
// PPC-LINUX:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
I believe that LDBL_MANT_DIG of 53 is for an 8 byte long double, but powerpc uses 16 byte long doubles and has a LDBL_MANT_DIG value of 106. Why is there a discrepancy? I note that the i386 value is correct at 64. What do I need to do to reconcile this difference to allow the library’s configure script to complete the long double test correctly?
-James
Content of type "text/html" skipped
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.