1 2018-05-08 Thomas Koenig <tkoenig@gcc.gnu.org>
4 * m4/iforeach-s.m4: Remove assertion that back is zero.
5 * m4/iforeach.m4: Likewise. Remove leading 'do'
6 before implementation start.
7 * m4/ifunction-s.m4: Remove assertion that back is zero.
8 * m4/ifunction.m4: Likewise. Remove for loop if HAVE_BACK_ARG
10 * m4/maxloc0.m4: Reorganize loops. Split loops between >= and =,
11 depending if back is true. Mark the condition of having
12 found a value which exceeds the limit as unlikely.
13 * m4/minloc0.m4: Likewise.
14 * m4/maxloc1.m4: Likewise.
15 * m4/minloc1.m4: Likewise.
16 * m4/maxloc1s.m4: Handle back argument.
17 * m4/minloc1s.m4: Likewise.
18 * m4/maxloc2s.m4: Remove assertion that back is zero.
19 Remove special handling of loop start. Handle back argument.
20 * m4/minloc2s.m4: Likewise.
21 * generated/iall_i1.c: Regenerated.
22 * generated/iall_i16.c: Regenerated.
23 * generated/iall_i2.c: Regenerated.
24 * generated/iall_i4.c: Regenerated.
25 * generated/iall_i8.c: Regenerated.
26 * generated/iany_i1.c: Regenerated.
27 * generated/iany_i16.c: Regenerated.
28 * generated/iany_i2.c: Regenerated.
29 * generated/iany_i4.c: Regenerated.
30 * generated/iany_i8.c: Regenerated.
31 * generated/iparity_i1.c: Regenerated.
32 * generated/iparity_i16.c: Regenerated.
33 * generated/iparity_i2.c: Regenerated.
34 * generated/iparity_i4.c: Regenerated.
35 * generated/iparity_i8.c: Regenerated.
36 * generated/maxloc0_16_i1.c: Regenerated.
37 * generated/maxloc0_16_i16.c: Regenerated.
38 * generated/maxloc0_16_i2.c: Regenerated.
39 * generated/maxloc0_16_i4.c: Regenerated.
40 * generated/maxloc0_16_i8.c: Regenerated.
41 * generated/maxloc0_16_r10.c: Regenerated.
42 * generated/maxloc0_16_r16.c: Regenerated.
43 * generated/maxloc0_16_r4.c: Regenerated.
44 * generated/maxloc0_16_r8.c: Regenerated.
45 * generated/maxloc0_16_s1.c: Regenerated.
46 * generated/maxloc0_16_s4.c: Regenerated.
47 * generated/maxloc0_4_i1.c: Regenerated.
48 * generated/maxloc0_4_i16.c: Regenerated.
49 * generated/maxloc0_4_i2.c: Regenerated.
50 * generated/maxloc0_4_i4.c: Regenerated.
51 * generated/maxloc0_4_i8.c: Regenerated.
52 * generated/maxloc0_4_r10.c: Regenerated.
53 * generated/maxloc0_4_r16.c: Regenerated.
54 * generated/maxloc0_4_r4.c: Regenerated.
55 * generated/maxloc0_4_r8.c: Regenerated.
56 * generated/maxloc0_4_s1.c: Regenerated.
57 * generated/maxloc0_4_s4.c: Regenerated.
58 * generated/maxloc0_8_i1.c: Regenerated.
59 * generated/maxloc0_8_i16.c: Regenerated.
60 * generated/maxloc0_8_i2.c: Regenerated.
61 * generated/maxloc0_8_i4.c: Regenerated.
62 * generated/maxloc0_8_i8.c: Regenerated.
63 * generated/maxloc0_8_r10.c: Regenerated.
64 * generated/maxloc0_8_r16.c: Regenerated.
65 * generated/maxloc0_8_r4.c: Regenerated.
66 * generated/maxloc0_8_r8.c: Regenerated.
67 * generated/maxloc0_8_s1.c: Regenerated.
68 * generated/maxloc0_8_s4.c: Regenerated.
69 * generated/maxloc1_16_i1.c: Regenerated.
70 * generated/maxloc1_16_i16.c: Regenerated.
71 * generated/maxloc1_16_i2.c: Regenerated.
72 * generated/maxloc1_16_i4.c: Regenerated.
73 * generated/maxloc1_16_i8.c: Regenerated.
74 * generated/maxloc1_16_r10.c: Regenerated.
75 * generated/maxloc1_16_r16.c: Regenerated.
76 * generated/maxloc1_16_r4.c: Regenerated.
77 * generated/maxloc1_16_r8.c: Regenerated.
78 * generated/maxloc1_16_s1.c: Regenerated.
79 * generated/maxloc1_16_s4.c: Regenerated.
80 * generated/maxloc1_4_i1.c: Regenerated.
81 * generated/maxloc1_4_i16.c: Regenerated.
82 * generated/maxloc1_4_i2.c: Regenerated.
83 * generated/maxloc1_4_i4.c: Regenerated.
84 * generated/maxloc1_4_i8.c: Regenerated.
85 * generated/maxloc1_4_r10.c: Regenerated.
86 * generated/maxloc1_4_r16.c: Regenerated.
87 * generated/maxloc1_4_r4.c: Regenerated.
88 * generated/maxloc1_4_r8.c: Regenerated.
89 * generated/maxloc1_4_s1.c: Regenerated.
90 * generated/maxloc1_4_s4.c: Regenerated.
91 * generated/maxloc1_8_i1.c: Regenerated.
92 * generated/maxloc1_8_i16.c: Regenerated.
93 * generated/maxloc1_8_i2.c: Regenerated.
94 * generated/maxloc1_8_i4.c: Regenerated.
95 * generated/maxloc1_8_i8.c: Regenerated.
96 * generated/maxloc1_8_r10.c: Regenerated.
97 * generated/maxloc1_8_r16.c: Regenerated.
98 * generated/maxloc1_8_r4.c: Regenerated.
99 * generated/maxloc1_8_r8.c: Regenerated.
100 * generated/maxloc1_8_s1.c: Regenerated.
101 * generated/maxloc1_8_s4.c: Regenerated.
102 * generated/maxloc2_16_s1.c: Regenerated.
103 * generated/maxloc2_16_s4.c: Regenerated.
104 * generated/maxloc2_4_s1.c: Regenerated.
105 * generated/maxloc2_4_s4.c: Regenerated.
106 * generated/maxloc2_8_s1.c: Regenerated.
107 * generated/maxloc2_8_s4.c: Regenerated.
108 * generated/maxval_i1.c: Regenerated.
109 * generated/maxval_i16.c: Regenerated.
110 * generated/maxval_i2.c: Regenerated.
111 * generated/maxval_i4.c: Regenerated.
112 * generated/maxval_i8.c: Regenerated.
113 * generated/maxval_r10.c: Regenerated.
114 * generated/maxval_r16.c: Regenerated.
115 * generated/maxval_r4.c: Regenerated.
116 * generated/maxval_r8.c: Regenerated.
117 * generated/minloc0_16_i1.c: Regenerated.
118 * generated/minloc0_16_i16.c: Regenerated.
119 * generated/minloc0_16_i2.c: Regenerated.
120 * generated/minloc0_16_i4.c: Regenerated.
121 * generated/minloc0_16_i8.c: Regenerated.
122 * generated/minloc0_16_r10.c: Regenerated.
123 * generated/minloc0_16_r16.c: Regenerated.
124 * generated/minloc0_16_r4.c: Regenerated.
125 * generated/minloc0_16_r8.c: Regenerated.
126 * generated/minloc0_16_s1.c: Regenerated.
127 * generated/minloc0_16_s4.c: Regenerated.
128 * generated/minloc0_4_i1.c: Regenerated.
129 * generated/minloc0_4_i16.c: Regenerated.
130 * generated/minloc0_4_i2.c: Regenerated.
131 * generated/minloc0_4_i4.c: Regenerated.
132 * generated/minloc0_4_i8.c: Regenerated.
133 * generated/minloc0_4_r10.c: Regenerated.
134 * generated/minloc0_4_r16.c: Regenerated.
135 * generated/minloc0_4_r4.c: Regenerated.
136 * generated/minloc0_4_r8.c: Regenerated.
137 * generated/minloc0_4_s1.c: Regenerated.
138 * generated/minloc0_4_s4.c: Regenerated.
139 * generated/minloc0_8_i1.c: Regenerated.
140 * generated/minloc0_8_i16.c: Regenerated.
141 * generated/minloc0_8_i2.c: Regenerated.
142 * generated/minloc0_8_i4.c: Regenerated.
143 * generated/minloc0_8_i8.c: Regenerated.
144 * generated/minloc0_8_r10.c: Regenerated.
145 * generated/minloc0_8_r16.c: Regenerated.
146 * generated/minloc0_8_r4.c: Regenerated.
147 * generated/minloc0_8_r8.c: Regenerated.
148 * generated/minloc0_8_s1.c: Regenerated.
149 * generated/minloc0_8_s4.c: Regenerated.
150 * generated/minloc1_16_i1.c: Regenerated.
151 * generated/minloc1_16_i16.c: Regenerated.
152 * generated/minloc1_16_i2.c: Regenerated.
153 * generated/minloc1_16_i4.c: Regenerated.
154 * generated/minloc1_16_i8.c: Regenerated.
155 * generated/minloc1_16_r10.c: Regenerated.
156 * generated/minloc1_16_r16.c: Regenerated.
157 * generated/minloc1_16_r4.c: Regenerated.
158 * generated/minloc1_16_r8.c: Regenerated.
159 * generated/minloc1_16_s1.c: Regenerated.
160 * generated/minloc1_16_s4.c: Regenerated.
161 * generated/minloc1_4_i1.c: Regenerated.
162 * generated/minloc1_4_i16.c: Regenerated.
163 * generated/minloc1_4_i2.c: Regenerated.
164 * generated/minloc1_4_i4.c: Regenerated.
165 * generated/minloc1_4_i8.c: Regenerated.
166 * generated/minloc1_4_r10.c: Regenerated.
167 * generated/minloc1_4_r16.c: Regenerated.
168 * generated/minloc1_4_r4.c: Regenerated.
169 * generated/minloc1_4_r8.c: Regenerated.
170 * generated/minloc1_4_s1.c: Regenerated.
171 * generated/minloc1_4_s4.c: Regenerated.
172 * generated/minloc1_8_i1.c: Regenerated.
173 * generated/minloc1_8_i16.c: Regenerated.
174 * generated/minloc1_8_i2.c: Regenerated.
175 * generated/minloc1_8_i4.c: Regenerated.
176 * generated/minloc1_8_i8.c: Regenerated.
177 * generated/minloc1_8_r10.c: Regenerated.
178 * generated/minloc1_8_r16.c: Regenerated.
179 * generated/minloc1_8_r4.c: Regenerated.
180 * generated/minloc1_8_r8.c: Regenerated.
181 * generated/minloc1_8_s1.c: Regenerated.
182 * generated/minloc1_8_s4.c: Regenerated.
183 * generated/minloc2_16_s1.c: Regenerated.
184 * generated/minloc2_16_s4.c: Regenerated.
185 * generated/minloc2_4_s1.c: Regenerated.
186 * generated/minloc2_4_s4.c: Regenerated.
187 * generated/minloc2_8_s1.c: Regenerated.
188 * generated/minloc2_8_s4.c: Regenerated.
189 * generated/minval_i1.c: Regenerated.
190 * generated/minval_i16.c: Regenerated.
191 * generated/minval_i2.c: Regenerated.
192 * generated/minval_i4.c: Regenerated.
193 * generated/minval_i8.c: Regenerated.
194 * generated/minval_r10.c: Regenerated.
195 * generated/minval_r16.c: Regenerated.
196 * generated/minval_r4.c: Regenerated.
197 * generated/minval_r8.c: Regenerated.
198 * generated/norm2_r10.c: Regenerated.
199 * generated/norm2_r16.c: Regenerated.
200 * generated/norm2_r4.c: Regenerated.
201 * generated/norm2_r8.c: Regenerated.
202 * generated/parity_l1.c: Regenerated.
203 * generated/parity_l16.c: Regenerated.
204 * generated/parity_l2.c: Regenerated.
205 * generated/parity_l4.c: Regenerated.
206 * generated/parity_l8.c: Regenerated.
207 * generated/product_c10.c: Regenerated.
208 * generated/product_c16.c: Regenerated.
209 * generated/product_c4.c: Regenerated.
210 * generated/product_c8.c: Regenerated.
211 * generated/product_i1.c: Regenerated.
212 * generated/product_i16.c: Regenerated.
213 * generated/product_i2.c: Regenerated.
214 * generated/product_i4.c: Regenerated.
215 * generated/product_i8.c: Regenerated.
216 * generated/product_r10.c: Regenerated.
217 * generated/product_r16.c: Regenerated.
218 * generated/product_r4.c: Regenerated.
219 * generated/product_r8.c: Regenerated.
220 * generated/sum_c10.c: Regenerated.
221 * generated/sum_c16.c: Regenerated.
222 * generated/sum_c4.c: Regenerated.
223 * generated/sum_c8.c: Regenerated.
224 * generated/sum_i1.c: Regenerated.
225 * generated/sum_i16.c: Regenerated.
226 * generated/sum_i2.c: Regenerated.
227 * generated/sum_i4.c: Regenerated.
228 * generated/sum_i8.c: Regenerated.
229 * generated/sum_r10.c: Regenerated.
230 * generated/sum_r16.c: Regenerated.
231 * generated/sum_r4.c: Regenerated.
232 * generated/sum_r8.c: Regenerated.
234 2018-04-24 H.J. Lu <hongjiu.lu@intel.com>
236 * configure: Regenerated.
238 2018-04-19 Thomas Schwinge <thomas@codesourcery.com>
242 * runtime/minimal.c (stop_numeric): Reimplement.
243 (stop_string, error_stop_string, error_stop_numeric): New
246 2018-04-19 Jakub Jelinek <jakub@redhat.com>
248 * configure: Regenerated.
250 2018-04-18 David Malcolm <dmalcolm@redhat.com>
253 * configure: Regenerate.
255 2018-04-06 Thomas Koenig <tkoenig@gcc.gnu.org>
258 * m4/matmul_internal.m4: If ycount == 1, add one more row to
260 * generated/matmul_c10.c: Regenerated.
261 * generated/matmul_c16.c: Regenerated.
262 * generated/matmul_c4.c: Regenerated.
263 * generated/matmul_c8.c: Regenerated.
264 * generated/matmul_i1.c: Regenerated.
265 * generated/matmul_i16.c: Regenerated.
266 * generated/matmul_i2.c: Regenerated.
267 * generated/matmul_i4.c: Regenerated.
268 * generated/matmul_i8.c: Regenerated.
269 * generated/matmul_r10.c: Regenerated.
270 * generated/matmul_r16.c: Regenerated.
271 * generated/matmul_r4.c: Regenerated.
272 * generated/matmul_r8.c: Regenerated.
273 * generated/matmulavx128_c10.c: Regenerated.
274 * generated/matmulavx128_c16.c: Regenerated.
275 * generated/matmulavx128_c4.c: Regenerated.
276 * generated/matmulavx128_c8.c: Regenerated.
277 * generated/matmulavx128_i1.c: Regenerated.
278 * generated/matmulavx128_i16.c: Regenerated.
279 * generated/matmulavx128_i2.c: Regenerated.
280 * generated/matmulavx128_i4.c: Regenerated.
281 * generated/matmulavx128_i8.c: Regenerated.
282 * generated/matmulavx128_r10.c: Regenerated.
283 * generated/matmulavx128_r16.c: Regenerated.
284 * generated/matmulavx128_r4.c: Regenerated.
285 * generated/matmulavx128_r8.c: Regenerated.
287 2018-04-04 Thomas Koenig <tkoenig@gcc.gnu.org>
290 * runtime/minimal.c (stop_numeric): Add new function in order to
291 implement numeric stop on minimal targets.
293 2018-03-28 Jakub Jelinek <jakub@redhat.com>
295 * io/io.h (IOPARM_DT_DEFAULT_EXP): Rename to ...
296 (IOPARM_DT_DEC_EXT): ... this.
297 * io/list_read.c (parse_real): Adjust for IOPARM_DT_DEFAULT_EXP
298 renaming to IOPARM_DT_DEC_EXT.
299 (read_real): Likewise.
300 * io/read.c (read_f): Likewise.
302 2018-03-15 Jakub Jelinek <jakub@redhat.com>
305 * intrinsics/kill.c (kill): Rename to...
306 (PREFIX (kill)): ... this. Use export_proto_np instead of export_proto.
308 2018-03-13 Steven G. Kargl <kargl@gcc.gnu.org>
310 * libgfortran/gfortran.map: Remove _gfortran_kill_i4,
311 _gfortran_kill_i4_sub, _gfortran_kill_i8, and _gfortran_kill_i8_sub.
312 Add _gfortran_kill and _gfortran_kill_sub.
313 * libgfortran/intrinsics/kill.c: Eliminate _gfortran_kill_i4,
314 _gfortran_kill_i4_sub, _gfortran_kill_i8, and _gfortran_kill_i8_sub.
315 Add _gfortran_kill and _gfortran_kill_sub.
317 2018-02-23 Janne Blomqvist <jb@gcc.gnu.org>
320 * caf/libcaf.h (_gfortran_caf_stop_numeric): Add bool argument.
321 (_gfortran_caf_stop_str): Likewise.
322 (_gfortran_caf_error_stop_str): Likewise.
323 (_gfortran_caf_error_stop): Likewise.
324 * caf/mpi.c (_gfortran_caf_error_stop_str): Handle new argument.
325 (_gfortran_caf_error_stop): Likewise.
326 * caf/single.c (_gfortran_caf_stop_numeric): Likewise.
327 (_gfortran_caf_stop_str): Likewise.
328 (_gfortran_caf_error_stop_str): Likewise.
329 (_gfortran_caf_error_stop): Likewise.
330 (_gfortran_caf_lock): Likewise.
331 (_gfortran_caf_unlock): Likewise.
332 * libgfortran.h (stop_string): Add bool argument.
333 * runtime/pause.c (do_pause): Add false argument.
334 * runtime/stop.c (stop_numeric): Handle new argument.
335 (stop_string): Likewise.
336 (error_stop_string): Likewise.
337 (error_stop_numeric): Likewise.
339 2018-02-22 Janne Blomqvist <jb@gcc.gnu.org>
343 * runtime/pause.c (pause_numeric): Modify to take GFC_INTEGER_8
345 (pause_string): Modify to take size_t character length argument.
347 2018-02-22 Janne Blomqvist <jb@gcc.gnu.org>
349 * libgfortran.h (stop_string): Use size_t for character length.
350 * runtime/stop.c (stop_string): Likewise.
351 (error_stop_string): Likewise.
352 (stop_numeric): Use int for exit code.
353 (error_stop_numeric): Likewise.
354 * caf/libcaf.h: Remove stdint.h include.
355 (_gfortran_caf_register): Use size_t for character length.
356 (_gfortran_caf_deregister): Likewise.
357 (_gfortran_caf_sync_all): Likewise.
358 (_gfortran_caf_sync_memory): Likewise.
359 (_gfortran_caf_sync_images): Likewise.
360 (_gfortran_caf_stop_numeric): Use int for exit code.
361 (_gfortran_caf_stop_str): Use size_t for character length.
362 (_gfortran_caf_error_stop_str): Likewise.
363 (_gfortran_caf_error_stop): Use int for exit code.
364 (_gfortran_caf_co_broadcast): Use size_t for character length.
365 (_gfortran_caf_co_sum): Likewise.
366 (_gfortran_caf_co_min): Likewise.
367 (_gfortran_caf_co_max): Likewise.
368 (_gfortran_caf_co_reduce): Likewise.
369 (_gfortran_caf_lock): Likewise.
370 (_gfortran_caf_unlock): Likewise.
371 (_gfortran_caf_event_post): Likewise.
372 (_gfortran_caf_event_wait): Likewise.
373 * caf/mpi.c (_gfortran_caf_register): Update implementation to
375 (_gfortran_caf_deregister): Likewise.
376 (_gfortran_caf_sync_all): Likewise.
377 (_gfortran_caf_sync_images): Likewise.
378 (_gfortran_caf_error_stop_str): Likewise.
379 (_gfortran_caf_error_stop): Likewise.
380 * caf/single.c (caf_internal_error): Likewise.
381 (_gfortran_caf_register): Likewise.
382 (_gfortran_caf_deregister): Likewise.
383 (_gfortran_caf_sync_all): Likewise.
384 (_gfortran_caf_sync_memory): Likewise.
385 (_gfortran_caf_sync_images): Likewise.
386 (_gfortran_caf_stop_numeric): Likewise.
387 (_gfortran_caf_stop_str): Likewise.
388 (_gfortran_caf_error_stop_str): Likewise.
389 (_gfortran_caf_error_stop): Likewise.
390 (_gfortran_caf_co_broadcast): Likewise.
391 (_gfortran_caf_co_sum): Likewise.
392 (_gfortran_caf_co_min): Likewise.
393 (_gfortran_caf_co_max): Likewise.
394 (_gfortran_caf_co_reduce): Likewise.
395 (_gfortran_caf_event_post): Likewise.
396 (_gfortran_caf_event_wait): Likewise.
397 (_gfortran_caf_lock): Likewise.
398 (_gfortran_caf_unlock): Likewise.
400 2018-02-19 Andre Vehreschild <vehre@gcc.gnu.org>
402 * caf/libcaf.h: Add type parameters to the caf_*_by_ref prototypes.
403 * caf/single.c (get_for_ref): Simplifications and now respecting
405 (_gfortran_caf_get_by_ref): Added source type handing to get_for_ref().
406 (send_by_ref): Simplifications and respecting the dst_type now.
407 (_gfortran_caf_send_by_ref): Added destination type hand over to
409 (_gfortran_caf_sendget_by_ref): Added general support and fixed stack
410 corruption. The function is now really usable.
412 2018-02-14 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
415 * configure: Regenerate.
417 2018-02-18 Jerry DeLisle <jvdelisle@gcc.gnu.org>
420 * io/transfer.c (finalize_transfer): After completng an internal unit
421 I/O operation, clear internal_unit_kind.
423 2018-02-12 Thomas Koenig <tkoenig@gcc.gnu.org>
425 * libgfortran.h (GFC_ARRAY_DESCRIPTOR): Remove dimension
426 of descriptor to use vaiable members for dim.
427 Change usage of GFC_ARRAY_DESCRIPTOR accordingly.
428 (GFC_FILL_ARRAY_DESCRIPTOR): New macro.
429 (gfc_full_array_i4): New type.
430 * intrinsics/date_and_time.c (secnds): Use sizeof
431 (gfc_array_i4) + sizeof (descriptor_dimension) for memory
433 * intrinsics/reshape_generic.c: Use GFC_FULL_ARRAY_DESCRIPTOR.
434 * io/format.c: Use sizeof (gfc_array_i4) + sizeof
435 (descriptor_dimension) for memoy allocation.
436 * io/list_read.c (list_formatted_read_scalar): Use
437 gfc_full_array_i4 for variable.
438 (nml_read_obj): Likewise.
439 * io/write.c (list_formatted_write_scalar): Likewise.
440 (nml_write_obj): Likewise.
441 * m4/reshape.m4: Use GFC_FULL_ARRAY_DESCRIPTOR.
442 * generated/reshape_c10.c: Regenerated.
443 * generated/reshape_c16.c: Regenerated.
444 * generated/reshape_c4.c: Regenerated.
445 * generated/reshape_c8.c: Regenerated.
446 * generated/reshape_i16.c: Regenerated.
447 * generated/reshape_i4.c: Regenerated.
448 * generated/reshape_i8.c: Regenerated.
449 * generated/reshape_r10.c: Regenerated.
450 * generated/reshape_r16.c: Regenerated.
451 * generated/reshape_r4.c: Regenerated.
452 * generated/reshape_r8.c: Regenerated.
454 2018-01-31 Janne Blomqvist <jb@gcc.gnu.org>
456 * generated/cshift1_16.c (cshift1): Regenerated.
457 * generated/cshift1_4.c (cshift1): Regenerated.
458 * generated/cshift1_8.c (cshift1): Regenerated.
459 * generated/eoshift1_16.c (eoshift1): Regenerated.
460 * generated/eoshift1_4.c (eoshift1): Regenerated.
461 * generated/eoshift1_8.c (eoshift1): Regenerated.
462 * generated/eoshift3_16.c (eoshift3): Regenerated.
463 * generated/eoshift3_4.c (eoshift3): Regenerated.
464 * generated/eoshift3_8.c (eoshift3): Regenerated.
465 * generated/in_pack_c10.c (internal_pack_c10): Regenerated.
466 * generated/in_pack_c16.c (internal_pack_c16): Regenerated.
467 * generated/in_pack_c4.c (internal_pack_c4): Regenerated.
468 * generated/in_pack_c8.c (internal_pack_c8): Regenerated.
469 * generated/in_pack_i1.c (internal_pack_1): Regenerated.
470 * generated/in_pack_i16.c (internal_pack_16): Regenerated.
471 * generated/in_pack_i2.c (internal_pack_2): Regenerated.
472 * generated/in_pack_i4.c (internal_pack_4): Regenerated.
473 * generated/in_pack_i8.c (internal_pack_8): Regenerated.
474 * generated/in_pack_r10.c (internal_pack_r10): Regenerated.
475 * generated/in_pack_r16.c (internal_pack_r16): Regenerated.
476 * generated/in_pack_r4.c (internal_pack_r4): Regenerated.
477 * generated/in_pack_r8.c (internal_pack_r8): Regenerated.
478 * generated/in_unpack_c10.c (internal_unpack_c10): Regenerated.
479 * generated/in_unpack_c16.c (internal_unpack_c16): Regenerated.
480 * generated/in_unpack_c4.c (internal_unpack_c4): Regenerated.
481 * generated/in_unpack_c8.c (internal_unpack_c8): Regenerated.
482 * generated/in_unpack_i1.c (internal_unpack_1): Regenerated.
483 * generated/in_unpack_i16.c (internal_unpack_16): Regenerated.
484 * generated/in_unpack_i2.c (internal_unpack_2): Regenerated.
485 * generated/in_unpack_i4.c (internal_unpack_4): Regenerated.
486 * generated/in_unpack_i8.c (internal_unpack_8): Regenerated.
487 * generated/in_unpack_r10.c (internal_unpack_r10): Regenerated.
488 * generated/in_unpack_r16.c (internal_unpack_r16): Regenerated.
489 * generated/in_unpack_r4.c (internal_unpack_r4): Regenerated.
490 * generated/in_unpack_r8.c (internal_unpack_r8): Regenerated.
491 * generated/reshape_c10.c (reshape_c10): Regenerated.
492 * generated/reshape_c16.c (reshape_c16): Regenerated.
493 * generated/reshape_c4.c (reshape_c4): Regenerated.
494 * generated/reshape_c8.c (reshape_c8): Regenerated.
495 * generated/reshape_i16.c (reshape_16): Regenerated.
496 * generated/reshape_i4.c (reshape_4): Regenerated.
497 * generated/reshape_i8.c (reshape_8): Regenerated.
498 * generated/reshape_r10.c (reshape_r10): Regenerated.
499 * generated/reshape_r16.c (reshape_r16): Regenerated.
500 * generated/reshape_r4.c (reshape_r4): Regenerated.
501 * generated/reshape_r8.c (reshape_r8): Regenerated.
502 * generated/shape_i1.c (shape_1): Regenerated.
503 * generated/shape_i16.c (shape_16): Regenerated.
504 * generated/shape_i2.c (shape_2): Regenerated.
505 * generated/shape_i4.c (shape_4): Regenerated.
506 * generated/shape_i8.c (shape_8): Regenerated.
507 * generated/spread_c10.c (spread_scalar_c10): Regenerated.
508 * generated/spread_c16.c (spread_scalar_c16): Regenerated.
509 * generated/spread_c4.c (spread_scalar_c4): Regenerated.
510 * generated/spread_c8.c (spread_scalar_c8): Regenerated.
511 * generated/spread_i1.c (spread_scalar_i1): Regenerated.
512 * generated/spread_i16.c (spread_scalar_i16): Regenerated.
513 * generated/spread_i2.c (spread_scalar_i2): Regenerated.
514 * generated/spread_i4.c (spread_scalar_i4): Regenerated.
515 * generated/spread_i8.c (spread_scalar_i8): Regenerated.
516 * generated/spread_r10.c (spread_scalar_r10): Regenerated.
517 * generated/spread_r16.c (spread_scalar_r16): Regenerated.
518 * generated/spread_r4.c (spread_scalar_r4): Regenerated.
519 * generated/spread_r8.c (spread_scalar_r8): Regenerated.
520 * intrinsics/random.c (jump): Use size_t for array index in loop.
521 (getosrandom): Likewise.
522 (arandom_r4): Make n an index_type.
523 (arandom_r8): Likewise.
524 (arandom_r10): Likewise.
525 (arandom_r16): Likewise.
526 (scramble_seed): Use size_t for array index in loop.
527 * m4/cshift1.m4: Make i an index_type.
528 * m4/eoshift1.m4: Likewise.
529 * m4/eoshift3.m4: Likewise.
530 * m4/in_pack.m4: Make n an index_type.
531 * m4/in_unpack.m4: Likewise.
532 * m4/reshape.m4: Make n and dim index_type's.
533 * m4/shape.m4: Make n an index_type.
534 * m4/spread.m4: Likewise, use index_type argument rather than
536 * runtime/bounds.c (bounds_ifunction_return): Make n an
538 * runtime/in_pack_generic.c (internal_pack): Likewise.
539 * runtime/in_unpack_generic.c (internal_unpack): Make n and size
542 2018-01-30 Thomas Koenig <tkoenig@gcc.gnu.org>
545 * libgfortran.h: Remove GFC_DTYPE_DERIVED_1, GFC_DTYPE_DERIVED_2,
546 GFC_DTYPE_DERIVED_4, GFC_DTYPE_DERIVED_8 and GFC_DTYPE_DERIVED_16.
547 * m4/cshift1.m4: Remove GFC_DTYPE_DERIVED_1.
548 * generated/cshift1_16.c: Regenerated.
549 * generated/cshift1_4.c: Regenerated.
550 * generated/cshift1_8.c: Regenerated.
551 * intrinsics/cshift0.c: Remove GFC_DTYPE_DERIVED_1.
552 * intrinsics/pack_generic.c (pack): Move handling of other types
553 into separate switch statement.
554 * intrinsics/spread_generic.c (spread): Likewise.
555 (spread_scalar): Likewise.
556 * intrinsics/unpack_generic.c (unpack1): Likewise.
558 * runtime/in_pack_generic.c (internal_pack): Likewise.
559 * runtime/in_unpack_generic.c (internal_unpack): Likewise.
561 2018-01-25 Paul Thomas <pault@gcc.gnu.org>
564 * caf/single.c (_gfortran_caf_failed_images): Access the 'type'
565 and 'elem_len' fields of the dtype instead of the shifts.
566 (_gfortran_caf_stopped_images): Likewise.
567 * intrinsics/associated.c (associated): Compare the 'type' and
568 'elem_len' fields instead of the dtype.
569 * caf/date_and_time.c : Access the dtype fields rather using
571 * io/transfer.c (transfer_array ): Comment on item count.
572 (set_nml_var,st_set_nml_var): Change dtype type and use fields.
573 (st_set_nml_dtio_var): Likewise.
574 * libgfortran.h : Change definition of GFC_ARRAY_DESCRIPTOR and
575 add a typedef for the dtype_type. Change the GFC_DTYPE_* macros
576 to access the dtype fields.
578 2018-01-15 Thomas Koenig <tkoenig@gcc.gnu.org>
581 * m4/iparm.m4: Add back_arg macro if in minloc or maxloc.
582 * m4/iforeach-s.m4: Add optional argument back with back_arg
583 macro. Improve m4 quoting. If HAVE_BACK_ARG is defined, assert
584 that back is non-true.
585 * m4/iforeach.m4: Likewise.
586 * m4/ifunction-s.m4: Likewise.
587 * m4/ifunction.m4: Likewise.
588 * m4/maxloc0.m4: Include assert.h
589 * m4/minloc0.m4: Likewise.
590 * m4/maxloc0s.m4: #define HAVE_BACK_ARG.
591 * m4/minloc0s.m4: Likewise.
592 * m4/maxloc1s.m4: Likewise.
593 * m4/minloc1s.m4: Likewise.
594 * m4/maxloc1.m4: Include assert.h, #define HAVE_BACK_ARG.
595 * m4/minloc1.m4: Likewise.
596 * m4/maxloc2s.m4: Add assert.h, add back_arg, assert that
598 * m4/minloc2s.m4: Likewise.
599 * generated/iall_i1.c: Regenerated.
600 * generated/iall_i16.c: Regenerated.
601 * generated/iall_i2.c: Regenerated.
602 * generated/iall_i4.c: Regenerated.
603 * generated/iall_i8.c: Regenerated.
604 * generated/iany_i1.c: Regenerated.
605 * generated/iany_i16.c: Regenerated.
606 * generated/iany_i2.c: Regenerated.
607 * generated/iany_i4.c: Regenerated.
608 * generated/iany_i8.c: Regenerated.
609 * generated/iparity_i1.c: Regenerated.
610 * generated/iparity_i16.c: Regenerated.
611 * generated/iparity_i2.c: Regenerated.
612 * generated/iparity_i4.c: Regenerated.
613 * generated/iparity_i8.c: Regenerated.
614 * generated/maxloc0_16_i1.c: Regenerated.
615 * generated/maxloc0_16_i16.c: Regenerated.
616 * generated/maxloc0_16_i2.c: Regenerated.
617 * generated/maxloc0_16_i4.c: Regenerated.
618 * generated/maxloc0_16_i8.c: Regenerated.
619 * generated/maxloc0_16_r10.c: Regenerated.
620 * generated/maxloc0_16_r16.c: Regenerated.
621 * generated/maxloc0_16_r4.c: Regenerated.
622 * generated/maxloc0_16_r8.c: Regenerated.
623 * generated/maxloc0_16_s1.c: Regenerated.
624 * generated/maxloc0_16_s4.c: Regenerated.
625 * generated/maxloc0_4_i1.c: Regenerated.
626 * generated/maxloc0_4_i16.c: Regenerated.
627 * generated/maxloc0_4_i2.c: Regenerated.
628 * generated/maxloc0_4_i4.c: Regenerated.
629 * generated/maxloc0_4_i8.c: Regenerated.
630 * generated/maxloc0_4_r10.c: Regenerated.
631 * generated/maxloc0_4_r16.c: Regenerated.
632 * generated/maxloc0_4_r4.c: Regenerated.
633 * generated/maxloc0_4_r8.c: Regenerated.
634 * generated/maxloc0_4_s1.c: Regenerated.
635 * generated/maxloc0_4_s4.c: Regenerated.
636 * generated/maxloc0_8_i1.c: Regenerated.
637 * generated/maxloc0_8_i16.c: Regenerated.
638 * generated/maxloc0_8_i2.c: Regenerated.
639 * generated/maxloc0_8_i4.c: Regenerated.
640 * generated/maxloc0_8_i8.c: Regenerated.
641 * generated/maxloc0_8_r10.c: Regenerated.
642 * generated/maxloc0_8_r16.c: Regenerated.
643 * generated/maxloc0_8_r4.c: Regenerated.
644 * generated/maxloc0_8_r8.c: Regenerated.
645 * generated/maxloc0_8_s1.c: Regenerated.
646 * generated/maxloc0_8_s4.c: Regenerated.
647 * generated/maxloc1_16_i1.c: Regenerated.
648 * generated/maxloc1_16_i16.c: Regenerated.
649 * generated/maxloc1_16_i2.c: Regenerated.
650 * generated/maxloc1_16_i4.c: Regenerated.
651 * generated/maxloc1_16_i8.c: Regenerated.
652 * generated/maxloc1_16_r10.c: Regenerated.
653 * generated/maxloc1_16_r16.c: Regenerated.
654 * generated/maxloc1_16_r4.c: Regenerated.
655 * generated/maxloc1_16_r8.c: Regenerated.
656 * generated/maxloc1_16_s1.c: Regenerated.
657 * generated/maxloc1_16_s4.c: Regenerated.
658 * generated/maxloc1_4_i1.c: Regenerated.
659 * generated/maxloc1_4_i16.c: Regenerated.
660 * generated/maxloc1_4_i2.c: Regenerated.
661 * generated/maxloc1_4_i4.c: Regenerated.
662 * generated/maxloc1_4_i8.c: Regenerated.
663 * generated/maxloc1_4_r10.c: Regenerated.
664 * generated/maxloc1_4_r16.c: Regenerated.
665 * generated/maxloc1_4_r4.c: Regenerated.
666 * generated/maxloc1_4_r8.c: Regenerated.
667 * generated/maxloc1_4_s1.c: Regenerated.
668 * generated/maxloc1_4_s4.c: Regenerated.
669 * generated/maxloc1_8_i1.c: Regenerated.
670 * generated/maxloc1_8_i16.c: Regenerated.
671 * generated/maxloc1_8_i2.c: Regenerated.
672 * generated/maxloc1_8_i4.c: Regenerated.
673 * generated/maxloc1_8_i8.c: Regenerated.
674 * generated/maxloc1_8_r10.c: Regenerated.
675 * generated/maxloc1_8_r16.c: Regenerated.
676 * generated/maxloc1_8_r4.c: Regenerated.
677 * generated/maxloc1_8_r8.c: Regenerated.
678 * generated/maxloc1_8_s1.c: Regenerated.
679 * generated/maxloc1_8_s4.c: Regenerated.
680 * generated/maxval_i1.c: Regenerated.
681 * generated/maxval_i16.c: Regenerated.
682 * generated/maxval_i2.c: Regenerated.
683 * generated/maxval_i4.c: Regenerated.
684 * generated/maxval_i8.c: Regenerated.
685 * generated/maxval_r10.c: Regenerated.
686 * generated/maxval_r16.c: Regenerated.
687 * generated/maxval_r4.c: Regenerated.
688 * generated/maxval_r8.c: Regenerated.
689 * generated/minloc0_16_i1.c: Regenerated.
690 * generated/minloc0_16_i16.c: Regenerated.
691 * generated/minloc0_16_i2.c: Regenerated.
692 * generated/minloc0_16_i4.c: Regenerated.
693 * generated/minloc0_16_i8.c: Regenerated.
694 * generated/minloc0_16_r10.c: Regenerated.
695 * generated/minloc0_16_r16.c: Regenerated.
696 * generated/minloc0_16_r4.c: Regenerated.
697 * generated/minloc0_16_r8.c: Regenerated.
698 * generated/minloc0_16_s1.c: Regenerated.
699 * generated/minloc0_16_s4.c: Regenerated.
700 * generated/minloc0_4_i1.c: Regenerated.
701 * generated/minloc0_4_i16.c: Regenerated.
702 * generated/minloc0_4_i2.c: Regenerated.
703 * generated/minloc0_4_i4.c: Regenerated.
704 * generated/minloc0_4_i8.c: Regenerated.
705 * generated/minloc0_4_r10.c: Regenerated.
706 * generated/minloc0_4_r16.c: Regenerated.
707 * generated/minloc0_4_r4.c: Regenerated.
708 * generated/minloc0_4_r8.c: Regenerated.
709 * generated/minloc0_4_s1.c: Regenerated.
710 * generated/minloc0_4_s4.c: Regenerated.
711 * generated/minloc0_8_i1.c: Regenerated.
712 * generated/minloc0_8_i16.c: Regenerated.
713 * generated/minloc0_8_i2.c: Regenerated.
714 * generated/minloc0_8_i4.c: Regenerated.
715 * generated/minloc0_8_i8.c: Regenerated.
716 * generated/minloc0_8_r10.c: Regenerated.
717 * generated/minloc0_8_r16.c: Regenerated.
718 * generated/minloc0_8_r4.c: Regenerated.
719 * generated/minloc0_8_r8.c: Regenerated.
720 * generated/minloc0_8_s1.c: Regenerated.
721 * generated/minloc0_8_s4.c: Regenerated.
722 * generated/minloc1_16_i1.c: Regenerated.
723 * generated/minloc1_16_i16.c: Regenerated.
724 * generated/minloc1_16_i2.c: Regenerated.
725 * generated/minloc1_16_i4.c: Regenerated.
726 * generated/minloc1_16_i8.c: Regenerated.
727 * generated/minloc1_16_r10.c: Regenerated.
728 * generated/minloc1_16_r16.c: Regenerated.
729 * generated/minloc1_16_r4.c: Regenerated.
730 * generated/minloc1_16_r8.c: Regenerated.
731 * generated/minloc1_16_s1.c: Regenerated.
732 * generated/minloc1_16_s4.c: Regenerated.
733 * generated/minloc1_4_i1.c: Regenerated.
734 * generated/minloc1_4_i16.c: Regenerated.
735 * generated/minloc1_4_i2.c: Regenerated.
736 * generated/minloc1_4_i4.c: Regenerated.
737 * generated/minloc1_4_i8.c: Regenerated.
738 * generated/minloc1_4_r10.c: Regenerated.
739 * generated/minloc1_4_r16.c: Regenerated.
740 * generated/minloc1_4_r4.c: Regenerated.
741 * generated/minloc1_4_r8.c: Regenerated.
742 * generated/minloc1_4_s1.c: Regenerated.
743 * generated/minloc1_4_s4.c: Regenerated.
744 * generated/minloc1_8_i1.c: Regenerated.
745 * generated/minloc1_8_i16.c: Regenerated.
746 * generated/minloc1_8_i2.c: Regenerated.
747 * generated/minloc1_8_i4.c: Regenerated.
748 * generated/minloc1_8_i8.c: Regenerated.
749 * generated/minloc1_8_r10.c: Regenerated.
750 * generated/minloc1_8_r16.c: Regenerated.
751 * generated/minloc1_8_r4.c: Regenerated.
752 * generated/minloc1_8_r8.c: Regenerated.
753 * generated/minloc1_8_s1.c: Regenerated.
754 * generated/minloc1_8_s4.c: Regenerated.
755 * generated/minval_i1.c: Regenerated.
756 * generated/minval_i16.c: Regenerated.
757 * generated/minval_i2.c: Regenerated.
758 * generated/minval_i4.c: Regenerated.
759 * generated/minval_i8.c: Regenerated.
760 * generated/minval_r10.c: Regenerated.
761 * generated/minval_r16.c: Regenerated.
762 * generated/minval_r4.c: Regenerated.
763 * generated/minval_r8.c: Regenerated.
764 * generated/norm2_r10.c: Regenerated.
765 * generated/norm2_r16.c: Regenerated.
766 * generated/norm2_r4.c: Regenerated.
767 * generated/norm2_r8.c: Regenerated.
768 * generated/parity_l1.c: Regenerated.
769 * generated/parity_l16.c: Regenerated.
770 * generated/parity_l2.c: Regenerated.
771 * generated/parity_l4.c: Regenerated.
772 * generated/parity_l8.c: Regenerated.
773 * generated/product_c10.c: Regenerated.
774 * generated/product_c16.c: Regenerated.
775 * generated/product_c4.c: Regenerated.
776 * generated/product_c8.c: Regenerated.
777 * generated/product_i1.c: Regenerated.
778 * generated/product_i16.c: Regenerated.
779 * generated/product_i2.c: Regenerated.
780 * generated/product_i4.c: Regenerated.
781 * generated/product_i8.c: Regenerated.
782 * generated/product_r10.c: Regenerated.
783 * generated/product_r16.c: Regenerated.
784 * generated/product_r4.c: Regenerated.
785 * generated/product_r8.c: Regenerated.
786 * generated/sum_c10.c: Regenerated.
787 * generated/sum_c16.c: Regenerated.
788 * generated/sum_c4.c: Regenerated.
789 * generated/sum_c8.c: Regenerated.
790 * generated/sum_i1.c: Regenerated.
791 * generated/sum_i16.c: Regenerated.
792 * generated/sum_i2.c: Regenerated.
793 * generated/sum_i4.c: Regenerated.
794 * generated/sum_i8.c: Regenerated.
795 * generated/sum_r10.c: Regenerated.
796 * generated/sum_r16.c: Regenerated.
797 * generated/sum_r4.c: Regenerated.
798 * generated/sum_r8.c: Regenerated.
800 2018-01-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
803 * write.c (select_buffer): Adjust buffer size up by 1.
805 2018-01-08 Janne Blomqvist <jb@gcc.gnu.org>
807 PR 78534, bugfix for r256322
808 * io/transfer.c (next_record_w): Use correct type for return value
809 of next_array_record.
811 2018-01-07 Thomas Koenig <tkoenig@gcc.gnu.org>
813 * libgfortran.h (GFC_DTYPE_COPY): New macro.
814 (GFC_DTYPE_COPY_SETRANK): New macro.
815 (GFC_DTYPE_IS_UNSET): New macro.
816 * intrinsics/cshift0.c (cshift0): Use new macros.
817 * intrinsics/eoshift0.c (eoshift0): Likewise.
818 * intrinsics/eoshift2.c (eoshift2): Likewise.
819 * intrinsics/move_alloc.c (move_alloc): Likewise.
820 * intrinsics/reshape_generic.c (reshape_internal): Likewise.
821 * intrinsics/spread_generic.c (spread_internal): Likewise.
822 * intrinsics/spread_generic.c (spread_scalar): Likewise.
823 * intrinsics/spread_generic.c (spread_char_scalar): Likewise.
824 * intrinsics/spread_generic.c (spread_char4_scalar): Likewise.
825 * intrinsics/unpack_generic.c (unpack0): Likewise.
826 * intrinsics/unpack_generic.c (unpack0_char): Likewise.
827 * intrinsics/unpack_generic.c (unpack0_char4): Likewise.
828 * m4/cshift1.m4 (cshift1): Likewise.
829 * m4/eoshift1.m4 (eoshift1): Likewise.
830 * m4/eoshift3.m4 (eoshift3): Likewise.
831 * m4/iforeach-s.m4: Likewise.
832 * m4/iforeach.m4: Likewise.
833 * m4/ifunction-s.m4: Likewise.
834 * m4/ifunction-s2.m4: Likewise.
835 * m4/ifunction.m4: Likewise.
836 * m4/ifunction_logical.m4: Likewise.
837 * m4/reshape.m4: Likewise.
838 * m4/spread.m4: Likewise.
839 * generated/all_l1.c : Regenerated.
840 * generated/all_l16.c : Regenerated.
841 * generated/all_l2.c : Regenerated.
842 * generated/all_l4.c : Regenerated.
843 * generated/all_l8.c : Regenerated.
844 * generated/any_l1.c : Regenerated.
845 * generated/any_l16.c : Regenerated.
846 * generated/any_l2.c : Regenerated.
847 * generated/any_l4.c : Regenerated.
848 * generated/any_l8.c : Regenerated.
849 * generated/count_16_l.c : Regenerated.
850 * generated/count_1_l.c : Regenerated.
851 * generated/count_2_l.c : Regenerated.
852 * generated/count_4_l.c : Regenerated.
853 * generated/count_8_l.c : Regenerated.
854 * generated/cshift1_16.c : Regenerated.
855 * generated/cshift1_4.c : Regenerated.
856 * generated/cshift1_8.c : Regenerated.
857 * generated/eoshift1_16.c : Regenerated.
858 * generated/eoshift1_4.c : Regenerated.
859 * generated/eoshift1_8.c : Regenerated.
860 * generated/eoshift3_16.c : Regenerated.
861 * generated/eoshift3_4.c : Regenerated.
862 * generated/eoshift3_8.c : Regenerated.
863 * generated/iall_i1.c : Regenerated.
864 * generated/iall_i16.c : Regenerated.
865 * generated/iall_i2.c : Regenerated.
866 * generated/iall_i4.c : Regenerated.
867 * generated/iall_i8.c : Regenerated.
868 * generated/iany_i1.c : Regenerated.
869 * generated/iany_i16.c : Regenerated.
870 * generated/iany_i2.c : Regenerated.
871 * generated/iany_i4.c : Regenerated.
872 * generated/iany_i8.c : Regenerated.
873 * generated/iparity_i1.c : Regenerated.
874 * generated/iparity_i16.c : Regenerated.
875 * generated/iparity_i2.c : Regenerated.
876 * generated/iparity_i4.c : Regenerated.
877 * generated/iparity_i8.c : Regenerated.
878 * generated/maxloc0_16_i1.c : Regenerated.
879 * generated/maxloc0_16_i16.c : Regenerated.
880 * generated/maxloc0_16_i2.c : Regenerated.
881 * generated/maxloc0_16_i4.c : Regenerated.
882 * generated/maxloc0_16_i8.c : Regenerated.
883 * generated/maxloc0_16_r10.c : Regenerated.
884 * generated/maxloc0_16_r16.c : Regenerated.
885 * generated/maxloc0_16_r4.c : Regenerated.
886 * generated/maxloc0_16_r8.c : Regenerated.
887 * generated/maxloc0_16_s1.c : Regenerated.
888 * generated/maxloc0_16_s4.c : Regenerated.
889 * generated/maxloc0_4_i1.c : Regenerated.
890 * generated/maxloc0_4_i16.c : Regenerated.
891 * generated/maxloc0_4_i2.c : Regenerated.
892 * generated/maxloc0_4_i4.c : Regenerated.
893 * generated/maxloc0_4_i8.c : Regenerated.
894 * generated/maxloc0_4_r10.c : Regenerated.
895 * generated/maxloc0_4_r16.c : Regenerated.
896 * generated/maxloc0_4_r4.c : Regenerated.
897 * generated/maxloc0_4_r8.c : Regenerated.
898 * generated/maxloc0_4_s1.c : Regenerated.
899 * generated/maxloc0_4_s4.c : Regenerated.
900 * generated/maxloc0_8_i1.c : Regenerated.
901 * generated/maxloc0_8_i16.c : Regenerated.
902 * generated/maxloc0_8_i2.c : Regenerated.
903 * generated/maxloc0_8_i4.c : Regenerated.
904 * generated/maxloc0_8_i8.c : Regenerated.
905 * generated/maxloc0_8_r10.c : Regenerated.
906 * generated/maxloc0_8_r16.c : Regenerated.
907 * generated/maxloc0_8_r4.c : Regenerated.
908 * generated/maxloc0_8_r8.c : Regenerated.
909 * generated/maxloc0_8_s1.c : Regenerated.
910 * generated/maxloc0_8_s4.c : Regenerated.
911 * generated/maxloc1_16_i1.c : Regenerated.
912 * generated/maxloc1_16_i16.c : Regenerated.
913 * generated/maxloc1_16_i2.c : Regenerated.
914 * generated/maxloc1_16_i4.c : Regenerated.
915 * generated/maxloc1_16_i8.c : Regenerated.
916 * generated/maxloc1_16_r10.c : Regenerated.
917 * generated/maxloc1_16_r16.c : Regenerated.
918 * generated/maxloc1_16_r4.c : Regenerated.
919 * generated/maxloc1_16_r8.c : Regenerated.
920 * generated/maxloc1_16_s1.c : Regenerated.
921 * generated/maxloc1_16_s4.c : Regenerated.
922 * generated/maxloc1_4_i1.c : Regenerated.
923 * generated/maxloc1_4_i16.c : Regenerated.
924 * generated/maxloc1_4_i2.c : Regenerated.
925 * generated/maxloc1_4_i4.c : Regenerated.
926 * generated/maxloc1_4_i8.c : Regenerated.
927 * generated/maxloc1_4_r10.c : Regenerated.
928 * generated/maxloc1_4_r16.c : Regenerated.
929 * generated/maxloc1_4_r4.c : Regenerated.
930 * generated/maxloc1_4_r8.c : Regenerated.
931 * generated/maxloc1_4_s1.c : Regenerated.
932 * generated/maxloc1_4_s4.c : Regenerated.
933 * generated/maxloc1_8_i1.c : Regenerated.
934 * generated/maxloc1_8_i16.c : Regenerated.
935 * generated/maxloc1_8_i2.c : Regenerated.
936 * generated/maxloc1_8_i4.c : Regenerated.
937 * generated/maxloc1_8_i8.c : Regenerated.
938 * generated/maxloc1_8_r10.c : Regenerated.
939 * generated/maxloc1_8_r16.c : Regenerated.
940 * generated/maxloc1_8_r4.c : Regenerated.
941 * generated/maxloc1_8_r8.c : Regenerated.
942 * generated/maxloc1_8_s1.c : Regenerated.
943 * generated/maxloc1_8_s4.c : Regenerated.
944 * generated/maxval1_s1.c : Regenerated.
945 * generated/maxval1_s4.c : Regenerated.
946 * generated/maxval_i1.c : Regenerated.
947 * generated/maxval_i16.c : Regenerated.
948 * generated/maxval_i2.c : Regenerated.
949 * generated/maxval_i4.c : Regenerated.
950 * generated/maxval_i8.c : Regenerated.
951 * generated/maxval_r10.c : Regenerated.
952 * generated/maxval_r16.c : Regenerated.
953 * generated/maxval_r4.c : Regenerated.
954 * generated/maxval_r8.c : Regenerated.
955 * generated/minloc0_16_i1.c : Regenerated.
956 * generated/minloc0_16_i16.c : Regenerated.
957 * generated/minloc0_16_i2.c : Regenerated.
958 * generated/minloc0_16_i4.c : Regenerated.
959 * generated/minloc0_16_i8.c : Regenerated.
960 * generated/minloc0_16_r10.c : Regenerated.
961 * generated/minloc0_16_r16.c : Regenerated.
962 * generated/minloc0_16_r4.c : Regenerated.
963 * generated/minloc0_16_r8.c : Regenerated.
964 * generated/minloc0_16_s1.c : Regenerated.
965 * generated/minloc0_16_s4.c : Regenerated.
966 * generated/minloc0_4_i1.c : Regenerated.
967 * generated/minloc0_4_i16.c : Regenerated.
968 * generated/minloc0_4_i2.c : Regenerated.
969 * generated/minloc0_4_i4.c : Regenerated.
970 * generated/minloc0_4_i8.c : Regenerated.
971 * generated/minloc0_4_r10.c : Regenerated.
972 * generated/minloc0_4_r16.c : Regenerated.
973 * generated/minloc0_4_r4.c : Regenerated.
974 * generated/minloc0_4_r8.c : Regenerated.
975 * generated/minloc0_4_s1.c : Regenerated.
976 * generated/minloc0_4_s4.c : Regenerated.
977 * generated/minloc0_8_i1.c : Regenerated.
978 * generated/minloc0_8_i16.c : Regenerated.
979 * generated/minloc0_8_i2.c : Regenerated.
980 * generated/minloc0_8_i4.c : Regenerated.
981 * generated/minloc0_8_i8.c : Regenerated.
982 * generated/minloc0_8_r10.c : Regenerated.
983 * generated/minloc0_8_r16.c : Regenerated.
984 * generated/minloc0_8_r4.c : Regenerated.
985 * generated/minloc0_8_r8.c : Regenerated.
986 * generated/minloc0_8_s1.c : Regenerated.
987 * generated/minloc0_8_s4.c : Regenerated.
988 * generated/minloc1_16_i1.c : Regenerated.
989 * generated/minloc1_16_i16.c : Regenerated.
990 * generated/minloc1_16_i2.c : Regenerated.
991 * generated/minloc1_16_i4.c : Regenerated.
992 * generated/minloc1_16_i8.c : Regenerated.
993 * generated/minloc1_16_r10.c : Regenerated.
994 * generated/minloc1_16_r16.c : Regenerated.
995 * generated/minloc1_16_r4.c : Regenerated.
996 * generated/minloc1_16_r8.c : Regenerated.
997 * generated/minloc1_16_s1.c : Regenerated.
998 * generated/minloc1_16_s4.c : Regenerated.
999 * generated/minloc1_4_i1.c : Regenerated.
1000 * generated/minloc1_4_i16.c : Regenerated.
1001 * generated/minloc1_4_i2.c : Regenerated.
1002 * generated/minloc1_4_i4.c : Regenerated.
1003 * generated/minloc1_4_i8.c : Regenerated.
1004 * generated/minloc1_4_r10.c : Regenerated.
1005 * generated/minloc1_4_r16.c : Regenerated.
1006 * generated/minloc1_4_r4.c : Regenerated.
1007 * generated/minloc1_4_r8.c : Regenerated.
1008 * generated/minloc1_4_s1.c : Regenerated.
1009 * generated/minloc1_4_s4.c : Regenerated.
1010 * generated/minloc1_8_i1.c : Regenerated.
1011 * generated/minloc1_8_i16.c : Regenerated.
1012 * generated/minloc1_8_i2.c : Regenerated.
1013 * generated/minloc1_8_i4.c : Regenerated.
1014 * generated/minloc1_8_i8.c : Regenerated.
1015 * generated/minloc1_8_r10.c : Regenerated.
1016 * generated/minloc1_8_r16.c : Regenerated.
1017 * generated/minloc1_8_r4.c : Regenerated.
1018 * generated/minloc1_8_r8.c : Regenerated.
1019 * generated/minloc1_8_s1.c : Regenerated.
1020 * generated/minloc1_8_s4.c : Regenerated.
1021 * generated/minval1_s1.c : Regenerated.
1022 * generated/minval1_s4.c : Regenerated.
1023 * generated/minval_i1.c : Regenerated.
1024 * generated/minval_i16.c : Regenerated.
1025 * generated/minval_i2.c : Regenerated.
1026 * generated/minval_i4.c : Regenerated.
1027 * generated/minval_i8.c : Regenerated.
1028 * generated/minval_r10.c : Regenerated.
1029 * generated/minval_r16.c : Regenerated.
1030 * generated/minval_r4.c : Regenerated.
1031 * generated/minval_r8.c : Regenerated.
1032 * generated/norm2_r10.c : Regenerated.
1033 * generated/norm2_r16.c : Regenerated.
1034 * generated/norm2_r4.c : Regenerated.
1035 * generated/norm2_r8.c : Regenerated.
1036 * generated/parity_l1.c : Regenerated.
1037 * generated/parity_l16.c : Regenerated.
1038 * generated/parity_l2.c : Regenerated.
1039 * generated/parity_l4.c : Regenerated.
1040 * generated/parity_l8.c : Regenerated.
1041 * generated/product_c10.c : Regenerated.
1042 * generated/product_c16.c : Regenerated.
1043 * generated/product_c4.c : Regenerated.
1044 * generated/product_c8.c : Regenerated.
1045 * generated/product_i1.c : Regenerated.
1046 * generated/product_i16.c : Regenerated.
1047 * generated/product_i2.c : Regenerated.
1048 * generated/product_i4.c : Regenerated.
1049 * generated/product_i8.c : Regenerated.
1050 * generated/product_r10.c : Regenerated.
1051 * generated/product_r16.c : Regenerated.
1052 * generated/product_r4.c : Regenerated.
1053 * generated/product_r8.c : Regenerated.
1054 * generated/reshape_c10.c : Regenerated.
1055 * generated/reshape_c16.c : Regenerated.
1056 * generated/reshape_c4.c : Regenerated.
1057 * generated/reshape_c8.c : Regenerated.
1058 * generated/reshape_i16.c : Regenerated.
1059 * generated/reshape_i4.c : Regenerated.
1060 * generated/reshape_i8.c : Regenerated.
1061 * generated/reshape_r10.c : Regenerated.
1062 * generated/reshape_r16.c : Regenerated.
1063 * generated/reshape_r4.c : Regenerated.
1064 * generated/reshape_r8.c : Regenerated.
1065 * generated/spread_c10.c : Regenerated.
1066 * generated/spread_c16.c : Regenerated.
1067 * generated/spread_c4.c : Regenerated.
1068 * generated/spread_c8.c : Regenerated.
1069 * generated/spread_i1.c : Regenerated.
1070 * generated/spread_i16.c : Regenerated.
1071 * generated/spread_i2.c : Regenerated.
1072 * generated/spread_i4.c : Regenerated.
1073 * generated/spread_i8.c : Regenerated.
1074 * generated/spread_r10.c : Regenerated.
1075 * generated/spread_r16.c : Regenerated.
1076 * generated/spread_r4.c : Regenerated.
1077 * generated/spread_r8.c : Regenerated.
1078 * generated/sum_c10.c : Regenerated.
1079 * generated/sum_c16.c : Regenerated.
1080 * generated/sum_c4.c : Regenerated.
1081 * generated/sum_c8.c : Regenerated.
1082 * generated/sum_i1.c : Regenerated.
1083 * generated/sum_i16.c : Regenerated.
1084 * generated/sum_i2.c : Regenerated.
1085 * generated/sum_i4.c : Regenerated.
1086 * generated/sum_i8.c : Regenerated.
1087 * generated/sum_r10.c : Regenerated.
1088 * generated/sum_r16.c : Regenerated.
1089 * generated/sum_r4.c : Regenerated.
1090 * generated/sum_r8.c : Regenerated.
1092 2018-01-07 Janne Blomqvist <jb@gcc.gnu.org>
1096 * io/fbuf.c (fbuf_init): Use size_t instead of int for length.
1097 (fbuf_debug): Convert debug output to unsigned long.
1098 (fbuf_reset): Use ptrdiff_t for return value.
1099 (fbuf_alloc): Use size_t for length argument.
1100 (fbuf_flush): Handle large buffers.
1101 (fbuf_flush_list): Likewise.
1102 (fbuf_seek): Use ptrdiff_t for offset and return value.
1103 (fbuf_read): Use size_t for length argument.
1104 (fbuf_getc_refill): Use size_t to match fbuf_read.
1105 * io/fbuf.h (struct fbuf): Use size_t for lengths.
1106 (fbuf_init): Use size_t instead of int for length.
1107 (fbuf_reset): Use ptrdiff_t for return value.
1108 (fbuf_alloc): Use size_t for length argument.
1109 (fbuf_seek): Use ptrdiff_t for offset and return value.
1110 (fbuf_read): Use size_t for length argument.
1111 * io/io.h (read_block_form): Likewise.
1112 (read_block_form4): Likewise.
1113 (write_block): Likewise.
1115 (read_a_char4): Likewise.
1117 (write_a): Likewise.
1118 (write_a_char4): Likewise.
1119 * io/list_read.c (list_formatted_read_scalar): Use size_t to
1120 handle large buffers.
1121 * io/read.c (read_l): Likewise.
1122 (read_utf8): Likewise.
1123 (read_utf8_char1): Likewise.
1124 (read_default_char1): Likewise.
1125 (read_utf8_char4): Likewise.
1126 (read_default_char4): Likewise.
1128 (read_a_char4): Likewise.
1129 (eat_leading_spaces): Likewise.
1130 (next_char): Likewise.
1131 (read_decimal): Likewise.
1132 (read_radix): Likewise.
1135 * io/transfer.c (read_sf_internal): Likewise.
1136 (read_sf): Likewise.
1137 (read_block_form): Likewise.
1138 (read_block_form4): Likewise.
1139 (write_block): Likewise.
1140 (formatted_transfer_scalar_write): Likewise.
1141 (next_record_w): Likewise.
1142 * io/unix.c (mem_alloc_r): Likewise.
1143 (mem_alloc_r4): Likewise.
1144 (mem_alloc_w): Likewise.
1145 (mem_alloc_w4): Likewise.
1146 (mem_read): Likewise.
1147 (mem_read4): Likewise.
1148 (mem_write): Likewise.
1149 (mem_write4): Likewise.
1150 (open_internal): Likewise.
1151 (open_internal4): Likewise.
1152 * io/unix.h (open_internal): Likewise.
1153 (open_internal4): Likewise.
1154 (mem_alloc_w): Likewise.
1155 (mem_alloc_r): Likewise.
1156 (mem_alloc_w4): Likewise.
1157 (mem_alloc_r4): Likewise.
1158 * io/write.c (write_check_cc): Likewise.
1159 (write_cc): Likewise.
1160 (write_a): Likewise.
1161 (write_a_char4): Likewise.
1163 2018-01-06 Janne Blomqvist <jb@gcc.gnu.org>
1165 * io/write.c (namelist_write): Remove unused variable "i".
1167 2018-01-06 Dominique d'Humieres <dominiq@lps.ens.fr>
1168 Janne Blomqvist <jb@gcc.gnu.org>
1171 * io/write.c (write_character): Use size_t instead of int for
1174 2018-01-05 Janne Blomqvist <jb@gcc.gnu.org>
1177 * intrinsics/args.c (getarg_i4): Use gfc_charlen_type.
1178 (get_command_argument_i4): Likewise.
1179 (get_command_i4): Likewise.
1180 * intrinsics/chmod.c (chmod_internal): Likewise.
1181 * intrinsics/env.c (get_environment_variable_i4): Likewise.
1182 * intrinsics/extends_type_of.c (struct vtype): Use size_t for size
1184 * intrinsics/gerror.c (gerror): Use gfc_charlen_type.
1185 * intrinsics/getlog.c (getlog): Likewise.
1186 * intrinsics/hostnm.c (hostnm_0): Likewise.
1187 * intrinsics/string_intrinsics_inc.c (string_len_trim): Rework to
1188 work if gfc_charlen_type is unsigned.
1189 (string_scan): Likewise.
1190 * io/transfer.c (transfer_character): Modify prototype.
1191 (transfer_character_write): Likewise.
1192 (transfer_character_wide): Likewise.
1193 (transfer_character_wide_write): Likewise.
1194 (transfer_array): Typecast to avoid signed-unsigned comparison.
1195 * io/unit.c (is_trim_ok): Use gfc_charlen_type.
1196 * io/write.c (namelist_write): Likewise.
1197 * libgfortran.h (gfc_charlen_type): Change typedef to size_t.
1199 2018-01-03 Jakub Jelinek <jakub@redhat.com>
1201 Update copyright years.
1203 2018-01-02 Janne Blomqvist <jb@gcc.gnu.org>
1205 PR libgfortran/83649
1206 * io/unix.c (MAX_CHUNK): New define.
1207 (raw_read): For reads larger than MAX_CHUNK, loop.
1208 (raw_write): Write no more than MAX_CHUNK bytes per iteration.
1210 Copyright (C) 2018 Free Software Foundation, Inc.
1212 Copying and distribution of this file, with or without modification,
1213 are permitted in any medium without royalty provided the copyright
1214 notice and this notice are preserved.