https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100361
--- Comment #3 from Patrick Palka <ppalka at gcc dot gnu.org> --- (In reply to Jonathan Wakely from comment #2) > Patrick, is the table an optimization, or essential? We might be able to > avoid it, but he functions would be much slower. The tables are essential for Ryu's d2exp_buffered_n and d2fixed_buffered_n routines, which we use for fast explicit-precision formatting of float/double. > > Maybe we should just disable the floating-point to_chars for 16-bit targets. Agreed.. though in theory we could just go through printf as a fallback for d2exp_buffered_n and d2fixed_buffered_n on these targets. Btw, we already disable the floating-point to_chars on targets without a binary64 double. So is our test for detecting binary64 not accurate enough, or are these 16-bit targets whose double type really is binary64?