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