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 {