OSDN Git Service

cc4bf882d8b700bd74b3a04a6c9027733737f528
[pf3gnuchains/gcc-fork.git] / libquadmath / ChangeLog
1 2011-02-28  Jakub Jelinek  <jakub@redhat.com>
2
3         * printf/quadmath-printf.c (quadmath_snprintf): Make sure
4         that for size > 0 str is always zero terminated.
5
6 2011-02-20  Jakub Jelinek  <jakub@redhat.com>
7
8         PR bootstrap/47827
9         * printf/quadmath-printf.h (NAN): Redefine to __builtin_nanf ("").
10
11 2011-02-17  Jakub Jelinek  <jakub@redhat.com>
12
13         * libquadmath.texi (FLT128_DIG, FLT128_MIN_10_EXP,
14         FLT128_MAX_10_EXP): Document.
15         (strtoflt128): Remove obsolete comment.
16         * configure.ac (HAVE_STRTOULL): New check.
17         * printf/gmp-impl.h (mpn_construct_float128): New prototype,
18         define.
19         * printf/mul_n.c: Include <config.h>.
20         * printf/add_n.c: Likewise.
21         * printf/cmp.c: Likewise.
22         * printf/fpioconst.c: Likewise.
23         * printf/mul_1.c: Likewise.
24         * printf/rshift.c: Likewise.
25         * printf/lshift.c: Likewise.
26         * printf/submul_1.c: Likewise.
27         * printf/sub_n.c: Likewise.
28         * printf/divrem.c: Likewise.
29         * printf/addmul_1.c: Likewise.
30         * printf/mul.c: Likewise.
31         * printf/quadmath-printf.h (isupper, isdigit, tolower): Change
32         to avoid evaluating argument multiple times.
33         (isxdigit): Redefine.
34         * strtod/strtoflt128.c: New file.
35         * strtod/strtod_l.c: New file.
36         * strtod/mpn2flt128.c: New file.
37         * strtod/grouping.h: New file.
38         * strtod/tens_in_limb.c: New file.
39         * gdtoa/arith.h: Removed.
40         * gdtoa/gd_qnan.h: Removed.
41         * gdtoa/gdtoa_fltrnds.h: Removed.
42         * gdtoa/gdtoa.h: Removed.
43         * gdtoa/gdtoaimp.h: Removed.
44         * gdtoa/gethex.c: Removed.
45         * gdtoa/gmisc.c: Removed.
46         * gdtoa/hd_init.c: Removed.
47         * gdtoa/hexnan.c: Removed.
48         * gdtoa/makefile: Removed.
49         * gdtoa/misc.c: Removed.
50         * gdtoa/README.gdtoa: Removed.
51         * gdtoa/smisc.c: Removed.
52         * gdtoa/strtodg.c: Removed.
53         * gdtoa/strtopQ.c: Removed.
54         * gdtoa/sum.c: Removed.
55         * quadmath.h (FLT128_DIG, FLT128_MIN_10_EXP, FLT128_MAX_10_EXP):
56         Define.
57         * Makefile.am (libquadmath_la_SOURCES): Remove gdtoa/*, add
58         strtod/strtoflt128.c, strtod/mpn2flt128.c and strtod/tens_in_limb.c.
59         * config.h.in: Regenerated.
60         * configure: Regenerated.
61         * Makefile.in: Regenerated.
62
63 2011-02-16  Jakub Jelinek  <jakub@redhat.com>
64
65         * printf/quadmath-printf.c: Also check __GLIBC__ when checking
66         whether workarounds for printf hook handling should be added.
67
68         * configure.ac: Check for locale.h too.
69         (USE_LOCALE_SUPPORT): Remove check.
70         (USE_NL_LANGINFO, USE_NL_LANGINFO_WC, USE_LOCALECONV): New checks.
71         (USE_I18_NUMBER_H): Check also for _NL_CTYPE_MB_CUR_MAX.
72         * printf/printf_fphex.c (__quadmath_printf_fphex): Use nl_langinfo
73         or localeconv for narrow version and nl_langinfo if USE_NL_LANGINFO_WC
74         for wide version.
75         * printf/quadmath-printf.h: Include locale.h if HAVE_LOCALE_H.
76         * printf/printf_fp.c (USE_I18N_NUMBER_H): Don't define to 0.
77         (__quadmath_printf_fp): Use nl_langinfo or localeconv for narrow
78         version and nl_langinfo if USE_NL_LANGINFO_WC for wide version.
79         Guard nl_langinfo (_NL_CTYPE_MB_CUR_MAX) use with
80         USE_I18N_NUMBER_H #ifdef.
81         * configure: Regenerated.
82         * config.h.in: Regenerated.
83
84 2011-02-14  Jakub Jelinek  <jakub@redhat.com>
85
86         PR bootstrap/47736
87         * configure.ac (HAVE_PRINTF_HOOKS): Test if printf_info struct has
88         user field.
89         * printf/quadmath-printf.c (quadmath_snprintf): Clear whole info
90         field instead of setting individual fields to 0.  Don't set info.user
91         to -1.
92         * configure: Regenerated.
93
94         * configure.ac (HAVE_HIDDEN_VISIBILITY): Test with -Werror in CFLAGS.
95         * printf/printf_fp.c: Don't include <alloca.h>.
96         * printf/quadmath-printf.h (_itoa): Redefine to __quadmath_itoa.
97         * configure: Regenerated.
98
99         PR fortran/47642
100         * libquadmath.texi (quadmath_snprintf): Document.
101         (quadmath_flt128tostr): Remove.
102         * Makefile.am (libquadmath_la_SOURCES): Add printf/*.c.
103         Remove  quadmath_io.c, gdtoa/gdtoa.c, gdtoa/g__fmt.c,
104         gdtoa/g_Qfmt.c, gdtoa/dmisc.c and gdtoa/ulp.c.
105         * quadmath.h (quadmath_snprintf): New prototype.
106         (quadmath_flt128tostr): Remove.
107         * quadmath_weak.h (quadmath_snprintf): Add.
108         (quadmath_flt128tostr): Remove.
109         * configure.ac: New AC_CHECK_HEADERS headers: langinfo.h, wchar.h,
110         wctype.h, limits.h, ctype.h, printf.h, errno.h.
111         (AC_USE_SYSTEM_EXTENSIONS): Add.
112         (HAVE_HIDDEN_VISIBILITY, HAVE_PRINTF_HOOKS,
113         USE_LOCALE_SUPPORT, USE_I18N_NUMBER_H): New checks.
114         * quadmath.map (QUADMATH_1.0): Add quadmath_snprintf.  Remove
115         quadmath_flt128tostr.
116         * printf/printf_fphex.c: New file.
117         * printf/_itowa.h: New file.
118         * printf/mul_n.c: New file.
119         * printf/quadmath-printf.h: New file.
120         * printf/submul_1.c: New file.
121         * printf/quadmath-printf.c: New file.
122         * printf/gmp-impl.h: New file.
123         * printf/lshift.c: New file.
124         * printf/fpioconst.h: New file.
125         * printf/add_n.c: New file.
126         * printf/cmp.c: New file.
127         * printf/sub_n.c: New file.
128         * printf/mul.c: New file.
129         * printf/divrem.c: New file.
130         * printf/addmul_1.c: New file.
131         * printf/printf_fp.c: New file.
132         * printf/_itoa.h: New file.
133         * printf/fpioconst.c: New file.
134         * printf/_i18n_number.h: New file.
135         * printf/flt1282mpn.c: New file.
136         * printf/rshift.c: New file.
137         * printf/mul_1.c: New file.
138         * quadmath_io.c: Removed.
139         * gdtoa/gdtoa.c: Removed.
140         * gdtoa/g__fmt.c: Removed.
141         * gdtoa/g_Qfmt.c: Removed.
142         * gdtoa/dmisc.c: Removed.
143         * gdtoa/ulp.c: Removed.
144         * config.h.in: Regenerated.
145         * configure: Regenerated.
146         * Makefile.in: Regenerated.
147
148 2011-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
149
150         * Makefile.in: Regenerate.
151         * aclocal.m4: Likewise.
152         * configure: Likewise.
153
154 2011-01-31  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
155
156         PR libquadmath/47293
157         * gdtoa/qd_qnan.h: Fix NAN bit patterns.
158         * gdtoa/strtopQ.c (strtoflt128): Handle endianess with NAN.
159
160 2011-01-17  Tobias Burnus  <burnus@net-b.de>
161
162         PR fortran/47295
163         * libquadmath.text: Document typedef and constants.
164
165 2011-01-17  Tobias Burnus  <burnus@net-b.de>
166
167         PR fortran/46817
168         * quadmath-imp.h: Refer to libquadmath not ot libiberty,
169         bump copyright year and use /**/ instead of // comments.
170         * quadmath.h: Ditto.
171         * quadmath-weak.h: Ditto.
172         * quadmath_io.c: Ditto.
173
174 2011-01-16  Jakub Jelinek  <jakub@redhat.com>
175
176         PR libfortran/47322
177         * math/remquoq.c (remquoq): Use uint64_t type instead of u_int64_t.
178
179         PR fortran/46625
180         * quadmath.map (QUADMATH_1.0): Remove quadmath_strtopQ
181         and quadmath_dtoaq.  Add strtoflt128 and quadmath_flt128tostr.
182         * quadmath_weak.h (quadmath_strtopQ, quadmath_dtoaq): Remove.
183         (strtoflt128, quadmath_flt128tostr): Add.
184         * gdtoa/strtopQ.c (quadmath_strtopQ): Rename to...
185         (strtoflt128): ... this.  Return __float128, instead of writing
186         to memory pointed by last argument.
187         * quadmath.h: Use C style comments instead of C++ style.
188         (quadmath_strtopQ, quadmath_dtoaq): Remove prototypes.
189         (strtoflt128, quadmath_flt128tostr): Add prototypes.
190         * libquadmath.texi (quadmath_dtoaq): Rename to quadmath_flt128tostr.
191         (quadmath_strtopQ): Rename to strtoflt128.  Adjust prototype,
192         adjust examples.
193         * quadmath_io.c (quadmath_dtoaq): Rename to...
194         (quadmath_flt128tostr): ... this.
195
196         * quadmath.h (__quadmath_throw, __quadmath_nth): Define.
197         Use it for all prototypes.
198
199         PR fortran/46416
200         * quadmath.h (cbrtq, finiteq, isnanq, signbitq, sqrtq): Remove
201         const from prototype argument.
202         (cimagq, conjq, cprojq, crealq, fdimq, fmaxq, fminq, ilogbq,
203         llrintq, log2q, lrintq, nearbyintq, remquoq): New prototypes.
204         (__quadmath_extern_inline): Define.
205         (cimagq, conjq, crealq): New inlines.
206         * Makefile.am (libquadmath_la_SOURCES): Add math/cimagq.c,
207         math/conjq.c, math/cprojq.c, math/crealq.c, math/fdimq.c,
208         math/fmaxq.c, math/fminq.c, math/ilogbq.c, math/llrintq.c,
209         math/log2q.c, math/lrintq.c, math/nearbyintq.c and math/remquoq.c.
210         * Makefile.in: Regenerated.
211         * quadmath_weak.h (cimagq, conjq, cprojq, crealq, fdimq, fmaxq,
212         fminq, ilogbq, llrintq, log2q, lrintq, nearbyintq, remquoq): Add.
213         * quadmath-imp.h (__LITTLE_ENDIAN__): Don't define.
214         (ieee854_float128): Use __BYTE_ORDER == __ORDER_BIG_ENDIAN__
215         tests instead of __BIG_ENDIAN__.
216         * quadmath.map (QUADMATH_1.0): Add cimagq, conjq, cprojq, crealq,
217         fdimq, fmaxq, fminq, ilogbq, llrintq, log2q, lrintq, nearbyintq
218         and remquoq.
219         * libquadmath.texi (cimagq, conjq, cprojq, crealq, fdimq, fmaxq,
220         fminq, ilogbq, llrintq, log2q, lrintq, nearbyintq, remquoq): Add.
221         * math/cprojq.c: New file.
222         * math/ilogbq.c: New file.
223         * math/fminq.c: New file.
224         * math/llrintq.c: New file.
225         * math/log2q.c: New file.
226         * math/lrintq.c: New file.
227         * math/crealq.c: New file.
228         * math/nearbyintq.c: New file.
229         * math/fmaxq.c: New file.
230         * math/conjq.c: New file.
231         * math/remquoq.c: New file.
232         * math/cimagq.c: New file.
233         * math/fdimq.c: New file.
234
235         * math/ldexpq.c: Include errno.h.  Set errno to ERANGE if needed.
236
237         PR fortran/46416
238         * quadmath.h (cacosq, cacoshq, casinq, casinhq, catanq, catanhq):
239         New prototypes.
240         (M_Eq, M_LOG2Eq, M_LOG10Eq, M_LN2q, M_LN10q, M_PIq, M_PI_2q, M_PI_4q,
241         M_1_PIq, M_2_PIq, M_2_SQRTPIq, M_SQRT2q, M_SQRT1_2q): Define.
242         * quadmath_weak.h (cacosq, cacoshq, casinq, casinhq, catanq,
243         catanhq): Add.
244         * quadmath-imp.h (fpclassifyq, QUADFP_NAN, QUADFP_INFINITE,
245         QUADFP_ZERO, QUADFP_SUBNORMAL, QUADFP_NORMAL): Define.
246         * quadmath.map (QUADMATH_1.0): Add cacosq, cacoshq, casinq, casinhq,
247         catanq and catanhq.
248         * Makefile.am (libquadmath_la_SOURCES): Add math/cacosq.c,
249         math/cacoshq.c, math/casinq.c, math/casinhq.c, math/catanq.c
250         and math/catanhq.c.
251         * Makefile.in: Regenerated.
252         * libquadmath.texi (cacosq, cacoshq, casinq, casinhq,
253         catanq, catanhq): Add.
254         * math/cacoshq.c: New file.
255         * math/cacosq.c: New file.
256         * math/catanq.c: New file.
257         * math/catanhq.c: New file.
258         * math/casinq.c: New file.
259         * math/casinhq.c: New file.
260
261         * math/hypotq.c (hypotq): Use Q suffix instead of L.
262         * math/atan2q.c (tiny, pi_o_4, pi_o_2, pi, pi_lo, atan2q): Likewise.
263         * math/cosq.c (cosq): Likewise.
264
265         PR fortran/46402
266         * quadmath.map (QUADMATH_1.0): Add fmaq.
267         * configure.ac: Check for fenv.h, feholdexcept, fesetround,
268         feupdateenv, fesetenv and fetestexcept.
269         * configure: Regenerated.
270         * config.h.in: Regenerated.
271         * quadmath.h (fmaq): New prototype.
272         * quadmath_weak.h (fmaq): Add.
273         * Makefile.am (libquadmath_la_SOURCES): Add math/fmaq.c.
274         * Makefile.in: Regenerated.
275         * quadmath-imp.h: Include config.h.
276         * math/expq.c: Include fenv.h.
277         (USE_FENV_H): Define if libm support for fe* is there.
278         (expq): Add fesetround etc. support if USE_FENV_H is defined.
279         * math/fmaq.c: New file.
280         * libquadmath.texi (fmaq): Add.
281
282 2011-01-14  Tobias Burnus  <burnus@net-b.de>
283
284         PR fortran/47182
285         * configure.ac: Use ACX_BUGURL.
286         * libquadmath.texi: Include libquadmath-vers.texi for BUGURL.
287         * Makefile.am: Create libquadmath-vers.texi.
288         * configure.in: Regenerate.
289         * Makefile.in: Regenerate.
290
291 2011-01-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
292
293         PR fortran/47174
294         * Makefile.am (libquadmath.info): Unconditionally override
295         target, not only if BUILD_LIBQUADMATH.
296         * Makefile.in: Regenerate.
297         * configure.ac (AM_INIT_AUTOMAKE): Add -Wno-override option to
298         avoid warning from automake.
299
300 2010-12-19  Tobias Burnus  <burnus@net-b.de>
301
302         PR fortran/46520
303         * configure.ac: Do not call AC_CHECK_LIB for gcc_no_link.
304         * configure: Regenerate
305
306 2010-12-13  Tobias Burnus  <burnus@net-b.de>
307
308         PR fortran/46625
309         * gdtoa/gdtoaimp.h: Mangle internal functions by
310         prefixing them with __quadmath. Don't use gdtoa's strcp(y).
311         * gdtoa/g_Qfmt.c (g_Qfmt): Use strcpy instead of strcp.
312         * gdtoa/misc.c (strcpy): Renamed from strcp and only use
313         if NO_STRING_H is set.
314         * quadmath-imp.h (__quadmath_rem_pio2q, __quadmath_kernel_sincosq
315         __quadmath_kernel_sinq, __quadmath_kernel_cosq): Added
316         __quadmath prefix to internal functions.
317         * math/cosq.c (cosq): Ditto.
318         * math/sinq.c (cosq): Ditto.
319         * math/tanq.c (tanq,__quadmath_kernel_tanq): Ditto.
320         * math/rem_pio2q.c (rem_pio2, __quadmath_kernel_rem_pio2): Ditto.
321         * math/sinq_kernel.c (__quadmath_kernel_sinq): Ditto.
322         * math/cosq_kernel.c (__quadmath_kernel_cosq): Ditto.
323
324 2010-12-08  Tobias Burnus  <burnus@net-b.de>
325
326         PR fortran/46772
327         * gdtoa/gdtoa.h: Include stdlib.h instead of declare strtod.
328         * gdtoa/gdtoaimp.h: Don't declare strtod.
329
330 2010-12-08  Tobias Burnus  <burnus@net-b.de>
331
332         PR fortran/46520
333         * configure.ac: Use GCC_TRY_COMPILE_OR_LINK instead of
334         AC_TRY_LINK and cache libquad_have_float128.
335         * configure: Regenerate.
336
337 2010-12-08  Tobias Burnus  <burnus@net-b.de>
338
339         PR fortran/46543
340         * configure.ac: Add texinfo checks.
341         * Makefile.am: Handle .texi documentation.
342         * libquadmath.texi: New.
343         * configure: Regenerated.
344         * Makefile.in: Regenerated.
345
346 2010-12-06  Tobias Burnus  <burnus@net-b.de>
347
348         PR fortran/46817
349         * quadmath-imp.h: Add LGPL header.
350         * quadmath.h: Add LGPL header.
351         * quadmath_io.c: Add LGPL header.
352         * quadmath_weak.h: Add LGPL header.
353
354 2010-12-06  Dave Korn  <dave.korn.cygwin@gmail.com>
355
356         PR target/40125
357         PR lto/46695
358         * configure.ac: Invoke ACX_LT_HOST_FLAGS.
359         * Makefile.am (libquadmath_la_LDFLAGS): Use lt_host_flags.
360         * aclocal.m4: Regenerate.
361         * configure: Regenerate.
362         * Makefile.in: Regenerate.
363
364 2010-11-30  Tobias Burnus  <burnus@net-b.de>
365
366         PR fortran/46594
367         * Makefile.am: Install include files in
368         target/version specific directory.
369         * Makefile.in: Regenerate.
370
371 2010-11-30  Tobias Burnus  <burnus@net-b.de>
372
373         * acinclude.m4 (LIBGOMP_CHECK_SYNC_BUILTINS,
374         LIBGOMP_CHECK_ATTRIBUTE_VISIBILITY,
375         LIBGOMP_CHECK_ATTRIBUTE_DLLEXPORT): Remove.
376
377 2010-11-29  Kai Tietz  <kai.tietz@onevision.com>
378
379         * configure: Regenerated.
380         * Makefile.in: Regenerated.
381         * configure.ac (ACX_NONCANONICAL_TARGET): Call it.
382         (target_alias): Use AC_SUBST for it.
383         (GCC_NO_EXECUTABLES): Call it.
384         (AC_PROG_CC): Improve multilib handling.
385         Check that gcc is used for compilation.
386         Use pattern from libssp for symbol versioning checking.
387         * Makefile.am (LTLDFLAGS): Removed.
388         (libquadmath_la_LDFLAGS): Add -no-undefined.
389         (libquadmath_la_LINK): Commented out.
390         (libquadmath_la_DEPENDENCIES): Add libquadmath_la_LIBADD.
391         (AM_MAKEFLAGS): Add hack for argument passing by top-level.
392         (MAKEOVERRIDES): New.
393         * aclocal.m4: Regenerated.
394
395 2010-11-19  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
396
397         * Makefile.am (libquadmath_la_LIBADD): Move -lm ...
398         (libquadmath_la_LDFLAGS): ... here.
399         (quadmath.map-sun): Tabify.
400         Fix sed expression.
401         * Makefile.in: Regenerate.
402
403 2010-11-16  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
404             Tobias Burnus  <burnus@net-b.de>
405
406         PR fortran/32049
407         Initial implementation and checkin.