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