Like mips64 and sparc64, the 128-bit long double floating point format
needs the EXT_IMPLICIT_NBIT define.  This fixes the lib/libc/printf
regress test.

While there, remove struct ieee_ldouble, which isn't used and doesn't
exist on other architectures.

ok?


Index: arch/arm64/include/ieee.h
===================================================================
RCS file: /cvs/src/sys/arch/arm64/include/ieee.h,v
retrieving revision 1.2
diff -u -p -r1.2 ieee.h
--- arch/arm64/include/ieee.h   11 Jan 2017 00:18:22 -0000      1.2
+++ arch/arm64/include/ieee.h   16 Apr 2017 14:26:33 -0000
@@ -90,6 +90,8 @@
 #define        EXT_FRACLBITS   32
 #define        EXT_FRACBITS    112
 
+#define        EXT_IMPLICIT_NBIT
+
 #define        EXT_TO_ARRAY32(p, a) do {               \
        (a)[0] = (uint32_t)(p)->ext_fracl;      \
        (a)[1] = (uint32_t)(p)->ext_fraclm;     \
@@ -108,13 +110,6 @@ struct ieee_double {
        u_int   dbl_frach:20;
        u_int   dbl_exp:11;
        u_int   dbl_sign:1;
-};
-
-struct ieee_ldouble {
-       u_long  ldbl_fracl;
-       u_long  ldbl_frach:20;
-       u_int   ldbl_exp:11;
-       u_int   ldbl_sign:1;
 };
 
 struct ieee_ext {

Reply via email to