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