OSDN Git Service

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