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