]> git.ipfire.org Git - thirdparty/gcc.git/blob - libgfortran/ChangeLog
Daily bump.
[thirdparty/gcc.git] / libgfortran / ChangeLog
1 2022-01-25 Francois-Xavier Coudert <fxcoudert@gmail.com>
2
3 * ieee/issignaling_fallback.h: Fix GCC-specific preprocessor
4 macros.
5
6 2022-01-25 Jakub Jelinek <jakub@redhat.com>
7
8 * ieee/issignaling_fallback.h (__issignalingl): Define for
9 IBM extended long double are returning __issignaling on the
10 first double.
11
12 2022-01-25 Francois-Xavier Coudert <fxcoudert@gmail.com>
13
14 * ieee/issignaling_fallback.h: fix preprocessor condition.
15
16 2022-01-24 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
17
18 * ieee/issignaling_fallback.h: New file.
19 * ieee/ieee_helper.c: Include issignaling_fallback.h when target
20 does not define issignaling macro.
21
22 2022-01-17 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
23
24 * ieee/issignaling_fallback.h: Remove file.
25
26 2022-01-17 Thomas Koenig <tkoenig@gcc.gnu.org>
27
28 * runtime/environ.c: Allow for multiple default values so that
29 separate default specifications for IBM long double format and
30 endianness are possible.
31
32 2022-01-16 Francois-Xavier Coudert <fxcoudert@gmail.com>
33
34 * ieee/issignaling_fallback.h: New file.
35
36 2022-01-16 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
37
38 PR fortran/82207
39 * mk-kinds-h.sh: Add values for TINY.
40 * ieee/ieee_arithmetic.F90: Call C helper functions for
41 IEEE_VALUE.
42 * ieee/ieee_helper.c: New functions ieee_value_helper_N for each
43 floating-point type.
44
45 2022-01-14 Jakub Jelinek <jakub@redhat.com>
46
47 PR libfortran/104006
48 * Makefile.am (BUILT_SOURCES): Don't include $(version_dep).
49 (clean-local): Remove $(version_dep).
50 * Makefile.in: Regenerated.
51
52 2022-01-13 Jakub Jelinek <jakub@redhat.com>
53
54 PR libfortran/104006
55 * Makefile.am (gfortran.map-sun): Rename target to ...
56 (gfortran.ver-sun): ... this.
57 * Makefile.in: Regenerated.
58
59 2022-01-12 Jakub Jelinek <jakub@redhat.com>
60
61 * libgfortran.h (POWER_IEEE128): Use __GLIBC_PREREQ in a separate
62 #if directive inside of #if ... && defined __GLIBC_PREREQ.
63
64 2022-01-11 Jakub Jelinek <jakub@redhat.com>
65
66 * io/transfer.c (unformatted_read, unformatted_write): When
67 byteswapping IBM extended real(kind=16), handle it as byteswapping
68 two real(kind=8) values.
69
70 2022-01-11 Thomas Koenig <tkoenig@gcc.gnu.org>
71
72 * runtime/environ.c (R16_IEEE): New macro.
73 (R16_IBM): New macro.
74 (next_token): Handle IBM R16 conversion cases.
75 (push_token): Likewise.
76 (mark_single): Likewise.
77 (do_parse): Likewise, initialize endian.
78
79 2022-01-11 Thomas Koenig <tkoenig@gcc.gnu.org>
80
81 * Makefile.in: Regenerate.
82 * io/file_pos.c (unformatted_backspace): Mask off
83 R16 parts for convert.
84 * io/inquire.c (inquire_via_unit): Add cases for
85 R16 parts.
86 * io/open.c (st_open): Add cases for R16 conversion.
87 * io/transfer.c (unformatted_read): Adjust for R16 conversions.
88 (unformatted_write): Likewise.
89 (us_read): Mask of R16 bits.
90 (data_transfer_init): Likewiese.
91 (write_us_marker): Likewise.
92
93 2022-01-11 Jakub Jelinek <jakub@redhat.com>
94
95 * Makefile.am (AM_FCFLAGS): Add -fbuilding-libgfortran after
96 -fallow-leading-underscore.
97 * Makefile.in: Regenerated.
98
99 2022-01-11 Jakub Jelinek <jakub@redhat.com>
100
101 * libgfortran.h (__copysignieee128, __fmaieee128, __fmodieee128):
102 Declare.
103 * intrinsics/trigd.c (COPYSIGN, FMOD, FABS, FMA, SIN, COS, TAN): If
104 POWER_IEEE128 is defined, define these for kind 17 include.
105 * intrinsics/trigd_lib.inc (COPYSIGN, FMOD, FABS, FMA, SIN, COS, TAN):
106 Don't define if COPYSIGN is already defined.
107
108 2022-01-11 Jakub Jelinek <jakub@redhat.com>
109
110 * libgfortran.h (GFC_REAL_17_INFINITY, GFC_REAL_17_QUIET_NAN): Define.
111 (__erfcieee128): Declare.
112 * intrinsics/trigd.c (_gfortran_sind_r17, _gfortran_cosd_r17,
113 _gfortran_tand_r17): Define for HAVE_GFC_REAL_17.
114 * intrinsics/random.c (random_r17, arandom_r17, rnumber_17): Define.
115 * intrinsics/erfc_scaled.c (ERFC_SCALED): Define.
116 (erfc_scaled_r16): Use ERFC_SCALED macro.
117 (erfc_scaled_r17): Define.
118
119 2022-01-11 Jakub Jelinek <jakub@redhat.com>
120
121 * io/read.c (convert_real): Add missing break; for the
122 HAVE_GFC_REAL_17 case.
123
124 2022-01-11 Jakub Jelinek <jakub@redhat.com>
125
126 * io/write_float.def (CALCULATE_EXP): If HAVE_GFC_REAL_17, also use
127 CALCULATE_EXP(17).
128 (determine_en_precision): Use 17 instead of 16 as first EN_PREC
129 argument for kind 17.
130 (get_float_string): Use 17 instead of 16 as first FORMAT_FLOAT
131 argument for kind 17.
132
133 2022-01-11 Jakub Jelinek <jakub@redhat.com>
134
135 * libgfortran.h (__acoshieee128, __acosieee128, __asinhieee128,
136 __asinieee128, __atan2ieee128, __atanhieee128, __atanieee128,
137 __coshieee128, __cosieee128, __erfieee128, __expieee128,
138 __fabsieee128, __jnieee128, __log10ieee128, __logieee128,
139 __powieee128, __sinhieee128, __sinieee128, __sqrtieee128,
140 __tanhieee128, __tanieee128, __ynieee128): Formatting fixes.
141 (__strtoieee128, __snprintfieee128): Declare.
142 * io/io.h (default_width_for_float, default_precision_for_float):
143 Handle kind == 17.
144 * io/size_from_kind.c (size_from_real_kind, size_from_complex_kind):
145 Likewise.
146 * io/read.c (set_integer, si_max, convert_real, convert_infnan,
147 read_f): Likewise.
148 * io/write.c (extract_uint, size_from_kind, set_fnode_default):
149 Likewise.
150 * io/write_float.def (DTOA2Q, FDTOA2Q): Define for HAVE_GFC_REAL_17.
151 (determine_en_precision, get_float_string): Handle kind == 17.
152 * io/transfer128.c: Use also for HAVE_GFC_REAL_17, but don't drag in
153 libquadmath if POWER_IEEE128.
154 * Makefile.am (comma, PREPROCESS): New variables.
155 (gfortran.ver): New goal.
156 (version_arg, version_dep): Use gfortran.ver instead of
157 $(srcdir)/gfortran.map.
158 (gfortran.map-sun): Depend on and use gfortran.ver instead of
159 $(srcdir)/gfortran.map.
160 (BUILT_SOURCES): Add $(version_dep).
161 * Makefile.in: Regenerated.
162 * gfortran.map (GFORTRAN_8): Don't export
163 _gfortran_transfer_complex128, _gfortran_transfer_complex128_write,
164 _gfortran_transfer_real128 and _gfortran_transfer_real128_write if
165 HAVE_GFC_REAL_17 is defined.
166 (GFORTRAN_12): Export those here instead.
167
168 2022-01-11 Thomas Koenig <tkoenig@gcc.gnu.org>
169
170 * Makefile.am: Correct files for compilation flags. Add
171 -D__powerpc64__ for Fortran sources. Get kinds.inc from
172 grep of kinds.h and kinds-override.h.
173 * Makefile.in: Regenerate.
174 * config.h.in: Regenerate.
175 * configure: Regenerate.
176 * configure.ac: Add -mno-gnu-attribute to compile flags.
177 * generated/_abs_c17.F90: Regenerate.
178 * generated/_abs_r17.F90: Regenerate.
179 * generated/_acos_r17.F90: Regenerate.
180 * generated/_acosh_r17.F90: Regenerate.
181 * generated/_aimag_c17.F90: Regenerate.
182 * generated/_aint_r17.F90: Regenerate.
183 * generated/_anint_r17.F90: Regenerate.
184 * generated/_asin_r17.F90: Regenerate.
185 * generated/_asinh_r17.F90: Regenerate.
186 * generated/_atan2_r17.F90: Regenerate.
187 * generated/_atan_r17.F90: Regenerate.
188 * generated/_atanh_r17.F90: Regenerate.
189 * generated/_conjg_c17.F90: Regenerate.
190 * generated/_cos_c17.F90: Regenerate.
191 * generated/_cos_r17.F90: Regenerate.
192 * generated/_cosh_r17.F90: Regenerate.
193 * generated/_dim_r17.F90: Regenerate.
194 * generated/_exp_c17.F90: Regenerate.
195 * generated/_exp_r17.F90: Regenerate.
196 * generated/_log10_r17.F90: Regenerate.
197 * generated/_log_c17.F90: Regenerate.
198 * generated/_log_r17.F90: Regenerate.
199 * generated/_mod_r17.F90: Regenerate.
200 * generated/_sign_r17.F90: Regenerate.
201 * generated/_sin_c17.F90: Regenerate.
202 * generated/_sin_r17.F90: Regenerate.
203 * generated/_sinh_r17.F90: Regenerate.
204 * generated/_sqrt_c17.F90: Regenerate.
205 * generated/_sqrt_r17.F90: Regenerate.
206 * generated/_tan_r17.F90: Regenerate.
207 * generated/_tanh_r17.F90: Regenerate.
208 * kinds-override.h: Adjust to trunk.
209 Change condition to single line so it can be grepped.
210 * m4/specific.m4: Make sure that real=kind16 is used
211 for _r17.F90 and _c17.F90 files.
212 * m4/specific2.m4: Likewise.
213
214 2022-01-11 Jakub Jelinek <jakub@redhat.com>
215
216 * libgfortran.h (internal_pack_r17, internal_pack_c17,
217 internal_unpack_r17, internal_unpack_c17, pack_r17, pack_c17,
218 unpack0_r17, unpack0_c17, unpack1_r17, unpack1_c17, spread_r17,
219 spread_c17, spread_scalar_r17, spread_scalar_c17, cshift0_r17,
220 cshift0_c17, cshift1_4_r17, cshift1_8_r17, cshift1_16_r17,
221 cshift1_4_c17, cshift1_8_c17, cshift1_16_c17): Declare.
222 * gfortran.map (GFORTRAN_12): Export *_r17 and *_c17.
223
224 2022-01-11 Thomas Koenig <tkoenig@gcc.gnu.org>
225
226 * acinclude.m4 (LIBGFOR_CHECK_MATH_IEEE128): New macro.
227 * configure.ac: Use it.
228 * config.h.in: Regenerate.
229 * configure: Regenerate.
230
231 2022-01-11 Thomas Koenig <tkoenig@gcc.gnu.org>
232
233 * Makefile.am: Fix pattern substitution for _r17 and _c17.
234 * Makefile.in: Regenerate.
235
236 2022-01-11 Thomas Koenig <tkoenig@gcc.gnu.org>
237
238 * Makefile.am: Add _r17 and _c17 files. Build them
239 with -mabi=ieeelongdouble on POWER.
240 * Makefile.in: Regenerate.
241 * configure: Regenerate.
242 * configure.ac: New flag HAVE_REAL_17.
243 * kinds-override.h: (HAVE_GFC_REAL_17): New macro.
244 (HAVE_GFC_COMPLEX_17): New macro.
245 (GFC_REAL_17_HUGE): New macro.
246 (GFC_REAL_17_LITERAL_SUFFIX): New macro.
247 (GFC_REAL_17_LITERAL): New macro.
248 (GFC_REAL_17_DIGITS): New macro.
249 (GFC_REAL_17_RADIX): New macro.
250 * libgfortran.h (POWER_IEEE128): New macro.
251 (gfc_array_r17): Typedef.
252 (GFC_DTYPE_REAL_17): New macro.
253 (GFC_DTYPE_COMPLEX_17): New macro.
254 (__acoshieee128): Prototype.
255 (__acosieee128): Prototype.
256 (__asinhieee128): Prototype.
257 (__asinieee128): Prototype.
258 (__atan2ieee128): Prototype.
259 (__atanhieee128): Prototype.
260 (__atanieee128): Prototype.
261 (__coshieee128): Prototype.
262 (__cosieee128): Prototype.
263 (__erfieee128): Prototype.
264 (__expieee128): Prototype.
265 (__fabsieee128): Prototype.
266 (__jnieee128): Prototype.
267 (__log10ieee128): Prototype.
268 (__logieee128): Prototype.
269 (__powieee128): Prototype.
270 (__sinhieee128): Prototype.
271 (__sinieee128): Prototype.
272 (__sqrtieee128): Prototype.
273 (__tanhieee128): Prototype.
274 (__tanieee128): Prototype.
275 (__ynieee128): Prototype.
276 * m4/mtype.m4: Make a bit more readable. Add KIND=17.
277 * generated/_abs_c17.F90: New file.
278 * generated/_abs_r17.F90: New file.
279 * generated/_acos_r17.F90: New file.
280 * generated/_acosh_r17.F90: New file.
281 * generated/_aimag_c17.F90: New file.
282 * generated/_aint_r17.F90: New file.
283 * generated/_anint_r17.F90: New file.
284 * generated/_asin_r17.F90: New file.
285 * generated/_asinh_r17.F90: New file.
286 * generated/_atan2_r17.F90: New file.
287 * generated/_atan_r17.F90: New file.
288 * generated/_atanh_r17.F90: New file.
289 * generated/_conjg_c17.F90: New file.
290 * generated/_cos_c17.F90: New file.
291 * generated/_cos_r17.F90: New file.
292 * generated/_cosh_r17.F90: New file.
293 * generated/_dim_r17.F90: New file.
294 * generated/_exp_c17.F90: New file.
295 * generated/_exp_r17.F90: New file.
296 * generated/_log10_r17.F90: New file.
297 * generated/_log_c17.F90: New file.
298 * generated/_log_r17.F90: New file.
299 * generated/_mod_r17.F90: New file.
300 * generated/_sign_r17.F90: New file.
301 * generated/_sin_c17.F90: New file.
302 * generated/_sin_r17.F90: New file.
303 * generated/_sinh_r17.F90: New file.
304 * generated/_sqrt_c17.F90: New file.
305 * generated/_sqrt_r17.F90: New file.
306 * generated/_tan_r17.F90: New file.
307 * generated/_tanh_r17.F90: New file.
308 * generated/bessel_r17.c: New file.
309 * generated/cshift0_c17.c: New file.
310 * generated/cshift0_r17.c: New file.
311 * generated/cshift1_16_c17.c: New file.
312 * generated/cshift1_16_r17.c: New file.
313 * generated/cshift1_4_c17.c: New file.
314 * generated/cshift1_4_r17.c: New file.
315 * generated/cshift1_8_c17.c: New file.
316 * generated/cshift1_8_r17.c: New file.
317 * generated/findloc0_c17.c: New file.
318 * generated/findloc0_r17.c: New file.
319 * generated/findloc1_c17.c: New file.
320 * generated/findloc1_r17.c: New file.
321 * generated/in_pack_c17.c: New file.
322 * generated/in_pack_r17.c: New file.
323 * generated/in_unpack_c17.c: New file.
324 * generated/in_unpack_r17.c: New file.
325 * generated/matmul_c17.c: New file.
326 * generated/matmul_r17.c: New file.
327 * generated/matmulavx128_c17.c: New file.
328 * generated/matmulavx128_r17.c: New file.
329 * generated/maxloc0_16_r17.c: New file.
330 * generated/maxloc0_4_r17.c: New file.
331 * generated/maxloc0_8_r17.c: New file.
332 * generated/maxloc1_16_r17.c: New file.
333 * generated/maxloc1_4_r17.c: New file.
334 * generated/maxloc1_8_r17.c: New file.
335 * generated/maxval_r17.c: New file.
336 * generated/minloc0_16_r17.c: New file.
337 * generated/minloc0_4_r17.c: New file.
338 * generated/minloc0_8_r17.c: New file.
339 * generated/minloc1_16_r17.c: New file.
340 * generated/minloc1_4_r17.c: New file.
341 * generated/minloc1_8_r17.c: New file.
342 * generated/minval_r17.c: New file.
343 * generated/norm2_r17.c: New file.
344 * generated/pack_c17.c: New file.
345 * generated/pack_r17.c: New file.
346 * generated/pow_c17_i16.c: New file.
347 * generated/pow_c17_i4.c: New file.
348 * generated/pow_c17_i8.c: New file.
349 * generated/pow_r17_i16.c: New file.
350 * generated/pow_r17_i4.c: New file.
351 * generated/pow_r17_i8.c: New file.
352 * generated/product_c17.c: New file.
353 * generated/product_r17.c: New file.
354 * generated/reshape_c17.c: New file.
355 * generated/reshape_r17.c: New file.
356 * generated/spread_c17.c: New file.
357 * generated/spread_r17.c: New file.
358 * generated/sum_c17.c: New file.
359 * generated/sum_r17.c: New file.
360 * generated/unpack_c17.c: New file.
361 * generated/unpack_r17.c: New file.
362 * m4/ifunc.m4: New file.
363
364 2022-01-10 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
365
366 PR fortran/82207
367 * Makefile.am: Pass -fsignaling-nans for IEEE files.
368 * Makefile.in: Regenerate.
369 * ieee/ieee_helper.c: Use issignaling macro to recognized
370 signaling NaNs.
371
372 \f
373 Copyright (C) 2022 Free Software Foundation, Inc.
374
375 Copying and distribution of this file, with or without modification,
376 are permitted in any medium without royalty provided the copyright
377 notice and this notice are preserved.