• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /* Split a 'long double' into fraction and mantissa, for hexadecimal printf.
2    Copyright (C) 2007, 2009-2012 Free Software Foundation, Inc.
3 
4    This program is free software: you can redistribute it and/or modify
5    it under the terms of the GNU General Public License as published by
6    the Free Software Foundation; either version 3 of the License, or
7    (at your option) any later version.
8 
9    This program is distributed in the hope that it will be useful,
10    but WITHOUT ANY WARRANTY; without even the implied warranty of
11    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12    GNU General Public License for more details.
13 
14    You should have received a copy of the GNU General Public License
15    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
16 
17 /* Write a finite, positive number x as
18      x = mantissa * 2^exp
19    where exp >= LDBL_MIN_EXP - 1,
20          mantissa < 2.0,
21          if x is not a denormalized number then mantissa >= 1.0.
22    Store exp in *EXPPTR and return mantissa.  */
23 extern long double printf_frexpl (long double x, int *expptr);
24