1 2017-11-18 Janne Blomqvist <jb@gcc.gnu.org>
4 * io/io.h: Make recl_in a GC_IO_INT and recl_out a type
7 2017-11-17 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
9 * acinclude.m4: Add enable.m4, cet.m4.
10 * Makefile.in: Regenerate.
11 * configure: Likewise.
12 * configure.ac: Set CET_FLAGS. Update AM_FCFLAGS,
15 2017-10-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
19 io/format.c (free_format_data): Don't try to free vlist
20 descriptors past the end of the fnode array.
22 2017-10-10 Thomas Koenig <tkoenig@gcc.gnu.org>
25 * intrinsics/execute_command_line.c (execute_command_line):
26 No call to runtime_error if cmdstat is present.
28 2017-09-24 Dominique d'Humieres <dominiq@lps.ens.fr>
31 * runtime/bounds.c: Use GFC_ASSERT.
33 2017-09-10 Paul Thomas <pault@gcc.gnu.org>
36 * libgfortran/libgfortran.h: Add span field to descriptor.
37 * libgfortran/libtool-version : Bump up version number to 5:0:0.
39 2017-08-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
42 * io/list_read.c (nml_read_obj): Remove use of stash.
43 * io/transfer.c (st_read_done, st_write_done): Likewise.
44 * io/unit.c (stash_internal_unit): Delete function.
45 (get_unit): Remove use of stash.
46 (init_units): Likewise.
47 (close_units): Likewise.
48 * io/write.c (nml_write_obj): Likewise:
50 2017-07-31 Thomas Koenig <tkoenig@gcc.gnu.org>
53 * m4/ifuntion.m4 (name`'rtype_qual`_'atype_code): Perform check
55 (`m'name`'rtype_qual`_'atype_code): Likewise. Change type of rank
56 and tim to index_type.
57 (`s'name`'rtype_qual`_'atype_code): Perform check for dim.
58 * generated/iall_i16.c: Regenerated.
59 * generated/iall_i1.c: Regenerated.
60 * generated/iall_i2.c: Regenerated.
61 * generated/iall_i4.c: Regenerated.
62 * generated/iall_i8.c: Regenerated.
63 * generated/iany_i16.c: Regenerated.
64 * generated/iany_i1.c: Regenerated.
65 * generated/iany_i2.c: Regenerated.
66 * generated/iany_i4.c: Regenerated.
67 * generated/iany_i8.c: Regenerated.
68 * generated/iparity_i16.c: Regenerated.
69 * generated/iparity_i1.c: Regenerated.
70 * generated/iparity_i2.c: Regenerated.
71 * generated/iparity_i4.c: Regenerated.
72 * generated/iparity_i8.c: Regenerated.
73 * generated/maxloc1_16_i16.c: Regenerated.
74 * generated/maxloc1_16_i1.c: Regenerated.
75 * generated/maxloc1_16_i2.c: Regenerated.
76 * generated/maxloc1_16_i4.c: Regenerated.
77 * generated/maxloc1_16_i8.c: Regenerated.
78 * generated/maxloc1_16_r10.c: Regenerated.
79 * generated/maxloc1_16_r16.c: Regenerated.
80 * generated/maxloc1_16_r4.c: Regenerated.
81 * generated/maxloc1_16_r8.c: Regenerated.
82 * generated/maxloc1_4_i16.c: Regenerated.
83 * generated/maxloc1_4_i1.c: Regenerated.
84 * generated/maxloc1_4_i2.c: Regenerated.
85 * generated/maxloc1_4_i4.c: Regenerated.
86 * generated/maxloc1_4_i8.c: Regenerated.
87 * generated/maxloc1_4_r10.c: Regenerated.
88 * generated/maxloc1_4_r16.c: Regenerated.
89 * generated/maxloc1_4_r4.c: Regenerated.
90 * generated/maxloc1_4_r8.c: Regenerated.
91 * generated/maxloc1_8_i16.c: Regenerated.
92 * generated/maxloc1_8_i1.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/maxval_i16.c: Regenerated.
101 * generated/maxval_i1.c: Regenerated.
102 * generated/maxval_i2.c: Regenerated.
103 * generated/maxval_i4.c: Regenerated.
104 * generated/maxval_i8.c: Regenerated.
105 * generated/maxval_r10.c: Regenerated.
106 * generated/maxval_r16.c: Regenerated.
107 * generated/maxval_r4.c: Regenerated.
108 * generated/maxval_r8.c: Regenerated.
109 * generated/minloc1_16_i16.c: Regenerated.
110 * generated/minloc1_16_i1.c: Regenerated.
111 * generated/minloc1_16_i2.c: Regenerated.
112 * generated/minloc1_16_i4.c: Regenerated.
113 * generated/minloc1_16_i8.c: Regenerated.
114 * generated/minloc1_16_r10.c: Regenerated.
115 * generated/minloc1_16_r16.c: Regenerated.
116 * generated/minloc1_16_r4.c: Regenerated.
117 * generated/minloc1_16_r8.c: Regenerated.
118 * generated/minloc1_4_i16.c: Regenerated.
119 * generated/minloc1_4_i1.c: Regenerated.
120 * generated/minloc1_4_i2.c: Regenerated.
121 * generated/minloc1_4_i4.c: Regenerated.
122 * generated/minloc1_4_i8.c: Regenerated.
123 * generated/minloc1_4_r10.c: Regenerated.
124 * generated/minloc1_4_r16.c: Regenerated.
125 * generated/minloc1_4_r4.c: Regenerated.
126 * generated/minloc1_4_r8.c: Regenerated.
127 * generated/minloc1_8_i16.c: Regenerated.
128 * generated/minloc1_8_i1.c: Regenerated.
129 * generated/minloc1_8_i2.c: Regenerated.
130 * generated/minloc1_8_i4.c: Regenerated.
131 * generated/minloc1_8_i8.c: Regenerated.
132 * generated/minloc1_8_r10.c: Regenerated.
133 * generated/minloc1_8_r16.c: Regenerated.
134 * generated/minloc1_8_r4.c: Regenerated.
135 * generated/minloc1_8_r8.c: Regenerated.
136 * generated/minval_i16.c: Regenerated.
137 * generated/minval_i1.c: Regenerated.
138 * generated/minval_i2.c: Regenerated.
139 * generated/minval_i4.c: Regenerated.
140 * generated/minval_i8.c: Regenerated.
141 * generated/minval_r10.c: Regenerated.
142 * generated/minval_r16.c: Regenerated.
143 * generated/minval_r4.c: Regenerated.
144 * generated/minval_r8.c: Regenerated.
145 * generated/norm2_r10.c: Regenerated.
146 * generated/norm2_r16.c: Regenerated.
147 * generated/norm2_r4.c: Regenerated.
148 * generated/norm2_r8.c: Regenerated.
149 * generated/parity_l16.c: Regenerated.
150 * generated/parity_l1.c: Regenerated.
151 * generated/parity_l2.c: Regenerated.
152 * generated/parity_l4.c: Regenerated.
153 * generated/parity_l8.c: Regenerated.
154 * generated/product_c10.c: Regenerated.
155 * generated/product_c16.c: Regenerated.
156 * generated/product_c4.c: Regenerated.
157 * generated/product_c8.c: Regenerated.
158 * generated/product_i16.c: Regenerated.
159 * generated/product_i1.c: Regenerated.
160 * generated/product_i2.c: Regenerated.
161 * generated/product_i4.c: Regenerated.
162 * generated/product_i8.c: Regenerated.
163 * generated/product_r10.c: Regenerated.
164 * generated/product_r16.c: Regenerated.
165 * generated/product_r4.c: Regenerated.
166 * generated/product_r8.c: Regenerated.
167 * generated/sum_c10.c: Regenerated.
168 * generated/sum_c16.c: Regenerated.
169 * generated/sum_c4.c: Regenerated.
170 * generated/sum_c8.c: Regenerated.
171 * generated/sum_i16.c: Regenerated.
172 * generated/sum_i1.c: Regenerated.
173 * generated/sum_i2.c: Regenerated.
174 * generated/sum_i4.c: Regenerated.
175 * generated/sum_i8.c: Regenerated.
176 * generated/sum_r10.c: Regenerated.
177 * generated/sum_r16.c: Regenerated.
178 * generated/sum_r4.c: Regenerated.
179 * generated/sum_r8.c: Regenerated.
181 2017-07-24 Thomas Koenig <tkoenig@gcc.gnu.org>
184 * io/unix.c (buf_write): Return early if there is
187 2017-07-09 Thomas Koenig <tkoenig@gcc.gnu.org>
189 * intrinsics/eoshift2.c (eoshift2): Use memcpy
190 for innermost copy where possible.
191 * m4/eoshift1.m4 (eoshift1): Likewise.
192 * m4/eoshift3.m4 (eoshift3): Likewise.
193 * generated/eoshift1_16.c: Regenerated.
194 * generated/eoshift1_4.c: Regenerated.
195 * generated/eoshift1_8.c: Regenerated.
196 * generated/eoshift3_16.c: Regenerated.
197 * generated/eoshift3_4.c: Regenerated.
198 * generated/eoshift3_8.c: Regenerated.
200 2017-07-02 Thomas Koenig <tkoenig@gcc.gnu.org>
202 * intrinsics/eoshift0.c: For contiguous arrays, use
203 block algorithm. Use memcpy where possible.
205 2017-06-26 Jim Wilson <jim.wilson@r3-a15.aus-colo>
208 * io/unit.c (get_unit): Call __gthread_mutex_lock before newunit_stack
209 and newunit_tos references. Call __gthread_mutex_unlock afterward.
211 2017-06-24 Thomas Koenig <tkoenig@gcc.gnu.org>
214 * Makefile.am: Add i_cshift1a_c. Add rules to generate files
216 * Makefile.in: Regenerated.
217 * m4/cshift1a.m4: New file.
218 * m4/cshift.m4 (cshift1): Split up inner loop by removing
219 condition. Use memcpy where possible. Call helper functions
221 * libgfortran.h: Add prototypes for cshift1_16_c10,
222 cshift1_16_c16, cshift1_16_c4, cshift1_16_c8, cshift1_16_i1,
223 cshift1_16_i16, cshift1_16_i2, cshift1_16_i4, cshift1_16_i8,
224 cshift1_16_r10, cshift1_16_r16, cshift1_16_r4, cshift1_16_r8,
225 cshift1_4_c10, cshift1_4_c16, cshift1_4_c4, cshift1_4_c8,
226 cshift1_4_i1, cshift1_4_i16, cshift1_4_i2, cshift1_4_i4,
227 cshift1_4_i8, cshift1_4_r10, cshift1_4_r16, cshift1_4_r4,
228 cshift1_4_r8, cshift1_8_c10, cshift1_8_c16, cshift1_8_c4,
229 cshift1_8_c8, cshift1_8_i1, cshift1_8_i16, cshift1_8_i2,
230 cshift1_8_i4, cshift1_8_i8, cshift1_8_r10, cshift1_8_r16,
231 cshift1_8_r4 and cshift1_8_r8.
232 * generated/cshift1_16_c10.c: New file, generated from cshift1a.m4.
233 * generated/cshift1_16_c16.c: New file, generated from cshift1a.m4.
234 * generated/cshift1_16_c4.c: New file, generated from cshift1a.m4.
235 * generated/cshift1_16_c8.c: New file, generated from cshift1a.m4.
236 * generated/cshift1_16_i1.c: New file, generated from cshift1a.m4.
237 * generated/cshift1_16_i16.c: New file, generated from cshift1a.m4.
238 * generated/cshift1_16_i2.c: New file, generated from cshift1a.m4.
239 * generated/cshift1_16_i4.c: New file, generated from cshift1a.m4.
240 * generated/cshift1_16_i8.c: New file, generated from cshift1a.m4.
241 * generated/cshift1_16_r10.c: New file, generated from cshift1a.m4.
242 * generated/cshift1_16_r16.c: New file, generated from cshift1a.m4.
243 * generated/cshift1_16_r4.c: New file, generated from cshift1a.m4.
244 * generated/cshift1_16_r8.c: New file, generated from cshift1a.m4.
245 * generated/cshift1_4_c10.c: New file, generated from cshift1a.m4.
246 * generated/cshift1_4_c16.c: New file, generated from cshift1a.m4.
247 * generated/cshift1_4_c4.c: New file, generated from cshift1a.m4.
248 * generated/cshift1_4_c8.c: New file, generated from cshift1a.m4.
249 * generated/cshift1_4_i1.c: New file, generated from cshift1a.m4.
250 * generated/cshift1_4_i16.c: New file, generated from cshift1a.m4.
251 * generated/cshift1_4_i2.c: New file, generated from cshift1a.m4.
252 * generated/cshift1_4_i4.c: New file, generated from cshift1a.m4.
253 * generated/cshift1_4_i8.c: New file, generated from cshift1a.m4.
254 * generated/cshift1_4_r10.c: New file, generated from cshift1a.m4.
255 * generated/cshift1_4_r16.c: New file, generated from cshift1a.m4.
256 * generated/cshift1_4_r4.c: New file, generated from cshift1a.m4.
257 * generated/cshift1_4_r8.c: New file, generated from cshift1a.m4.
258 * generated/cshift1_8_c10.c: New file, generated from cshift1a.m4.
259 * generated/cshift1_8_c16.c: New file, generated from cshift1a.m4.
260 * generated/cshift1_8_c4.c: New file, generated from cshift1a.m4.
261 * generated/cshift1_8_c8.c: New file, generated from cshift1a.m4.
262 * generated/cshift1_8_i1.c: New file, generated from cshift1a.m4.
263 * generated/cshift1_8_i16.c: New file, generated from cshift1a.m4.
264 * generated/cshift1_8_i2.c: New file, generated from cshift1a.m4.
265 * generated/cshift1_8_i4.c: New file, generated from cshift1a.m4.
266 * generated/cshift1_8_i8.c: New file, generated from cshift1a.m4.
267 * generated/cshift1_8_r10.c: New file, generated from cshift1a.m4.
268 * generated/cshift1_8_r16.c: New file, generated from cshift1a.m4.
269 * generated/cshift1_8_r4.c: New file, generated from cshift1a.m4.
270 * generated/cshift1_8_r8.c: New file, generated from cshift1a.m4.
272 2017-06-18 Thomas Koenig <tkoenig@gcc.gnu.org>
275 * m4/cshift0.m4: For arrays that are contiguous up to
276 shift, implement blocked algorighm for cshift.
277 * generated/cshift0_c10.c: Regenerated.
278 * generated/cshift0_c16.c: Regenerated.
279 * generated/cshift0_c4.c: Regenerated.
280 * generated/cshift0_c8.c: Regenerated.
281 * generated/cshift0_i1.c: Regenerated.
282 * generated/cshift0_i16.c: Regenerated.
283 * generated/cshift0_i2.c: Regenerated.
284 * generated/cshift0_i4.c: Regenerated.
285 * generated/cshift0_i8.c: Regenerated.
286 * generated/cshift0_r10.c: Regenerated.
287 * generated/cshift0_r16.c: Regenerated.
288 * generated/cshift0_r4.c: Regenerated.
289 * generated/cshift0_r8.c: Regenerated.
291 2017-06-06 Thomas Koenig <tkoenig@gcc.gnu.org>
294 * m4/matmul_internal.m4: Move zeroing before early return.
295 * generated/matmul_c10.c: Regenerated.
296 * generated/matmul_c16.c: Regenerated.
297 * generated/matmul_c4.c: Regenerated.
298 * generated/matmul_c8.c: Regenerated.
299 * generated/matmul_i1.c: Regenerated.
300 * generated/matmul_i16.c: Regenerated.
301 * generated/matmul_i2.c: Regenerated.
302 * generated/matmul_i4.c: Regenerated.
303 * generated/matmul_i8.c: Regenerated.
304 * generated/matmul_r10.c: Regenerated.
305 * generated/matmul_r16.c: Regenerated.
306 * generated/matmul_r4.c: Regenerated.
307 * generated/matmul_r8.c: Regenerated.
308 * generated/matmulavx128_c10.c: Regenerated.
309 * generated/matmulavx128_c16.c: Regenerated.
310 * generated/matmulavx128_c4.c: Regenerated.
311 * generated/matmulavx128_c8.c: Regenerated.
312 * generated/matmulavx128_i1.c: Regenerated.
313 * generated/matmulavx128_i16.c: Regenerated.
314 * generated/matmulavx128_i2.c: Regenerated.
315 * generated/matmulavx128_i4.c: Regenerated.
316 * generated/matmulavx128_i8.c: Regenerated.
317 * generated/matmulavx128_r10.c: Regenerated.
318 * generated/matmulavx128_r16.c: Regenerated.
319 * generated/matmulavx128_r4.c: Regenerated.
320 * generated/matmulavx128_r8.c: Regenerated.
322 2017-05-29 Jerry DeLisle <jvdelisle@gcc.gnu.org>
325 * list_read.c (list_formatted_read_scala): Set the err return
326 value to the common.flags error values.
328 2017-05-28 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
330 * acinclude.m4 (LIBGFOR_CHECK_FMA3): Use test from
331 check_effective_target_fma in gcc.target/i386/i386.exp.
332 (LIBGFOR_CHECK_FMA4): Use test from check_effective_target_fma4.
333 * configure: Regenerate.
335 2017-05-26 Thomas Koenig <tkoenig@gcc.gnu.org>
338 * acinclude.m4: Also set HAVE_AVX128 on the false
339 branch of LIBGFOR_CHECK_AVX128.
340 * configure: Regenerated.
342 2017-05-25 Thomas Koenig <tkoenig@gcc.gnu.org>
345 * Makefile.am: Add generated/matmulavx128_*.c files.
346 Handle them for compiling and setting the right flags.
347 * acinclude.m4: Add tests for FMA3, FMA4 and AVX128.
348 * configure.ac: Call them.
349 * Makefile.in: Regenerated.
350 * config.h.in: Regenerated.
351 * configure: Regenerated.
352 * m4/matmul.m4: Handle AMD chips by calling 128-bit AVX
353 versions which use FMA3 or FMA4.
354 * m4/matmulavx128.m4: New file.
355 * generated/matmul_c10.c: Regenerated.
356 * generated/matmul_c16.c: Regenerated.
357 * generated/matmul_c4.c: Regenerated.
358 * generated/matmul_c8.c: Regenerated.
359 * generated/matmul_i1.c: Regenerated.
360 * generated/matmul_i16.c: Regenerated.
361 * generated/matmul_i2.c: Regenerated.
362 * generated/matmul_i4.c: Regenerated.
363 * generated/matmul_i8.c: Regenerated.
364 * generated/matmul_r10.c: Regenerated.
365 * generated/matmul_r16.c: Regenerated.
366 * generated/matmul_r4.c: Regenerated.
367 * generated/matmul_r8.c: Regenerated.
368 * generated/matmulavx128_c10.c: New file.
369 * generated/matmulavx128_c16.c: New file.
370 * generated/matmulavx128_c4.c: New file.
371 * generated/matmulavx128_c8.c: New file.
372 * generated/matmulavx128_i1.c: New file.
373 * generated/matmulavx128_i16.c: New file.
374 * generated/matmulavx128_i2.c: New file.
375 * generated/matmulavx128_i4.c: New file.
376 * generated/matmulavx128_i8.c: New file.
377 * generated/matmulavx128_r10.c: New file.
378 * generated/matmulavx128_r16.c: New file.
379 * generated/matmulavx128_r4.c: New file.
380 * generated/matmulavx128_r8.c: New file.
382 2017-05-19 Paul Thomas <pault@gcc.gnu.org>
383 Jerry DeLisle <jvdelisle@gcc.gnu.org>
386 * list_read.c (nml_read_obj): Compute pointer into class/type
387 arrays from the nl->dim information. Update it for each iteration
388 of the loop for the given object.
390 2017-05-17 Jerry DeLisle <jvdelisle@gcc.gnu.org>
393 * transfer.c (finalize_transfer): Reset last_char to 'empty'.
394 * file_pos.c (formatted_backspace): Likewise.
395 (st_endfile): Likewise.
396 (st_rewind): Likewise.
397 (st_flush): Likewise.
399 2017-05-15 Jerry DeLisle <jvdelisle@gcc.gnu.org>
402 * transfer.c (read_sf_internal): Remove bogus code to detect EOR.
403 (read_block_form): For internal units, generate EOR if no more
404 bytes left in unit and we are trying to read with ADVANCE='NO'.
406 2017-05-15 Thomas Koenig <tkoenig@gcc.gnu.org>
409 * m4/matmul_internal.m4: Set bystride to correct value in
410 vector-matrix multiplicatin for later calculation of buffer
412 * generated/matmul_c10.c: Regenerated.
413 * generated/matmul_c16.c: Regenerated.
414 * generated/matmul_c4.c: Regenerated.
415 * generated/matmul_c8.c: Regenerated.
416 * generated/matmul_i1.c: Regenerated.
417 * generated/matmul_i16.c: Regenerated.
418 * generated/matmul_i2.c: Regenerated.
419 * generated/matmul_i4.c: Regenerated.
420 * generated/matmul_i8.c: Regenerated.
421 * generated/matmul_r10.c: Regenerated.
422 * generated/matmul_r16.c: Regenerated.
423 * generated/matmul_r4.c: Regenerated.
424 * generated/matmul_r8.c: Regenerated.
426 2017-05-12 Thomas Schwinge <thomas@codesourcery.com>
428 * runtime/environ.c (weak_secure_getenv): Fix "__secure_gettime"
429 vs. "__secure_getenv" typo.
430 (secure_getenv): Fix "HAVE__SECURE_GETENV"
431 vs. "HAVE___SECURE_GETENV" typo.
433 2017-05-11 Janne Blomqvist <jb@gcc.gnu.org>
435 * libgfortran.h: HAVE_SECURE_GETENV: Don't check
436 HAVE___SECURE_GETENV.
437 * environ/runtime.c (secure_getenv): Use __secure_getenv via a
440 2017-05-10 Thomas Koenig <tkoenig@gcc.gnu.org>
444 * m4/matmul_internal.m4: 'matmul_name`: Always
445 use malloc/free to allocate t1.
446 * generated/matmul_c10.c: Regenerated.
447 * generated/matmul_c16.c: Regenerated.
448 * generated/matmul_c4.c: Regenerated.
449 * generated/matmul_c8.c: Regenerated.
450 * generated/matmul_i1.c: Regenerated.
451 * generated/matmul_i16.c: Regenerated.
452 * generated/matmul_i2.c: Regenerated.
453 * generated/matmul_i4.c: Regenerated.
454 * generated/matmul_i8.c: Regenerated.
455 * generated/matmul_r10.c: Regenerated.
456 * generated/matmul_r16.c: Regenerated.
457 * generated/matmul_r4.c: Regenerated.
458 * generated/matmul_r8.c: Regenerated.
460 2017-05-08 Thomas Koenig <tkoenig@gcc.gnu.org>
463 * m4/matmul_internal.m4: 'matmul_name`: Change
464 t1 to a VLA of the required size.
465 * generated/matmul_c10.c: Regenerated.
466 * generated/matmul_c16.c: Regenerated.
467 * generated/matmul_c4.c: Regenerated.
468 * generated/matmul_c8.c: Regenerated.
469 * generated/matmul_i1.c: Regenerated.
470 * generated/matmul_i16.c: Regenerated.
471 * generated/matmul_i2.c: Regenerated.
472 * generated/matmul_i4.c: Regenerated.
473 * generated/matmul_i8.c: Regenerated.
474 * generated/matmul_r10.c: Regenerated.
475 * generated/matmul_r16.c: Regenerated.
476 * generated/matmul_r4.c: Regenerated.
477 * generated/matmul_r8.c: Regenerated.
479 2017-04-11 Jerry DeLisle <jvdelisle@gcc.gnu.org>
481 * close.c: Fix white space in pointer declarations and comment
482 formats where applicable.
485 * format.c: Likewise.
486 * inquire.c: Likewise.
487 * intrinsics.c: Likewise.
488 * list_read.c: Likewise.
492 * transfer.c: Likewise.
498 2017-03-29 Jerry DeLisle <jvdelisle@gcc.gnu.org>
501 * io/list_read.c (nml_get_obj_data): Delete code which calls the
502 child read procedure. (nml_read_obj): Insert the code which
503 calls the child procedure. Don't need to touch nodes if using
504 dtio since parent will not be traversing the components.
506 2017-03-28 Janus Weil <janus@gcc.gnu.org>
509 * io/write.c (nml_write_obj): Build a class container only if necessary.
511 2017-03-27 Dominique d'Humieres <dominiq@lps.ens.fr>
513 * io/list_read.c: Insert /* Fall through. */ in the macro
514 CASE_SEPARATORS in order to silence warnings.
516 2017-03-25 Jerry DeLisle <jvdelisle@gcc.gnu.org>
519 * io/io.h (st_parameter_dt): Rename unused component last_char to
520 child_saved_iostat. Move comment to gfc_unit.
521 * io/list_read.c (list_formatted_read_scalar): After call to
522 child READ procedure, save the returned iostat value for later
523 check. (finish_list_read): Only finish READ if child_saved_iostat
525 * io/transfer.c (read_sf_internal): If there is a saved character
526 in last character, seek back one. Add a new check for EOR
527 condition. (read_sf): If there is a saved character
528 in last character, seek back one. (formatted_transfer_scalar_read):
529 Initialize last character before invoking child procedure.
530 (data_transfer_init): If child dtio, set advance
531 status to nonadvancing. Move update of size and check for EOR
532 condition to before child dtio return.
534 2017-03-17 Thomas Koenig <tkoenig@gcc.gnu.org>
537 * m4/reshape.m4 (reshape_'rtype_ccode`): Correct use
539 * generated/reshape_c10.c: Regenerated.
540 * generated/reshape_c16.c: Regenerated.
541 * generated/reshape_c4.c: Regenerated.
542 * generated/reshape_c8.c: Regenerated.
543 * generated/reshape_i16.c: Regenerated.
544 * generated/reshape_i4.c: Regenerated.
545 * generated/reshape_i8.c: Regenerated.
546 * generated/reshape_r10.c: Regenerated.
547 * generated/reshape_r16.c: Regenerated.
548 * generated/reshape_r4.c: Regenerated.
549 * generated/reshape_r8.c: Regenerated.
551 2017-03-15 NightStrike <nightstrike@gmail.com>
552 Janne Blomqvist <jb@gcc.gnu.org>
554 * intrinsics/random.c (getosrandom): Remove check for __CYGWIN__
556 * intrinsics/system_clock.c: Likewise.
557 (system_clock_4): Likewise.
558 (system_clock_8): Likewise.
559 * intrinsics/time_1.h: Don't include windows.h if __CYGWIN__ is
562 2017-03-10 Thomas Koenig <tkoenig@gcc.gnu.org>
565 * libgfortran.h (GFC_ASSERT): New macro.
566 * m4/reshape.m4 (reshape_'rtype_ccode`): Use GFC_ASSERT
567 to specify that sdim > 0 and rdim > 0.
568 * intrinsic/reshape_generic.c (reshape_internal): Likweise.
569 * generated/reshape_c10.c: Regenerated.
570 * generated/reshape_c16.c: Regenerated.
571 * generated/reshape_c4.c: Regenerated.
572 * generated/reshape_c8.c: Regenerated.
573 * generated/reshape_i16.c: Regenerated.
574 * generated/reshape_i4.c: Regenerated.
575 * generated/reshape_i8.c: Regenerated.
576 * generated/reshape_r10.c: Regenerated.
577 * generated/reshape_r16.c: Regenerated.
578 * generated/reshape_r4.c: Regenerated.
579 * generated/reshape_r8.c: Regenerated.
581 2017-03-11 Jerry DeLisle <jvdelisle@gcc.gnu.org>
584 * io/list_read.c (nml_get_obj_data): Stash internal unit for
585 later use by child procedures.
586 * io/write.c (nml_write_obj): Likewise.
587 * io/tranfer.c (data_transfer_init): Minor whitespace.
588 * io/unit.c (set_internal_uit): Look for the stashed internal
589 unit and use it if found.
591 2017-03-10 Thomas Koenig <tkoenig@gcc.gnu.org>
594 * m4/iforeach.m4: Change exit condition from loop for
595 increasing dimension to >=. Fix type in comment.
596 * m4/ifunction.m4: Likewise.
597 * m4/ifunction_logical.m4: Likewise.
598 * generated/all_l1.c: Regenerated.
599 * generated/all_l16.c: Regenerated.
600 * generated/all_l2.c: Regenerated.
601 * generated/all_l4.c: Regenerated.
602 * generated/all_l8.c: Regenerated.
603 * generated/any_l1.c: Regenerated.
604 * generated/any_l16.c: Regenerated.
605 * generated/any_l2.c: Regenerated.
606 * generated/any_l4.c: Regenerated.
607 * generated/any_l8.c: Regenerated.
608 * generated/count_16_l.c: Regenerated.
609 * generated/count_1_l.c: Regenerated.
610 * generated/count_2_l.c: Regenerated.
611 * generated/count_4_l.c: Regenerated.
612 * generated/count_8_l.c: Regenerated.
613 * generated/iall_i1.c: Regenerated.
614 * generated/iall_i16.c: Regenerated.
615 * generated/iall_i2.c: Regenerated.
616 * generated/iall_i4.c: Regenerated.
617 * generated/iall_i8.c: Regenerated.
618 * generated/iany_i1.c: Regenerated.
619 * generated/iany_i16.c: Regenerated.
620 * generated/iany_i2.c: Regenerated.
621 * generated/iany_i4.c: Regenerated.
622 * generated/iany_i8.c: Regenerated.
623 * generated/iparity_i1.c: Regenerated.
624 * generated/iparity_i16.c: Regenerated.
625 * generated/iparity_i2.c: Regenerated.
626 * generated/iparity_i4.c: Regenerated.
627 * generated/iparity_i8.c: Regenerated.
628 * generated/maxloc0_16_i1.c: Regenerated.
629 * generated/maxloc0_16_i16.c: Regenerated.
630 * generated/maxloc0_16_i2.c: Regenerated.
631 * generated/maxloc0_16_i4.c: Regenerated.
632 * generated/maxloc0_16_i8.c: Regenerated.
633 * generated/maxloc0_16_r10.c: Regenerated.
634 * generated/maxloc0_16_r16.c: Regenerated.
635 * generated/maxloc0_16_r4.c: Regenerated.
636 * generated/maxloc0_16_r8.c: Regenerated.
637 * generated/maxloc0_4_i1.c: Regenerated.
638 * generated/maxloc0_4_i16.c: Regenerated.
639 * generated/maxloc0_4_i2.c: Regenerated.
640 * generated/maxloc0_4_i4.c: Regenerated.
641 * generated/maxloc0_4_i8.c: Regenerated.
642 * generated/maxloc0_4_r10.c: Regenerated.
643 * generated/maxloc0_4_r16.c: Regenerated.
644 * generated/maxloc0_4_r4.c: Regenerated.
645 * generated/maxloc0_4_r8.c: Regenerated.
646 * generated/maxloc0_8_i1.c: Regenerated.
647 * generated/maxloc0_8_i16.c: Regenerated.
648 * generated/maxloc0_8_i2.c: Regenerated.
649 * generated/maxloc0_8_i4.c: Regenerated.
650 * generated/maxloc0_8_i8.c: Regenerated.
651 * generated/maxloc0_8_r10.c: Regenerated.
652 * generated/maxloc0_8_r16.c: Regenerated.
653 * generated/maxloc0_8_r4.c: Regenerated.
654 * generated/maxloc0_8_r8.c: Regenerated.
655 * generated/maxloc1_16_i1.c: Regenerated.
656 * generated/maxloc1_16_i16.c: Regenerated.
657 * generated/maxloc1_16_i2.c: Regenerated.
658 * generated/maxloc1_16_i4.c: Regenerated.
659 * generated/maxloc1_16_i8.c: Regenerated.
660 * generated/maxloc1_16_r10.c: Regenerated.
661 * generated/maxloc1_16_r16.c: Regenerated.
662 * generated/maxloc1_16_r4.c: Regenerated.
663 * generated/maxloc1_16_r8.c: Regenerated.
664 * generated/maxloc1_4_i1.c: Regenerated.
665 * generated/maxloc1_4_i16.c: Regenerated.
666 * generated/maxloc1_4_i2.c: Regenerated.
667 * generated/maxloc1_4_i4.c: Regenerated.
668 * generated/maxloc1_4_i8.c: Regenerated.
669 * generated/maxloc1_4_r10.c: Regenerated.
670 * generated/maxloc1_4_r16.c: Regenerated.
671 * generated/maxloc1_4_r4.c: Regenerated.
672 * generated/maxloc1_4_r8.c: Regenerated.
673 * generated/maxloc1_8_i1.c: Regenerated.
674 * generated/maxloc1_8_i16.c: Regenerated.
675 * generated/maxloc1_8_i2.c: Regenerated.
676 * generated/maxloc1_8_i4.c: Regenerated.
677 * generated/maxloc1_8_i8.c: Regenerated.
678 * generated/maxloc1_8_r10.c: Regenerated.
679 * generated/maxloc1_8_r16.c: Regenerated.
680 * generated/maxloc1_8_r4.c: Regenerated.
681 * generated/maxloc1_8_r8.c: Regenerated.
682 * generated/maxval_i1.c: Regenerated.
683 * generated/maxval_i16.c: Regenerated.
684 * generated/maxval_i2.c: Regenerated.
685 * generated/maxval_i4.c: Regenerated.
686 * generated/maxval_i8.c: Regenerated.
687 * generated/maxval_r10.c: Regenerated.
688 * generated/maxval_r16.c: Regenerated.
689 * generated/maxval_r4.c: Regenerated.
690 * generated/maxval_r8.c: Regenerated.
691 * generated/minloc0_16_i1.c: Regenerated.
692 * generated/minloc0_16_i16.c: Regenerated.
693 * generated/minloc0_16_i2.c: Regenerated.
694 * generated/minloc0_16_i4.c: Regenerated.
695 * generated/minloc0_16_i8.c: Regenerated.
696 * generated/minloc0_16_r10.c: Regenerated.
697 * generated/minloc0_16_r16.c: Regenerated.
698 * generated/minloc0_16_r4.c: Regenerated.
699 * generated/minloc0_16_r8.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_8_i1.c: Regenerated.
710 * generated/minloc0_8_i16.c: Regenerated.
711 * generated/minloc0_8_i2.c: Regenerated.
712 * generated/minloc0_8_i4.c: Regenerated.
713 * generated/minloc0_8_i8.c: Regenerated.
714 * generated/minloc0_8_r10.c: Regenerated.
715 * generated/minloc0_8_r16.c: Regenerated.
716 * generated/minloc0_8_r4.c: Regenerated.
717 * generated/minloc0_8_r8.c: Regenerated.
718 * generated/minloc1_16_i1.c: Regenerated.
719 * generated/minloc1_16_i16.c: Regenerated.
720 * generated/minloc1_16_i2.c: Regenerated.
721 * generated/minloc1_16_i4.c: Regenerated.
722 * generated/minloc1_16_i8.c: Regenerated.
723 * generated/minloc1_16_r10.c: Regenerated.
724 * generated/minloc1_16_r16.c: Regenerated.
725 * generated/minloc1_16_r4.c: Regenerated.
726 * generated/minloc1_16_r8.c: Regenerated.
727 * generated/minloc1_4_i1.c: Regenerated.
728 * generated/minloc1_4_i16.c: Regenerated.
729 * generated/minloc1_4_i2.c: Regenerated.
730 * generated/minloc1_4_i4.c: Regenerated.
731 * generated/minloc1_4_i8.c: Regenerated.
732 * generated/minloc1_4_r10.c: Regenerated.
733 * generated/minloc1_4_r16.c: Regenerated.
734 * generated/minloc1_4_r4.c: Regenerated.
735 * generated/minloc1_4_r8.c: Regenerated.
736 * generated/minloc1_8_i1.c: Regenerated.
737 * generated/minloc1_8_i16.c: Regenerated.
738 * generated/minloc1_8_i2.c: Regenerated.
739 * generated/minloc1_8_i4.c: Regenerated.
740 * generated/minloc1_8_i8.c: Regenerated.
741 * generated/minloc1_8_r10.c: Regenerated.
742 * generated/minloc1_8_r16.c: Regenerated.
743 * generated/minloc1_8_r4.c: Regenerated.
744 * generated/minloc1_8_r8.c: Regenerated.
745 * generated/minval_i1.c: Regenerated.
746 * generated/minval_i16.c: Regenerated.
747 * generated/minval_i2.c: Regenerated.
748 * generated/minval_i4.c: Regenerated.
749 * generated/minval_i8.c: Regenerated.
750 * generated/minval_r10.c: Regenerated.
751 * generated/minval_r16.c: Regenerated.
752 * generated/minval_r4.c: Regenerated.
753 * generated/minval_r8.c: Regenerated.
754 * generated/norm2_r10.c: Regenerated.
755 * generated/norm2_r16.c: Regenerated.
756 * generated/norm2_r4.c: Regenerated.
757 * generated/norm2_r8.c: Regenerated.
758 * generated/parity_l1.c: Regenerated.
759 * generated/parity_l16.c: Regenerated.
760 * generated/parity_l2.c: Regenerated.
761 * generated/parity_l4.c: Regenerated.
762 * generated/parity_l8.c: Regenerated.
763 * generated/product_c10.c: Regenerated.
764 * generated/product_c16.c: Regenerated.
765 * generated/product_c4.c: Regenerated.
766 * generated/product_c8.c: Regenerated.
767 * generated/product_i1.c: Regenerated.
768 * generated/product_i16.c: Regenerated.
769 * generated/product_i2.c: Regenerated.
770 * generated/product_i4.c: Regenerated.
771 * generated/product_i8.c: Regenerated.
772 * generated/product_r10.c: Regenerated.
773 * generated/product_r16.c: Regenerated.
774 * generated/product_r4.c: Regenerated.
775 * generated/product_r8.c: Regenerated.
776 * generated/sum_c10.c: Regenerated.
777 * generated/sum_c16.c: Regenerated.
778 * generated/sum_c4.c: Regenerated.
779 * generated/sum_c8.c: Regenerated.
780 * generated/sum_i1.c: Regenerated.
781 * generated/sum_i16.c: Regenerated.
782 * generated/sum_i2.c: Regenerated.
783 * generated/sum_i4.c: Regenerated.
784 * generated/sum_i8.c: Regenerated.
785 * generated/sum_r10.c: Regenerated.
786 * generated/sum_r16.c: Regenerated.
787 * generated/sum_r4.c: Regenerated.
788 * generated/sum_r8.c: Regenerated.
790 2017-03-05 Andre Vehreschild <vehre@gcc.gnu.org>
791 Alessandro Fanfarillo <fanfarillo.gcc@gmail.com>
793 * caf/libcaf.h: Added prototypes and stat codes for failed and stopped
795 * caf/single.c (void _gfortran_caf_fail_image): Add the routine.
796 (int _gfortran_caf_image_status): Same.
797 (_gfortran_caf_failed_images): Same.
798 (_gfortran_caf_stopped_images): Same.
800 2017-03-02 Thomas Koenig <tkoenig@gcc.gnu.org>
801 Jakub Jelinek <jakub@redhat.com>
803 * m4/matmul.m4 (matmul_'rtype_code`): Avoid
804 race condition on storing function pointer.
805 * generated/matmul_c10.c: Regenerated.
806 * generated/matmul_c16.c: Regenerated.
807 * generated/matmul_c4.c: Regenerated.
808 * generated/matmul_c8.c: Regenerated.
809 * generated/matmul_i1.c: Regenerated.
810 * generated/matmul_i16.c: Regenerated.
811 * generated/matmul_i2.c: Regenerated.
812 * generated/matmul_i4.c: Regenerated.
813 * generated/matmul_i8.c: Regenerated.
814 * generated/matmul_r10.c: Regenerated.
815 * generated/matmul_r16.c: Regenerated.
816 * generated/matmul_r4.c: Regenerated.
817 * generated/matmul_r8.c: Regenerated.
819 2017-03-02 Thomas Koenig <tkoenig@gcc.gnu.org>
822 * m4/matmul.m4: (matmul_'rtype_code`_avx2): Also generate for
823 reals. Add fma to target options.
824 (matmul_'rtype_code`): Call AVX2 only if FMA is available.
825 * generated/matmul_c10.c: Regenerated.
826 * generated/matmul_c16.c: Regenerated.
827 * generated/matmul_c4.c: Regenerated.
828 * generated/matmul_c8.c: Regenerated.
829 * generated/matmul_i1.c: Regenerated.
830 * generated/matmul_i16.c: Regenerated.
831 * generated/matmul_i2.c: Regenerated.
832 * generated/matmul_i4.c: Regenerated.
833 * generated/matmul_i8.c: Regenerated.
834 * generated/matmul_r10.c: Regenerated.
835 * generated/matmul_r16.c: Regenerated.
836 * generated/matmul_r4.c: Regenerated.
837 * generated/matmul_r8.c: Regenerated.
839 2017-02-27 Janne Blomqvist <jb@gcc.gnu.org>
841 * intrinsics/random.c (getosrandom): Don't try to use rand_s on
844 2017-02-16 Paul Thomas <pault@gcc.gnu.org>
847 * io/transfer.c (check_dtio_proc): New function.
848 (formatted_transfer_scalar_read): Use it.
849 (formatted_transfer_scalar_write): ditto.
851 2017-01-31 Steven G. Kargl <kargl@gcc.gnu.org>
854 * c99_protos.h: Spell HAVE_EXPL correctly.
855 * intrinsics/c99_functions.c: Ditto.
857 2017-01-19 Uros Bizjak <ubizjak@gmail.com>
860 * acinclude.m4: Include ../config/ax_check_define.m4
861 * configure.ac: Check if _SOFT_FLOAT is defined.
862 * configure.host (i?86 | x86_64): Use fpu-generic when
863 have_soft_float is set.
864 * configure: Regenerate.
866 2017-01-19 Jakub Jelinek <jakub@redhat.com>
869 * acinclude.m4 (LIBGFOR_CHECK_AVX512F): Ensure the test clobbers
870 some zmm16+ registers to verify they are handled by unwind info
872 * configure: Regenerated.
874 2017-01-17 Jakub Jelinek <jakub@redhat.com>
877 * configure.ac: Add GCC_BASE_VER.
878 * Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
879 get version from BASE-VER file.
880 * configure: Regenerated.
881 * Makefile.in: Regenerated.
883 2017-01-13 Andre Vehreschild <vehre@gcc.gnu.org>
886 * caf/single.c (_gfortran_caf_register): Allocate enough memory for
889 2017-01-07 Andre Vehreschild <vehre@gcc.gnu.org>
893 * caf/single.c (send_by_ref): Fix addressing of non-allocatable scalar
894 destination components.
896 2017-01-01 Jakub Jelinek <jakub@redhat.com>
898 Update copyright years.
900 Copyright (C) 2017 Free Software Foundation, Inc.
902 Copying and distribution of this file, with or without modification,
903 are permitted in any medium without royalty provided the copyright
904 notice and this notice are preserved.