OSDN Git Service

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