]> git.ipfire.org Git - thirdparty/gcc.git/blame - libgfortran/ChangeLog-2023
tree-optimization/114375 - disallow SLP discovery of permuted mask loads
[thirdparty/gcc.git] / libgfortran / ChangeLog-2023
CommitLineData
8c22aed4
JJ
12023-12-19 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
2
3 PR libfortran/110651
4 * libgfortran.spec.in: Remove duplicate libraries.
5
62023-12-18 Harald Anlauf <anlauf@gmx.de>
7
8 PR fortran/96580
9 * intrinsics/date_and_time.c (date_and_time): Handle VALUES argument
10 for kind=2 and kind=16 (if available).
11
122023-12-11 Lipeng Zhu <lipeng.zhu@intel.com>
13
14 * io/async.c (DEBUG_LINE): New macro.
15 * io/async.h (RWLOCK_DEBUG_ADD): New macro.
16 (CHECK_RDLOCK): New macro.
17 (CHECK_WRLOCK): New macro.
18 (TAIL_RWLOCK_DEBUG_QUEUE): New macro.
19 (IN_RWLOCK_DEBUG_QUEUE): New macro.
20 (RDLOCK): New macro.
21 (WRLOCK): New macro.
22 (RWUNLOCK): New macro.
23 (RD_TO_WRLOCK): New macro.
24 (INTERN_RDLOCK): New macro.
25 (INTERN_WRLOCK): New macro.
26 (INTERN_RWUNLOCK): New macro.
27 * io/io.h (struct gfc_unit): Change UNIT_LOCK to UNIT_RWLOCK in
28 a comment.
29 (unit_lock): Remove including associated internal_proto.
30 (unit_rwlock): New declarations including associated internal_proto.
31 (dec_waiting_unlocked): Use WRLOCK and RWUNLOCK on unit_rwlock
32 instead of __gthread_mutex_lock and __gthread_mutex_unlock on
33 unit_lock.
34 * io/transfer.c (st_read_done_worker): Use WRLOCK and RWUNLOCK on
35 unit_rwlock instead of LOCK and UNLOCK on unit_lock.
36 (st_write_done_worker): Likewise.
37 * io/unit.c: Change UNIT_LOCK to UNIT_RWLOCK in 'IO locking rules'
38 comment. Use unit_rwlock variable instead of unit_lock variable.
39 (get_gfc_unit_from_unit_root): New function.
40 (get_gfc_unit): Use RDLOCK, WRLOCK and RWUNLOCK on unit_rwlock
41 instead of LOCK and UNLOCK on unit_lock.
42 (close_unit_1): Use WRLOCK and RWUNLOCK on unit_rwlock instead of
43 LOCK and UNLOCK on unit_lock.
44 (close_units): Likewise.
45 (newunit_alloc): Use RWUNLOCK on unit_rwlock instead of UNLOCK on
46 unit_lock.
47 * io/unix.c (find_file): Use RDLOCK and RWUNLOCK on unit_rwlock
48 instead of LOCK and UNLOCK on unit_lock.
49 (flush_all_units): Use WRLOCK and RWUNLOCK on unit_rwlock instead
50 of LOCK and UNLOCK on unit_lock.
51
522023-12-05 Florian Weimer <fweimer@redhat.com>
53 Jakub Jelinek <jakub@redhat.com>
54
55 * io/list_read.c (list_formatted_read_scalar) <case BT_CLASS>:
56 Change types of unit and noiostat to GFC_INTEGER_4 from int, change
57 type of child_iostat from to GFC_INTEGER_4 * from int *, formatting
58 fixes.
59 (nml_read_obj): Likewise.
60 * io/write.c (list_formatted_write_scalar) <case BT_CLASS>: Likewise.
61 (nml_write_obj): Likewise.
62 * io/transfer.c (unformatted_read, unformatted_write): Likewise.
63
642023-11-08 Mikael Morin <mikael@gcc.gnu.org>
65
66 PR fortran/112371
67 * m4/ifunction.m4 (START_ARRAY_FUNCTION, START_MASKED_ARRAY_FUNCTION,
68 SCALAR_ARRAY_FUNCTION): Remove overwrite of the first dimension of the
69 array descriptor.
70 * m4/ifunction-s.m4 (START_ARRAY_FUNCTION, START_MASKED_ARRAY_FUNCTION,
71 SCALAR_ARRAY_FUNCTION): Ditto.
72 * m4/ifunction-s2.m4 (START_ARRAY_FUNCTION,
73 START_MASKED_ARRAY_FUNCTION, SCALAR_ARRAY_FUNCTION): Ditto.
74 * m4/ifunction_logical.m4 (START_ARRAY_FUNCTION): Ditto.
75 * m4/ifindloc1.m4: Ditto.
76 * generated/all_l1.c: Regenerate.
77 * generated/all_l16.c: Regenerate.
78 * generated/all_l2.c: Regenerate.
79 * generated/all_l4.c: Regenerate.
80 * generated/all_l8.c: Regenerate.
81 * generated/any_l1.c: Regenerate.
82 * generated/any_l16.c: Regenerate.
83 * generated/any_l2.c: Regenerate.
84 * generated/any_l4.c: Regenerate.
85 * generated/any_l8.c: Regenerate.
86 * generated/count_16_l.c: Regenerate.
87 * generated/count_1_l.c: Regenerate.
88 * generated/count_2_l.c: Regenerate.
89 * generated/count_4_l.c: Regenerate.
90 * generated/count_8_l.c: Regenerate.
91 * generated/findloc1_c10.c: Regenerate.
92 * generated/findloc1_c16.c: Regenerate.
93 * generated/findloc1_c17.c: Regenerate.
94 * generated/findloc1_c4.c: Regenerate.
95 * generated/findloc1_c8.c: Regenerate.
96 * generated/findloc1_i1.c: Regenerate.
97 * generated/findloc1_i16.c: Regenerate.
98 * generated/findloc1_i2.c: Regenerate.
99 * generated/findloc1_i4.c: Regenerate.
100 * generated/findloc1_i8.c: Regenerate.
101 * generated/findloc1_r10.c: Regenerate.
102 * generated/findloc1_r16.c: Regenerate.
103 * generated/findloc1_r17.c: Regenerate.
104 * generated/findloc1_r4.c: Regenerate.
105 * generated/findloc1_r8.c: Regenerate.
106 * generated/findloc1_s1.c: Regenerate.
107 * generated/findloc1_s4.c: Regenerate.
108 * generated/iall_i1.c: Regenerate.
109 * generated/iall_i16.c: Regenerate.
110 * generated/iall_i2.c: Regenerate.
111 * generated/iall_i4.c: Regenerate.
112 * generated/iall_i8.c: Regenerate.
113 * generated/iany_i1.c: Regenerate.
114 * generated/iany_i16.c: Regenerate.
115 * generated/iany_i2.c: Regenerate.
116 * generated/iany_i4.c: Regenerate.
117 * generated/iany_i8.c: Regenerate.
118 * generated/iparity_i1.c: Regenerate.
119 * generated/iparity_i16.c: Regenerate.
120 * generated/iparity_i2.c: Regenerate.
121 * generated/iparity_i4.c: Regenerate.
122 * generated/iparity_i8.c: Regenerate.
123 * generated/maxloc1_16_i1.c: Regenerate.
124 * generated/maxloc1_16_i16.c: Regenerate.
125 * generated/maxloc1_16_i2.c: Regenerate.
126 * generated/maxloc1_16_i4.c: Regenerate.
127 * generated/maxloc1_16_i8.c: Regenerate.
128 * generated/maxloc1_16_r10.c: Regenerate.
129 * generated/maxloc1_16_r16.c: Regenerate.
130 * generated/maxloc1_16_r17.c: Regenerate.
131 * generated/maxloc1_16_r4.c: Regenerate.
132 * generated/maxloc1_16_r8.c: Regenerate.
133 * generated/maxloc1_16_s1.c: Regenerate.
134 * generated/maxloc1_16_s4.c: Regenerate.
135 * generated/maxloc1_4_i1.c: Regenerate.
136 * generated/maxloc1_4_i16.c: Regenerate.
137 * generated/maxloc1_4_i2.c: Regenerate.
138 * generated/maxloc1_4_i4.c: Regenerate.
139 * generated/maxloc1_4_i8.c: Regenerate.
140 * generated/maxloc1_4_r10.c: Regenerate.
141 * generated/maxloc1_4_r16.c: Regenerate.
142 * generated/maxloc1_4_r17.c: Regenerate.
143 * generated/maxloc1_4_r4.c: Regenerate.
144 * generated/maxloc1_4_r8.c: Regenerate.
145 * generated/maxloc1_4_s1.c: Regenerate.
146 * generated/maxloc1_4_s4.c: Regenerate.
147 * generated/maxloc1_8_i1.c: Regenerate.
148 * generated/maxloc1_8_i16.c: Regenerate.
149 * generated/maxloc1_8_i2.c: Regenerate.
150 * generated/maxloc1_8_i4.c: Regenerate.
151 * generated/maxloc1_8_i8.c: Regenerate.
152 * generated/maxloc1_8_r10.c: Regenerate.
153 * generated/maxloc1_8_r16.c: Regenerate.
154 * generated/maxloc1_8_r17.c: Regenerate.
155 * generated/maxloc1_8_r4.c: Regenerate.
156 * generated/maxloc1_8_r8.c: Regenerate.
157 * generated/maxloc1_8_s1.c: Regenerate.
158 * generated/maxloc1_8_s4.c: Regenerate.
159 * generated/maxval1_s1.c: Regenerate.
160 * generated/maxval1_s4.c: Regenerate.
161 * generated/maxval_i1.c: Regenerate.
162 * generated/maxval_i16.c: Regenerate.
163 * generated/maxval_i2.c: Regenerate.
164 * generated/maxval_i4.c: Regenerate.
165 * generated/maxval_i8.c: Regenerate.
166 * generated/maxval_r10.c: Regenerate.
167 * generated/maxval_r16.c: Regenerate.
168 * generated/maxval_r17.c: Regenerate.
169 * generated/maxval_r4.c: Regenerate.
170 * generated/maxval_r8.c: Regenerate.
171 * generated/minloc1_16_i1.c: Regenerate.
172 * generated/minloc1_16_i16.c: Regenerate.
173 * generated/minloc1_16_i2.c: Regenerate.
174 * generated/minloc1_16_i4.c: Regenerate.
175 * generated/minloc1_16_i8.c: Regenerate.
176 * generated/minloc1_16_r10.c: Regenerate.
177 * generated/minloc1_16_r16.c: Regenerate.
178 * generated/minloc1_16_r17.c: Regenerate.
179 * generated/minloc1_16_r4.c: Regenerate.
180 * generated/minloc1_16_r8.c: Regenerate.
181 * generated/minloc1_16_s1.c: Regenerate.
182 * generated/minloc1_16_s4.c: Regenerate.
183 * generated/minloc1_4_i1.c: Regenerate.
184 * generated/minloc1_4_i16.c: Regenerate.
185 * generated/minloc1_4_i2.c: Regenerate.
186 * generated/minloc1_4_i4.c: Regenerate.
187 * generated/minloc1_4_i8.c: Regenerate.
188 * generated/minloc1_4_r10.c: Regenerate.
189 * generated/minloc1_4_r16.c: Regenerate.
190 * generated/minloc1_4_r17.c: Regenerate.
191 * generated/minloc1_4_r4.c: Regenerate.
192 * generated/minloc1_4_r8.c: Regenerate.
193 * generated/minloc1_4_s1.c: Regenerate.
194 * generated/minloc1_4_s4.c: Regenerate.
195 * generated/minloc1_8_i1.c: Regenerate.
196 * generated/minloc1_8_i16.c: Regenerate.
197 * generated/minloc1_8_i2.c: Regenerate.
198 * generated/minloc1_8_i4.c: Regenerate.
199 * generated/minloc1_8_i8.c: Regenerate.
200 * generated/minloc1_8_r10.c: Regenerate.
201 * generated/minloc1_8_r16.c: Regenerate.
202 * generated/minloc1_8_r17.c: Regenerate.
203 * generated/minloc1_8_r4.c: Regenerate.
204 * generated/minloc1_8_r8.c: Regenerate.
205 * generated/minloc1_8_s1.c: Regenerate.
206 * generated/minloc1_8_s4.c: Regenerate.
207 * generated/minval1_s1.c: Regenerate.
208 * generated/minval1_s4.c: Regenerate.
209 * generated/minval_i1.c: Regenerate.
210 * generated/minval_i16.c: Regenerate.
211 * generated/minval_i2.c: Regenerate.
212 * generated/minval_i4.c: Regenerate.
213 * generated/minval_i8.c: Regenerate.
214 * generated/minval_r10.c: Regenerate.
215 * generated/minval_r16.c: Regenerate.
216 * generated/minval_r17.c: Regenerate.
217 * generated/minval_r4.c: Regenerate.
218 * generated/minval_r8.c: Regenerate.
219 * generated/norm2_r10.c: Regenerate.
220 * generated/norm2_r16.c: Regenerate.
221 * generated/norm2_r17.c: Regenerate.
222 * generated/norm2_r4.c: Regenerate.
223 * generated/norm2_r8.c: Regenerate.
224 * generated/parity_l1.c: Regenerate.
225 * generated/parity_l16.c: Regenerate.
226 * generated/parity_l2.c: Regenerate.
227 * generated/parity_l4.c: Regenerate.
228 * generated/parity_l8.c: Regenerate.
229 * generated/product_c10.c: Regenerate.
230 * generated/product_c16.c: Regenerate.
231 * generated/product_c17.c: Regenerate.
232 * generated/product_c4.c: Regenerate.
233 * generated/product_c8.c: Regenerate.
234 * generated/product_i1.c: Regenerate.
235 * generated/product_i16.c: Regenerate.
236 * generated/product_i2.c: Regenerate.
237 * generated/product_i4.c: Regenerate.
238 * generated/product_i8.c: Regenerate.
239 * generated/product_r10.c: Regenerate.
240 * generated/product_r16.c: Regenerate.
241 * generated/product_r17.c: Regenerate.
242 * generated/product_r4.c: Regenerate.
243 * generated/product_r8.c: Regenerate.
244 * generated/sum_c10.c: Regenerate.
245 * generated/sum_c16.c: Regenerate.
246 * generated/sum_c17.c: Regenerate.
247 * generated/sum_c4.c: Regenerate.
248 * generated/sum_c8.c: Regenerate.
249 * generated/sum_i1.c: Regenerate.
250 * generated/sum_i16.c: Regenerate.
251 * generated/sum_i2.c: Regenerate.
252 * generated/sum_i4.c: Regenerate.
253 * generated/sum_i8.c: Regenerate.
254 * generated/sum_r10.c: Regenerate.
255 * generated/sum_r16.c: Regenerate.
256 * generated/sum_r17.c: Regenerate.
257 * generated/sum_r4.c: Regenerate.
258 * generated/sum_r8.c: Regenerate.
259
2602023-11-08 Mikael Morin <mikael@gcc.gnu.org>
261
262 PR fortran/112371
263 * m4/ifunction.m4 (START_MASKED_ARRAY_FUNCTION): Remove early return if
264 extent is zero or less, and clamp negative value to zero.
265 * m4/ifunction-s.m4 (START_MASKED_ARRAY_FUNCTION): Ditto.
266 * m4/ifunction-s2.m4 (START_MASKED_ARRAY_FUNCTION): Ditto.
267 * generated/iall_i1.c: Regenerate.
268 * generated/iall_i16.c: Regenerate.
269 * generated/iall_i2.c: Regenerate.
270 * generated/iall_i4.c: Regenerate.
271 * generated/iall_i8.c: Regenerate.
272 * generated/iany_i1.c: Regenerate.
273 * generated/iany_i16.c: Regenerate.
274 * generated/iany_i2.c: Regenerate.
275 * generated/iany_i4.c: Regenerate.
276 * generated/iany_i8.c: Regenerate.
277 * generated/iparity_i1.c: Regenerate.
278 * generated/iparity_i16.c: Regenerate.
279 * generated/iparity_i2.c: Regenerate.
280 * generated/iparity_i4.c: Regenerate.
281 * generated/iparity_i8.c: Regenerate.
282 * generated/maxloc1_16_i1.c: Regenerate.
283 * generated/maxloc1_16_i16.c: Regenerate.
284 * generated/maxloc1_16_i2.c: Regenerate.
285 * generated/maxloc1_16_i4.c: Regenerate.
286 * generated/maxloc1_16_i8.c: Regenerate.
287 * generated/maxloc1_16_r10.c: Regenerate.
288 * generated/maxloc1_16_r16.c: Regenerate.
289 * generated/maxloc1_16_r17.c: Regenerate.
290 * generated/maxloc1_16_r4.c: Regenerate.
291 * generated/maxloc1_16_r8.c: Regenerate.
292 * generated/maxloc1_16_s1.c: Regenerate.
293 * generated/maxloc1_16_s4.c: Regenerate.
294 * generated/maxloc1_4_i1.c: Regenerate.
295 * generated/maxloc1_4_i16.c: Regenerate.
296 * generated/maxloc1_4_i2.c: Regenerate.
297 * generated/maxloc1_4_i4.c: Regenerate.
298 * generated/maxloc1_4_i8.c: Regenerate.
299 * generated/maxloc1_4_r10.c: Regenerate.
300 * generated/maxloc1_4_r16.c: Regenerate.
301 * generated/maxloc1_4_r17.c: Regenerate.
302 * generated/maxloc1_4_r4.c: Regenerate.
303 * generated/maxloc1_4_r8.c: Regenerate.
304 * generated/maxloc1_4_s1.c: Regenerate.
305 * generated/maxloc1_4_s4.c: Regenerate.
306 * generated/maxloc1_8_i1.c: Regenerate.
307 * generated/maxloc1_8_i16.c: Regenerate.
308 * generated/maxloc1_8_i2.c: Regenerate.
309 * generated/maxloc1_8_i4.c: Regenerate.
310 * generated/maxloc1_8_i8.c: Regenerate.
311 * generated/maxloc1_8_r10.c: Regenerate.
312 * generated/maxloc1_8_r16.c: Regenerate.
313 * generated/maxloc1_8_r17.c: Regenerate.
314 * generated/maxloc1_8_r4.c: Regenerate.
315 * generated/maxloc1_8_r8.c: Regenerate.
316 * generated/maxloc1_8_s1.c: Regenerate.
317 * generated/maxloc1_8_s4.c: Regenerate.
318 * generated/maxval1_s1.c: Regenerate.
319 * generated/maxval1_s4.c: Regenerate.
320 * generated/maxval_i1.c: Regenerate.
321 * generated/maxval_i16.c: Regenerate.
322 * generated/maxval_i2.c: Regenerate.
323 * generated/maxval_i4.c: Regenerate.
324 * generated/maxval_i8.c: Regenerate.
325 * generated/maxval_r10.c: Regenerate.
326 * generated/maxval_r16.c: Regenerate.
327 * generated/maxval_r17.c: Regenerate.
328 * generated/maxval_r4.c: Regenerate.
329 * generated/maxval_r8.c: Regenerate.
330 * generated/minloc1_16_i1.c: Regenerate.
331 * generated/minloc1_16_i16.c: Regenerate.
332 * generated/minloc1_16_i2.c: Regenerate.
333 * generated/minloc1_16_i4.c: Regenerate.
334 * generated/minloc1_16_i8.c: Regenerate.
335 * generated/minloc1_16_r10.c: Regenerate.
336 * generated/minloc1_16_r16.c: Regenerate.
337 * generated/minloc1_16_r17.c: Regenerate.
338 * generated/minloc1_16_r4.c: Regenerate.
339 * generated/minloc1_16_r8.c: Regenerate.
340 * generated/minloc1_16_s1.c: Regenerate.
341 * generated/minloc1_16_s4.c: Regenerate.
342 * generated/minloc1_4_i1.c: Regenerate.
343 * generated/minloc1_4_i16.c: Regenerate.
344 * generated/minloc1_4_i2.c: Regenerate.
345 * generated/minloc1_4_i4.c: Regenerate.
346 * generated/minloc1_4_i8.c: Regenerate.
347 * generated/minloc1_4_r10.c: Regenerate.
348 * generated/minloc1_4_r16.c: Regenerate.
349 * generated/minloc1_4_r17.c: Regenerate.
350 * generated/minloc1_4_r4.c: Regenerate.
351 * generated/minloc1_4_r8.c: Regenerate.
352 * generated/minloc1_4_s1.c: Regenerate.
353 * generated/minloc1_4_s4.c: Regenerate.
354 * generated/minloc1_8_i1.c: Regenerate.
355 * generated/minloc1_8_i16.c: Regenerate.
356 * generated/minloc1_8_i2.c: Regenerate.
357 * generated/minloc1_8_i4.c: Regenerate.
358 * generated/minloc1_8_i8.c: Regenerate.
359 * generated/minloc1_8_r10.c: Regenerate.
360 * generated/minloc1_8_r16.c: Regenerate.
361 * generated/minloc1_8_r17.c: Regenerate.
362 * generated/minloc1_8_r4.c: Regenerate.
363 * generated/minloc1_8_r8.c: Regenerate.
364 * generated/minloc1_8_s1.c: Regenerate.
365 * generated/minloc1_8_s4.c: Regenerate.
366 * generated/minval1_s1.c: Regenerate.
367 * generated/minval1_s4.c: Regenerate.
368 * generated/minval_i1.c: Regenerate.
369 * generated/minval_i16.c: Regenerate.
370 * generated/minval_i2.c: Regenerate.
371 * generated/minval_i4.c: Regenerate.
372 * generated/minval_i8.c: Regenerate.
373 * generated/minval_r10.c: Regenerate.
374 * generated/minval_r16.c: Regenerate.
375 * generated/minval_r17.c: Regenerate.
376 * generated/minval_r4.c: Regenerate.
377 * generated/minval_r8.c: Regenerate.
378 * generated/product_c10.c: Regenerate.
379 * generated/product_c16.c: Regenerate.
380 * generated/product_c17.c: Regenerate.
381 * generated/product_c4.c: Regenerate.
382 * generated/product_c8.c: Regenerate.
383 * generated/product_i1.c: Regenerate.
384 * generated/product_i16.c: Regenerate.
385 * generated/product_i2.c: Regenerate.
386 * generated/product_i4.c: Regenerate.
387 * generated/product_i8.c: Regenerate.
388 * generated/product_r10.c: Regenerate.
389 * generated/product_r16.c: Regenerate.
390 * generated/product_r17.c: Regenerate.
391 * generated/product_r4.c: Regenerate.
392 * generated/product_r8.c: Regenerate.
393 * generated/sum_c10.c: Regenerate.
394 * generated/sum_c16.c: Regenerate.
395 * generated/sum_c17.c: Regenerate.
396 * generated/sum_c4.c: Regenerate.
397 * generated/sum_c8.c: Regenerate.
398 * generated/sum_i1.c: Regenerate.
399 * generated/sum_i16.c: Regenerate.
400 * generated/sum_i2.c: Regenerate.
401 * generated/sum_i4.c: Regenerate.
402 * generated/sum_i8.c: Regenerate.
403 * generated/sum_r10.c: Regenerate.
404 * generated/sum_r16.c: Regenerate.
405 * generated/sum_r17.c: Regenerate.
406 * generated/sum_r4.c: Regenerate.
407 * generated/sum_r8.c: Regenerate.
408
4092023-11-08 Mikael Morin <mikael@gcc.gnu.org>
410
411 PR fortran/112412
412 * m4/ifunction.m4 (START_MASKED_ARRAY_FUNCTION, SCALAR_ARRAY_FUNCTION):
413 Don't skip allocation if the allocation size is zero.
414 * m4/ifunction-s.m4 (START_MASKED_ARRAY_FUNCTION,
415 SCALAR_ARRAY_FUNCTION): Ditto.
416 * m4/ifunction-s2.m4 (START_MASKED_ARRAY_FUNCTION,
417 SCALAR_ARRAY_FUNCTION): Ditto.
418 * m4/ifunction_logical.m4 (START_ARRAY_FUNCTION): Ditto.
419 * generated/all_l1.c: Regenerate.
420 * generated/all_l16.c: Regenerate.
421 * generated/all_l2.c: Regenerate.
422 * generated/all_l4.c: Regenerate.
423 * generated/all_l8.c: Regenerate.
424 * generated/any_l1.c: Regenerate.
425 * generated/any_l16.c: Regenerate.
426 * generated/any_l2.c: Regenerate.
427 * generated/any_l4.c: Regenerate.
428 * generated/any_l8.c: Regenerate.
429 * generated/count_16_l.c: Regenerate.
430 * generated/count_1_l.c: Regenerate.
431 * generated/count_2_l.c: Regenerate.
432 * generated/count_4_l.c: Regenerate.
433 * generated/count_8_l.c: Regenerate.
434 * generated/iall_i1.c: Regenerate.
435 * generated/iall_i16.c: Regenerate.
436 * generated/iall_i2.c: Regenerate.
437 * generated/iall_i4.c: Regenerate.
438 * generated/iall_i8.c: Regenerate.
439 * generated/iany_i1.c: Regenerate.
440 * generated/iany_i16.c: Regenerate.
441 * generated/iany_i2.c: Regenerate.
442 * generated/iany_i4.c: Regenerate.
443 * generated/iany_i8.c: Regenerate.
444 * generated/iparity_i1.c: Regenerate.
445 * generated/iparity_i16.c: Regenerate.
446 * generated/iparity_i2.c: Regenerate.
447 * generated/iparity_i4.c: Regenerate.
448 * generated/iparity_i8.c: Regenerate.
449 * generated/maxloc1_16_i1.c: Regenerate.
450 * generated/maxloc1_16_i16.c: Regenerate.
451 * generated/maxloc1_16_i2.c: Regenerate.
452 * generated/maxloc1_16_i4.c: Regenerate.
453 * generated/maxloc1_16_i8.c: Regenerate.
454 * generated/maxloc1_16_r10.c: Regenerate.
455 * generated/maxloc1_16_r16.c: Regenerate.
456 * generated/maxloc1_16_r17.c: Regenerate.
457 * generated/maxloc1_16_r4.c: Regenerate.
458 * generated/maxloc1_16_r8.c: Regenerate.
459 * generated/maxloc1_16_s1.c: Regenerate.
460 * generated/maxloc1_16_s4.c: Regenerate.
461 * generated/maxloc1_4_i1.c: Regenerate.
462 * generated/maxloc1_4_i16.c: Regenerate.
463 * generated/maxloc1_4_i2.c: Regenerate.
464 * generated/maxloc1_4_i4.c: Regenerate.
465 * generated/maxloc1_4_i8.c: Regenerate.
466 * generated/maxloc1_4_r10.c: Regenerate.
467 * generated/maxloc1_4_r16.c: Regenerate.
468 * generated/maxloc1_4_r17.c: Regenerate.
469 * generated/maxloc1_4_r4.c: Regenerate.
470 * generated/maxloc1_4_r8.c: Regenerate.
471 * generated/maxloc1_4_s1.c: Regenerate.
472 * generated/maxloc1_4_s4.c: Regenerate.
473 * generated/maxloc1_8_i1.c: Regenerate.
474 * generated/maxloc1_8_i16.c: Regenerate.
475 * generated/maxloc1_8_i2.c: Regenerate.
476 * generated/maxloc1_8_i4.c: Regenerate.
477 * generated/maxloc1_8_i8.c: Regenerate.
478 * generated/maxloc1_8_r10.c: Regenerate.
479 * generated/maxloc1_8_r16.c: Regenerate.
480 * generated/maxloc1_8_r17.c: Regenerate.
481 * generated/maxloc1_8_r4.c: Regenerate.
482 * generated/maxloc1_8_r8.c: Regenerate.
483 * generated/maxloc1_8_s1.c: Regenerate.
484 * generated/maxloc1_8_s4.c: Regenerate.
485 * generated/maxval1_s1.c: Regenerate.
486 * generated/maxval1_s4.c: Regenerate.
487 * generated/maxval_i1.c: Regenerate.
488 * generated/maxval_i16.c: Regenerate.
489 * generated/maxval_i2.c: Regenerate.
490 * generated/maxval_i4.c: Regenerate.
491 * generated/maxval_i8.c: Regenerate.
492 * generated/maxval_r10.c: Regenerate.
493 * generated/maxval_r16.c: Regenerate.
494 * generated/maxval_r17.c: Regenerate.
495 * generated/maxval_r4.c: Regenerate.
496 * generated/maxval_r8.c: Regenerate.
497 * generated/minloc1_16_i1.c: Regenerate.
498 * generated/minloc1_16_i16.c: Regenerate.
499 * generated/minloc1_16_i2.c: Regenerate.
500 * generated/minloc1_16_i4.c: Regenerate.
501 * generated/minloc1_16_i8.c: Regenerate.
502 * generated/minloc1_16_r10.c: Regenerate.
503 * generated/minloc1_16_r16.c: Regenerate.
504 * generated/minloc1_16_r17.c: Regenerate.
505 * generated/minloc1_16_r4.c: Regenerate.
506 * generated/minloc1_16_r8.c: Regenerate.
507 * generated/minloc1_16_s1.c: Regenerate.
508 * generated/minloc1_16_s4.c: Regenerate.
509 * generated/minloc1_4_i1.c: Regenerate.
510 * generated/minloc1_4_i16.c: Regenerate.
511 * generated/minloc1_4_i2.c: Regenerate.
512 * generated/minloc1_4_i4.c: Regenerate.
513 * generated/minloc1_4_i8.c: Regenerate.
514 * generated/minloc1_4_r10.c: Regenerate.
515 * generated/minloc1_4_r16.c: Regenerate.
516 * generated/minloc1_4_r17.c: Regenerate.
517 * generated/minloc1_4_r4.c: Regenerate.
518 * generated/minloc1_4_r8.c: Regenerate.
519 * generated/minloc1_4_s1.c: Regenerate.
520 * generated/minloc1_4_s4.c: Regenerate.
521 * generated/minloc1_8_i1.c: Regenerate.
522 * generated/minloc1_8_i16.c: Regenerate.
523 * generated/minloc1_8_i2.c: Regenerate.
524 * generated/minloc1_8_i4.c: Regenerate.
525 * generated/minloc1_8_i8.c: Regenerate.
526 * generated/minloc1_8_r10.c: Regenerate.
527 * generated/minloc1_8_r16.c: Regenerate.
528 * generated/minloc1_8_r17.c: Regenerate.
529 * generated/minloc1_8_r4.c: Regenerate.
530 * generated/minloc1_8_r8.c: Regenerate.
531 * generated/minloc1_8_s1.c: Regenerate.
532 * generated/minloc1_8_s4.c: Regenerate.
533 * generated/minval1_s1.c: Regenerate.
534 * generated/minval1_s4.c: Regenerate.
535 * generated/minval_i1.c: Regenerate.
536 * generated/minval_i16.c: Regenerate.
537 * generated/minval_i2.c: Regenerate.
538 * generated/minval_i4.c: Regenerate.
539 * generated/minval_i8.c: Regenerate.
540 * generated/minval_r10.c: Regenerate.
541 * generated/minval_r16.c: Regenerate.
542 * generated/minval_r17.c: Regenerate.
543 * generated/minval_r4.c: Regenerate.
544 * generated/minval_r8.c: Regenerate.
545 * generated/product_c10.c: Regenerate.
546 * generated/product_c16.c: Regenerate.
547 * generated/product_c17.c: Regenerate.
548 * generated/product_c4.c: Regenerate.
549 * generated/product_c8.c: Regenerate.
550 * generated/product_i1.c: Regenerate.
551 * generated/product_i16.c: Regenerate.
552 * generated/product_i2.c: Regenerate.
553 * generated/product_i4.c: Regenerate.
554 * generated/product_i8.c: Regenerate.
555 * generated/product_r10.c: Regenerate.
556 * generated/product_r16.c: Regenerate.
557 * generated/product_r17.c: Regenerate.
558 * generated/product_r4.c: Regenerate.
559 * generated/product_r8.c: Regenerate.
560 * generated/sum_c10.c: Regenerate.
561 * generated/sum_c16.c: Regenerate.
562 * generated/sum_c17.c: Regenerate.
563 * generated/sum_c4.c: Regenerate.
564 * generated/sum_c8.c: Regenerate.
565 * generated/sum_i1.c: Regenerate.
566 * generated/sum_i16.c: Regenerate.
567 * generated/sum_i2.c: Regenerate.
568 * generated/sum_i4.c: Regenerate.
569 * generated/sum_i8.c: Regenerate.
570 * generated/sum_r10.c: Regenerate.
571 * generated/sum_r16.c: Regenerate.
572 * generated/sum_r17.c: Regenerate.
573 * generated/sum_r4.c: Regenerate.
574 * generated/sum_r8.c: Regenerate.
575
5762023-11-06 Tobias Burnus <tobias@codesourcery.com>
577
578 PR libfortran/112364
579 * io/async.c (enqueue_transfer, enqueue_done_id, enqueue_done,
580 enqueue_close): Swap 1st and 2nd arg in calloc call.
581
5822023-10-22 Iain Sandoe <iain@sandoe.co.uk>
583
584 * Makefile.am: Handle Darwin rpaths.
585 * Makefile.in: Regenerate.
586 * configure: Regenerate.
587 * configure.ac: Handle Darwin rpaths
588
5892023-09-28 Tobias Burnus <tobias@codesourcery.com>
590
591 * io/write.c (xtoa_big): Change a 'GCC diagnostic ignored
592 "-Wstringop-overflow"' to an assumption (via __builtin_unreachable).t
593
5942023-08-07 Nick Alcock <nick.alcock@oracle.com>
595
596 * configure: Regenerate.
597
5982023-08-07 Alexander von Gluck IV <kallisti5@unixzen.com>
599
600 * configure: Regenerate.
601
6022023-08-07 Nick Alcock <nick.alcock@oracle.com>
603
604 * configure: Regenerate.
605
6062023-08-07 Nick Alcock <nick.alcock@oracle.com>
607
608 * configure: Regenerate.
609
6102023-08-07 H.J. Lu <hjl.tools@gmail.com>
611
612 * configure: Regenerate.
613
6142023-08-07 H.J. Lu <hjl.tools@gmail.com>
615
616 * configure: Regenerate.
617
6182023-07-21 Andrew Pinski <apinski@marvell.com>
619
620 PR libfortran/110759
621 * ieee/ieee_arithmetic.F90
622 (COMP_INTERFACE): Remove the comma after EXPAND_INTER_MACRO_16
623 and EXPAND_INTER_MACRO_10.
624 (EXPAND_INTER_MACRO_16): Add comma here if 16 byte fp exist.
625 (EXPAND_INTER_MACRO_10): Likewise.
626
6272023-07-20 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
628
629 * ieee/ieee_arithmetic.F90: Add IEEE_QUIET_* and
630 IEEE_SIGNALING_* functions.
631
6322023-06-11 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
633
634 PR libfortran/109373
635 * configure.ac: Remove support for --enable-intermodule
636 * Makefile.am: Remove onestep path.
637 * configure: Regenerate.
638 * Makefile.in: Regenerate.
639
6402023-06-10 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
641
642 * ieee/ieee_arithmetic.F90: Add IEEE_MIN_NUM, IEEE_MAX_NUM,
643 IEEE_MIN_NUM_MAG, and IEEE_MAX_NUM_MAG functions.
644
6452023-05-12 Jerry DeLisle <jvdelisle@gcc.gnu.org>
646
647 PR fortran/109662
648 * io/unit.c (set_internal_unit): Set the internal unit
649 last_char to zero so that previous EOF characters do not
650 influence the next read.
651
6522023-05-08 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
653
654 * caf/single.c (_gfortran_caf_register): Fix coding style.
655 * io/async.c (update_pdt, async_io): Likewise.
656 * io/format.c (free_format_data): Likewise.
657 * io/transfer.c (st_read_done_worker, st_write_done_worker): Likewise.
658 * io/unix.c (mem_close): Likewise.
659
6602023-05-08 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
661
662 * caf/single.c (_gfortran_caf_register): Call free() unconditionally.
663 * io/async.c (update_pdt, async_io): Likewise.
664 * io/format.c (free_format_data): Likewise.
665 * io/transfer.c (st_read_done_worker, st_write_done_worker): Likewise.
666 * io/unix.c (mem_close): Likewise.
667
6682023-05-08 Jerry DeLisle <jvdelisle@gcc.gnu.org>
669
670 PR fortran/109662
671 * io/list_read.c: Add check for a semicolon after a namelist
672 name in read input. Issue a runtime error message.
673
6742023-05-06 Jerry DeLisle <jvdelisle@gcc.gnu.org>
675
676 PR fortran/109662
677 * io/list_read.c: Add a check for a comma after a namelist
678 name in read input. Issue a runtime error message.
679
6802023-02-28 Jerry DeLisle <jvdelisle@gcc.gnu.org>
681
682 * generated/pack_c10.c (pack_c10): Regenerated.
683 * generated/pack_c16.c (pack_c16): Regenerated.
684 * generated/pack_c17.c (pack_c17): Regenerated.
685 * generated/pack_c4.c (pack_c4): Regenerated.
686 * generated/pack_c8.c (pack_c8): Regenerated.
687 * generated/pack_i1.c (pack_i1): Regenerated.
688 * generated/pack_i16.c (pack_i16): Regenerated.
689 * generated/pack_i2.c (pack_i2): Regenerated.
690 * generated/pack_i4.c (pack_i4): Regenerated.
691 * generated/pack_i8.c (pack_i8): Regenerated.
692 * generated/pack_r10.c (pack_r10): Regenerated.
693 * generated/pack_r16.c (pack_r16): Regenerated.
694 * generated/pack_r17.c (pack_r17): Regenerated.
695 * generated/pack_r4.c (pack_r4): Regenerated.
696 * generated/pack_r8.c (pack_r8): Regenerated.
697 * generated/spread_c10.c (spread_c10): Regenerated.
698 * generated/spread_c16.c (spread_c16): Regenerated.
699 * generated/spread_c17.c (spread_c17): Regenerated.
700 * generated/spread_c4.c (spread_c4): Regenerated.
701 * generated/spread_c8.c (spread_c8): Regenerated.
702 * generated/spread_i1.c (spread_i1): Regenerated.
703 * generated/spread_i16.c (spread_i16): Regenerated.
704 * generated/spread_i2.c (spread_i2): Regenerated.
705 * generated/spread_i4.c (spread_i4): Regenerated.
706 * generated/spread_i8.c (spread_i8): Regenerated.
707 * generated/spread_r10.c (spread_r10): Regenerated.
708 * generated/spread_r16.c (spread_r16): Regenerated.
709 * generated/spread_r17.c (spread_r17): Regenerated.
710 * generated/spread_r4.c (spread_r4): Regenerated.
711 * generated/spread_r8.c (spread_r8): Regenerated.
712 * intrinsics/execute_command_line.c (execute_command_line_i4),
713 (execute_command_line_i8): Set estat_initial to zero.
714 * intrinsics/pack_generic.c (pack_internal): Set sstride[0] and
715 mstride[0] to zero.
716 * intrinsics/spread_generic.c (spread_internal): Set sstride[0].
717 * m4/pack.m4: Set sstride[0] and mstride[0].
718 * m4/spread.m4: Set sstride[0].
719
7202023-01-18 Tobias Burnus <tobias@codesourcery.com>
721
722 * intrinsics/execute_command_line.c (execute_command_line): On
723 Windows, regard system()'s return value of 9009 as EXEC_INVALIDCOMMAND.
724
7252023-01-07 LIU Hao <lh_mouse@126.com>
726
727 PR middle-end/108300
728 * intrinsics/sleep.c: Define `WIN32_LEAN_AND_MEAN` before
729 <windows.h>.
730
731\f
732Copyright (C) 2023 Free Software Foundation, Inc.
733
734Copying and distribution of this file, with or without modification,
735are permitted in any medium without royalty provided the copyright
736notice and this notice are preserved.