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